[表示 : 全て 最新50 1-99 101- 201- 301- 401- 2ch.scのread.cgiへ]
Update time : 11/13 08:08 / Filesize : 88 KB / Number-of Response : 446
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

bashで補完スレ



1 名前:complete [02/02/07 03:16.net]
bash2で補完機能が強化されているようですが
皆さんいかがお過ごしでしょうか?

49 名前:名無しさん@お腹いっぱい mailto:sage [02/07/15 23:08.net]
>>46
コマカイコトイウナヨーオマエ

50 名前:名無しさん@お腹いっぱい。 mailto:sage [02/07/16 01:49.net]
>>46
% 俺は途中乗|<tab>
換でbash使い始めたけど$は落ち着かないから%にしてる
% 俺は途中乗|
% |
% う|<tab>
うるせーばか
% う|

51 名前:名無しさん@お腹いっぱい。 mailto:sage [02/07/23 14:29.net]
「bashがマルチバイト文字に正式対応」
slashdot.jp/article.pl?sid=02/07/22/1936207

これって日本語のファイル名とかもlsで表示できるってこと?

52 名前:名無しさん@お腹いっぱい。 mailto:age [02/07/23 15:20.net]
こういう時はageたほうがいいような。

よくわからんのでさっそく2.05bをいれてみたんだが、行の折り返しで化ける問題
もマルチバイト文字を2文字として認識してる問題も、まるっきり変わってない
ような気が。
buildの仕方に問題あったのかなあ。

あ、でも補完機能すごいね。
補完リストが1画面分より長いと、途中で止めてくれるわ。これは便利かも。



53 名前:名無しさん@お腹いっぱい。 mailto:sage [02/07/23 15:33.net]
いっしょに話題になったreadlineをインスコした。
readlineを使ったプログラム、うちの場合はPostgreSQLの
フロントエンドpsqlなのだが、ロケールの設定を日本語に
しておくと、漢字部分でのカーソル移動がちゃんと2文字分
になってて、削除も漢字1文字ごとやってくれる。
多分新Bashもこんな感じなのかな。psqlではおかげで
日本語レコードの操作が楽になったので新Bashでは
ターミナルでのマルチバイト処理がしやすくなってる
と推測。あくまで推測 (w


54 名前:53 mailto:sage [02/07/23 15:34.net]
まてよ、psqlは前からマルチバイト扱えたっけ?
うーん、今では確認しようがない。スマソ。


55 名前:名無しさん@お腹いっぱい。 mailto:sage [02/07/23 15:51.net]
>>54
psqlは日本語パッチがあって、それ当ててれば日本語の編集がウマーだったよ
うな気がする。


56 名前:名無しさん@お腹いっぱい。 mailto:sage [02/07/23 16:08.net]
>>55
今のpsqlにはパッチ当ててない。それで日本語が
まともになったということは。やはりreadlineですかね。
なんかglibcといい、bashといい、マルチバイト対応が
すごいですね。ロケールの切り替えだけで多言語対応できる
Unixマンセー。


57 名前:名無しさん@お腹いっぱい。 mailto:sage [02/07/23 16:26.net]
>>52
コンパイルオプション増えた?>自分でやりって言わないで・・



58 名前:名無しさん@お腹いっぱい。 mailto:sage [02/07/24 00:45.net]
>>52
libcがヘボいと(たぶん)configure時に「マルチバイト駄目じゃん」と
判断されて従来通りコンパイルされるよ。
だからCitrus無しのNetBSDとかCygwinなんかだと悲しい…

59 名前:名無しさん@お腹いっぱい。 [02/09/01 12:17.net]
バスケットシューズあげ

60 名前:名無しさん@お腹いっぱい。 mailto:sage [02/09/01 17:38.net]
バトミントンシューズsage

61 名前:名無しさん@XEmacs mailto:sage [02/09/01 23:31.net]
>48
.inputrc に

"\C-n":history-search-forward
"\C-p":history-search-backward

とか書くとか。


62 名前:名無しさん@お腹いっぱい。 [02/09/09 11:53.net]
bashのパターン照合について
複数のパターンで文字列を抽出
する方法ありましたらご指南お願いします。
(もっとも一旦変数に格納し、分ければ
いいのですが、可能ならばその方法を知りたいです。)

例えば、
$data="/export/user1/test-20020909.log"
で20020909の文字を抽出する場合、一度に
${${data##/*-}%.*}
の様にしたいのですが、
bad substitution
とエラーが出てしまいます。

63 名前:名無しさん@お腹いっぱい。 mailto:sage [02/09/09 12:00.net]
>>62
こっちで。

シェル、オークの質問コーナー
pc.2ch.net/test/read.cgi/unix/1000303370/

64 名前:名無しさん@お腹いっぱい。 mailto:sage [02/09/09 12:18.net]
>>62
誘導ども。
逝ってきます。

65 名前:名無しさん@お腹いっぱい。 [02/09/17 06:57.net]
補完じゃないんですけど教えてください。

emacsと同様に ALT+Backspaceで一語消したいのですが、
どうやったら良いのでしょうか?

66 名前:名無しさん@XEmacs mailto:sage [02/09/17 09:41.net]
>65
あり、 ALT+BS ってデフォルトで消えなかったっけ?

ALT+h なら .inputrc に下を書けばいいんだけど。。。

"\M-h":backward-kill-word


67 名前:65 mailto:sage [02/09/17 23:25.net]
>>66
あっ、すみません!
家の中に、デフォルトで消えるbashと消えないbashがあるのに気付きました。

#うーん、なんでだろう??



68 名前:名無しさん@XEmacs mailto:sage [02/09/18 04:16.net]
>67
version の違いですかね?

挙動の違いといえば、チルダの展開も変わってたりしてハマりますなぁ。。。


69 名前:67 mailto:sage [02/09/18 04:56.net]
それが、どうもバージョンじゃないみたいなんで悩んでます。(--versionしてみた)
しかも、消せるほうのbashのバイナリを消せないホストにコピーすると、ちゃーんと
消せるようになるんで、設定ファイルとかのせいでも無いみたい...
コンパイル時のオプションかと思うんですけど、もうコンパイルしたときの
作業したソースとか全部消しちゃったんで、ちゃんと動かせるオプション試行錯誤して見つけないと
確かめられなさそう...(コンパイル時のオプション情報なんてバイナリに残らないですよね...)


70 名前:名無しさん@お腹いっぱい。 mailto:sage [02/10/20 17:29.net]
bashで
"\ep": history-search-backward
"\en": history-search-forward
をC-pとかに割り当てたい

71 名前:名無しさん@お腹いっぱい。 mailto:sage [02/10/20 17:49.net]
cat .zsh-history |xargs ssh remote cat >> .zsh-history


72 名前:名無しさん@お腹いっぱい。 mailto:sage [02/10/28 10:03.net]
aae

73 名前:山崎渉 mailto:(^^)sage [03/01/15 13:25.net]
(^^)

74 名前:山崎渉 mailto:(^^) [03/03/13 18:00.net]
(^^)

75 名前:名無しさん@お腹いっぱい。 [03/03/18 22:46.net]
$ このス^I
このスレって、もう死に体だね!
$ このスレって、もう死に体だね!_

76 名前:名無しさん@お腹いっぱい。 mailto:sage [03/03/19 06:29.net]
>>70
割り当てろよ


77 名前:山崎渉 mailto:(^^) [03/04/17 12:15.net]
(^^)



78 名前:あぼーん mailto:あぼーん [あぼーん.net]
あぼーん

79 名前:名無しさん@Meadow [03/04/26 19:21.net]
パラメータに入れた文字列を、パス展開させたいんだけど、
どうしたらようござんしょう?

例えば、

files="hoge*" && パス展開 && [ ${#files[*]} -ne 0 ]

とか、したいわけよ。


80 名前:79 [03/04/26 19:40.net]
とりあえず、パス名展開はでけたが、配列になってない…(T_T)

> touch hogea hogeb hogec
> echo hoge*
hogea hogeb hogec
> files="hoge*" && echo ${#files}
5
> files="hoge*" && tmp=`echo $files` && echo ${#tmp}
17

で $files がパス名展開されてることが分かったが、

> files="hoge*" && tmp=`echo $files` && echo ${#tmp[*]}
1

むきーっ



81 名前:79 [03/04/26 20:21.net]
もれはアホだー!!

> files=(hoge*) && echo ${#files[*]}
3


82 名前:あぼーん mailto:あぼーん [あぼーん.net]
あぼーん

83 名前:あぼーん mailto:あぼーん [あぼーん.net]
あぼーん

84 名前:名無しさん@お腹いっぱい。 mailto:age [03/06/14 12:32.net]
どうせならmigemo呼び出して日本語ファイル名補完とかして欲すぃ。
誰か実装してたりしませんか。


85 名前:あぼーん mailto:あぼーん [あぼーん.net]
あぼーん

86 名前:名無しさん@お腹いっぱい。 mailto:sage [03/06/15 11:23.net]
>>56
PS1= の内容については、マルチバイト文字が認識されてないっぽい。

87 名前:名無しさん@お腹いっぱい。 [03/06/18 22:47.net]
menu-completeは引数を受け取れるとmanに書いてあるけど、
こういう引数付きコマンドを.inputrcで何らのキーに割り当てるにはどうするの?
色々やってみたんだが…。



88 名前:名無しさん@お腹いっぱい。 [03/07/13 22:28.net]
kshとbashどちらを先に覚えた方がいいですか?


89 名前:あぼーん mailto:あぼーん [あぼーん.net]
あぼーん

90 名前:名無しさん@お腹いっぱい。 mailto:sage [03/07/19 22:38.net]
cygwinのbashには/etc/bash_completionが入ってないなー。

91 名前:名無しさん@お腹いっぱい。 mailto:age [03/07/26 22:49.net]
Mainte


92 名前:名無しさん@お腹いっぱい。 [03/07/31 11:23.net]
bashにはtcshのコンプリート機能はないにょ?

93 名前:名無しさん@お腹いっぱい。 mailto:sage [03/07/31 11:28.net]
bash には bash のコンプリート機能があるにょ。

94 名前:名無しさん@お腹いっぱい。 [03/07/31 12:08.net]
>>93 あったにょ?知らなかったにょ

95 名前:ぼるじょあ ◆yBEncckFOU mailto:(^^) [03/08/02 04:59.net]
     ∧_∧  ∧_∧
ピュ.ー (  ・3・) (  ^^ ) <これからも僕たちを応援して下さいね(^^)。
  =〔~∪ ̄ ̄ ̄∪ ̄ ̄〕
  = ◎――――――◎                      山崎渉&ぼるじょあ

96 名前:コンプマン [03/10/15 14:57.net]
今日はすごい裏技を紹介します。
題して、 「 1から255までループ 」

まず、 1から255までの連続したファイル名を用意します。
中身は空でかまいません。
そのファイルをどこかのディレクトリに格納します。

そして、そのディレクトリに移動したら
for i in *; do echo $i; done

これでばっちり1〜255までループできますね!

【応用編】
1万回ループしたいときは、ファイルを
1〜10000まで用意するといいですよ

97 名前:名無しさん@お腹いっぱい。 [03/10/15 15:10.net]
>>96
$ for i in *; do echo $i; done
1
10
100
101
102
103
104
105
106
107
108
109
11
110
111
...

先生!順番が…




98 名前:コンプマン [03/10/15 15:13.net]
>>97
新たな投稿ありがとう。 ミッションスタート!!

ファイル名を

000
001
002
・・・
254
255

と書き換えましょう

99 名前:名無しさん@お腹いっぱい。 mailto:sage [03/10/15 15:49.net]
裏技やるのにファイル作るの面倒な人用↓
a=0;while [ $a -le "255" ];do touch $a;let a="${a}+1";done

こいつで裏技バッチリ。

100 名前:コンプマン [03/10/15 16:53.net]
応援ありがとう!!
だが、それではファイル名が>>97のようになってしまい
とても不完全なものとなるのでした。
そこで>>99を添削してみました。 caseが美しいですね。

a=1;
while [ $a -le "255" ]; do
case `echo ${#a}` in
"1") s="00$a" ;;
"2") s="0$a" ;;
"3") s="$a" ;;
esac; touch $s; a=$((a+1));
done

101 名前:今婦てぃっく mailto:sage [03/10/15 18:37.net]
>>100
a=0;while [ $a -le "255" ];do touch `printf %03d\\n $a` ;let a="${a}+1";done

102 名前:今婦てぃっく mailto:sage [03/10/15 18:39.net]
>>101
\\nいらね〜・・・touch ``なしで実験したんだよもん

103 名前:名無しさん@お腹いっぱい。 mailto:sage [03/10/15 18:54.net]
桁数そろえるには、こんな感じかな。
for i in *;do mv $i `echo $i |sed "s/^\([0-9]\)$/00\1/;s/^\([0-9][0-9]\)$/0\1/"`;done

104 名前:名無しさん@お腹いっぱい。 mailto:sage [03/10/16 09:50.net]
GNU coreutils の seq でいいよ...


105 名前:コンプマン [03/10/16 10:35.net]
>>104
for i in `seq -w 255`; do touch $i; done
と、こうくるわけですか。さすが グニュー使いは裏技使い!
もちろん動作も最も速くて完璧超人ですか・・・

でももしこれが 255000 だったりしたらたいへんです
なかなか始まりません。 これが今日の裏技。

106 名前:名無しさん@お腹いっぱい。 mailto:sage [03/10/16 10:45.net]
seq -w 255000 | while read i;do echo $i;done
だと、ちっとまし?

107 名前:今婦てぃっく mailto:sage [03/10/16 14:17.net]
>>105
のまえにラインバッファの限界こないか?
xargsとかつかいな



108 名前:名無しさん@お腹いっぱい。 mailto:sage [03/10/16 14:31.net]
>>104
> GNU coreutils の seq でいいよ...

zsh だとビルトインですが何か?

109 名前:コンプマン [03/10/16 14:40.net]
>>107
それは大丈夫だ。
100万個のループでも我慢して待てば動作するぞ!

だが 1000000 は 1e+06 と表現されるから注意が必要だ。
キミも渡来!

110 名前:名無しさん@お腹いっぱい。 mailto:sage [03/10/16 14:48.net]
>>108
何でもかんでも built-in にするのキモい。

111 名前:名無しさん@お腹いっぱい。 mailto:sage [03/10/16 17:47.net]
>>110
思想的にちょっぴり同意。

112 名前:名無しさん@お腹いっぱい。 mailto:sage [03/10/16 18:46.net]
busybox立場無いなぁ とか思ったりしたけど バッシュレ?

113 名前:名無しさん@お腹いっぱい。 mailto:sage [03/10/16 19:13.net]

built-inだと誇らしげに言ってるあたりがイタイね

114 名前:名無しさん@お腹いっぱい。 [03/10/16 21:03.net]
void main (){}

をa.outとコンパイルして

a.out && echo "sage"

とするとsageと表示されるのですがそんなものなのですか?
返り値を返してはいないのですが。。。
不定の結果なのでしょうか?

115 名前:名無しさん@お腹いっぱい。 [03/10/16 21:26.net]
>>114
./a.out; echo $?
だとどう?


116 名前:名無しさん@お腹いっぱい。 mailto:sage [03/10/16 23:25.net]
>>110
> 何でもかんでも built-in にするのキモい。
>>113
> built-inだと誇らしげに言ってるあたりがイタイね

そうかな。coreutils, bash を両方インストールするのが無駄

117 名前:名無しさん@お腹いっぱい。 [03/10/17 01:23.net]
>>116
coreutils = fileutils + textutils + sh-utils
どのみち使う。無駄なわけない




118 名前:名無しさん@お腹いっぱい。 mailto:sage [03/10/17 02:18.net]
zsh はいつか perl も built-in にしそうだな。

119 名前:名無しさん@お腹いっぱい。 mailto:sage [03/10/17 02:39.net]
ゆくゆくは Emacs を

120 名前:名無しさん@お腹いっぱい。 mailto:sage [03/10/17 02:58.net]
>>117
> coreutils = fileutils + textutils + sh-utils
> どのみち使う。無駄なわけない

Linux ゆーざだけでは?

121 名前:名無しさん@お腹いっぱい。 mailto:sage [03/10/17 10:35.net]
ああ、>>117 の 3 つがまとまった coreutils は GNU の産物だからね。
Linux 使いは coreutils パッケージとしてまとめてインストールしておいたほうが
本気で細々したプログラム群を個別にインストールしなくていいので楽。
coreutils が要らないって人は別のパッケージングや管理方法を使ってるんでしょう。たぶん。

122 名前:名無しさん@お腹いっぱい。 mailto:sage [03/10/17 10:39.net]
>>121
> Linux 使いは coreutils パッケージとしてまとめてインストールしておいたほうが
> 本気で細々したプログラム群を個別にインストールしなくていいので楽。

板違い。

> coreutils が要らないって人は別のパッケージングや管理方法を使ってるんでしょう。たぶん。

OS 附属のものを使ってます。

123 名前:名無しさん@お腹いっぱい。 mailto:sage [03/10/17 14:07.net]
>>112
あれは限定された環境で使うためのものじゃん。

124 名前:名無しさん@お腹いっぱい。 mailto:sage [03/11/10 09:22.net]
補完の話じゃなくて申し訳ないが質問。

十年以上 tcsh使ってて、
たまーに Linuxとか cygwin入ってる Windowsとかで bashを使うことが
あって、そのたびに面倒だなーと思ってるんだけど

bash で tcsh の implicitcd に相当することをするにはどうするの?
(ディレクトリ名タイプだけで cdする機能)


125 名前:名無しさん@お腹いっぱい。 mailto:sage [03/11/10 20:22.net]
alias ..='cd ..'
alias ...='cd ../..'
alias ....='cd ../../..'
alias .....='cd ../../../..'
...

126 名前:名無しさん@お腹いっぱい。 mailto:sage [03/11/16 20:55.net]
bashが当たり前に動いてるUNIXってあるんですか?

127 名前:名無しさん@お腹いっぱい。 mailto:sage [03/11/16 22:07.net]
linux



128 名前:名無しさん@お腹いっぱい。 mailto:sage [03/11/16 22:19.net]
cygwin

129 名前:名無しさん@お腹いっぱい。 mailto:sage [03/11/16 22:24.net]
>>126
ずいぶん前から Solaris にも入ってるよ。

130 名前:名無しさん@お腹いっぱい。 mailto:sage [03/11/17 21:27.net]
solarisですか!勉強になりました。調べてみます。

131 名前:仕様書無しさん [04/02/15 19:32.net]
補完の質問ではないのですが、他にbashのスレが無いようなので
ここに書かせていただきます。
ls -l | grep '^d'
のようなパイプラインの実現方法なのですが、
@foo.shのようなファイルに記述してそこにパスを通す
A.bashrcで関数function foo{...}と定義する
上記の@とAのどちらが適切なのでしょうか。

132 名前:名無しさん@お腹いっぱい。 mailto:sage [04/02/15 20:20.net]
・シェル関数はカレントシェルのプロセス内で実行される
・シェルスクリプトはサブシェル内で実行される

ls -a | grep なんとか

というコマンド列はどっちでも変わらない。

133 名前:名無しさん@お腹いっぱい。 mailto:sage [04/02/15 21:52.net]
>>131
どちらがといわれても、どっちも空白にしか見えない。

134 名前:コンプマン [04/03/01 11:40.net]
今日はbashのif文で質問だ!
if文は便利だが、AND条件でちょっと困ったことがある

if [ "$HOGE"="hoge" and "$PIYO"="piyo" ]; then 〜

みたいなことをやりたいときは どうするのが賢いかな?
if文if文、またif文!?

135 名前:名無しさん@お腹いっぱい。 mailto:sage [04/03/01 11:51.net]
あきらめて下さい。

136 名前:名無しさん@お腹いっぱい。 mailto:sage [04/03/01 12:08.net]
if [ list1 -a list2 ]; then 〜

137 名前:名無しさん@お腹いっぱい。 mailto:sage [04/03/01 13:00.net]
>>134
if [ "$HOGE" = hoge ] && [ "$PIYO" = piyo ]; then
補完関係ないし。



138 名前:名無しさん@お腹いっぱい。 mailto:sage [04/03/01 13:20.net]
[ が何だかわかってるのかな

139 名前:コンプマン mailto:sage [04/03/01 13:45.net]
>>138
今知った! 賢くなった!

>>137
ありがとう! 紳士よ!

140 名前:名無しさん@お腹いっぱい。 mailto:sage [04/03/01 13:54.net]
>>134
help test
or
man test


141 名前:名無しさん@お腹いっぱい。 [04/04/13 13:15.net]
if文で文字列の辞書比較

142 名前:名無しさん@お腹いっぱい。 [04/04/14 15:15.net]
if文で文字列の辞書比較
はどうやら出来そうも無い

143 名前:名無しさん@お腹いっぱい。 [04/04/17 14:48.net]
if文で文字列の辞書比較
はどうやら出来そうも無い
別の方法で実現することに

144 名前:名無しさん@お腹いっぱい。 [04/04/17 15:01.net]
if文で文字列の辞書比較
はどうやら出来そうも無い
別の方法で実現することに
したいと僕のアナルが報告

145 名前:名無しさん@お腹いっぱい。 mailto:sage [04/04/27 21:52.net]
if文で文字列の辞書比較
はどうやら出来そうも無い
別の方法で実現することに
したいと僕のアナルが報告
するためにローションを

146 名前:名無しさん@お腹いっぱい。 [04/05/01 16:45.net]
if文で文字列の辞書比較
はどうやら出来そうも無い
別の方法で実現することに
したいと僕のアナルが報告
するためにローションを
ぬ<tab>

ぬか ぬっころす ぬりたくり ぬるぽ

if文で文字列の辞書比較
はどうやら出来そうも無い
別の方法で実現することに
したいと僕のアナルが報告
するためにローションを



147 名前:名無しさん@お腹いっぱい。 mailto:sage [04/05/01 22:55.net]
>146 ガッ!! AA(ry



148 名前:名無しさん@お腹いっぱい。 [04/05/11 10:20.net]
uniqするにはsortしなければならないけど
sortしてuniqしたあと、sort前に戻したい

というか、sortなしでuniqしたい
どうしたらいいかな?

自分で書いたらかっこよくなかった
スタイリッシュな方法キボン

149 名前:名無しさん@お腹いっぱい。 [04/05/11 10:24.net]
cshがあれば他はいらなくね?
ぬるぽ






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<88KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef