1 名前:名無しさん@お腹いっぱい。 [2009/07/01(水) 09:42:48 ] シェルスクリプトの総合スレです。 スクリプトのお勉強・自慢・腕試しなどにどうぞ。 まずは注意点、リンク、地鎮祭など(>>1-6 くらい)をご覧ください。 □お約束 ・特記なき場合はBourne Shell(/bin/sh)がデフォルトです。 bash/zsh/ksh/ashなどに依存する場合は明示しましょう。 Linuxユーザは/bin/shの正体がbashなので特に注意。 FreeBSDユーザは/bin/shの正体がashなので注意。 v7 shに一番近くて、現役のshは、OpenSolaris由来のheirloom sh。 src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/cmd/sh/ heirloom.sourceforge.net/sh.html ・csh/tcshのシェルスクリプトは推奨されません。 (理由は「csh-whynot」でググれ) ・UNIXにはシェルスクリプトに便利な小さなコマンドがいろいろあります。 manや参考リンクを見ましょう。 aproposないしはman -kでそれらしい単語による簡単な検索もできます。 ・シェルスクリプトのことをシェルってゆーな ・シェルで使えるワイルドカード等は正規表現ではありません。 正規表現の話題はスレ違い(正規表現スレへ) □初心者へのアドバイス: ・適した道具を判断するのも頭の重要な使い方。シェルスクリプトよりも RubyやPerlの方が適した仕事には素直にそちらを使いましょう。 ・知らないコマンドが出てきたらmanを引きましょう。 ・思い通りに動かないときは、まずは sh -x でトレースしましょう。 前スレ シェルスクリプト総合 その14 pc12.2ch.net/test/read.cgi/unix/1233179688/
139 名前:名無しさん@お腹いっぱい。 mailto:SAGE [2009/07/23(木) 23:39:41 ] >>138 ありがとうございます。 今帰りなので、週末に調べてみます。
140 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/07/26(日) 07:59:26 ] ulimitはunlimitedでした。引続きお願いします。
141 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/07/29(水) 12:57:14 ] スレ違いだと何度いったらわかるんだ。池沼。消えろ。
142 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/07/31(金) 20:12:20 ] すみません、お力を貸してください。 aaa.txtの中身が、 aa\n bb\n cc\n として、これをシェルスクリプトで unko=$(cat aaa.txt) echo ${unko} とすると、 aa bb cc と改行がスペースに置換されていますが、これを改行のまま格納することはできないでしょうか。 上記はあまりいい例ではないので「cat aaa.txt」でいいだろ、と思われるかと思いますが。。。 ftp -nvとかの標準出力を一旦変数に入れといて、後から結果解析及び出力したく、しかも、諸事情でtmpファイル(←すみません、ちんぽファイルではなくて一時ファイルです)を作るのはNGなので、なんとか改行をスペースに置換させないで変数に入れて実現したいのです。 どなたか、ご教示お願いいたします。OSは、HP-UX、Bashです。よろしくお願いします。
143 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/07/31(金) 20:48:07 ] >>142 echo "$unko"
144 名前:名無しさん@お腹いっぱい。 [2009/08/01(土) 23:50:17 ] シェルを2つ以上コマンドで開くことは出来る? 今はパネルからクリックしてるので大変。 でも、コマンド売っても出てこない>< ちなみに端末エルミネーターはBASH。
145 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/01(土) 23:52:35 ] はいはい 15点
146 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/02(日) 05:00:19 ] >>142 配列(パイオツじゃないよ)使うんじゃだめなの?
147 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/02(日) 09:40:59 ] >>146 >>143
148 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/02(日) 13:13:29 ] >>142 シェル変数の展開時は、ダブルクォートでくくるのが原則。 それで、改行もスペースもそのまま保存される。 逆に、単純に展開する場合は ${ } でくくる必要はない。
149 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/03(月) 00:52:02 ] . や source で起動されても、自分の名前を取れる方法ありますか? 当然$0だとだめなわけですが [root@miu tmp]# cat a.sh #!/bin/sh echo $0 [root@miu tmp]# source a.sh bash [root@miu tmp]#
150 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/03(月) 01:39:05 ] . や source は起動されてないし
151 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/03(月) 02:40:17 ] そこをなんとか・・
152 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/03(月) 04:37:49 ] bash依存 $ echo 'echo $BASH_SOURCE' > /tmp/t.sh $ . /tmp/t.sh /tmp/t.sh
153 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/03(月) 06:26:10 ] >>152 bash3以降依存だね。bash2だと動作しない。
154 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/03(月) 07:19:14 ] >>149 先頭で自分の名前を変数に代入すれば?
155 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/03(月) 07:24:49 ] >>154 全然解決になりません。 同じスクリプトを複数のファイル名でハードリンクしていて、 呼ばれた名前によって動作を切替えたいので。
156 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/03(月) 07:28:15 ] もう $BASH_VERSION チェックして $BASH_SOURCE 使えよ。
157 名前:名無しさん@お腹いっぱい。 [2009/08/03(月) 08:19:17 ] そもそも.でもsourceでも名前わかってなきゃ呼べないよね 呼べるってことは名前わかってるじゃん あほじゃないの? $_とかでもいいんじゃないの?
158 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/03(月) 08:39:57 ] >>157 惜しいけど、 hoge=file source $hoge みたいに、変数経由で呼ぶと、 $_ では名前を取得できないから NG。
159 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/03(月) 08:43:04 ] >>157 シェル依存。 ashとかでは、sourceファイル内一発目の $_ は、$0 と同じ値になってる。よって不可。
160 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/03(月) 20:41:06 ] >>155 >同じスクリプトを複数のファイル名でハードリンクしていて、 >呼ばれた名前によって動作を切替えたいので。 それは(+sourceした時にまで対応したいという)発想に無理があるのでは
161 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/03(月) 20:48:50 ] >>160 わからないなら黙ってろ
162 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/03(月) 21:10:02 ] シェル非依存な方法はないから。
163 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 01:00:01 ] 関数内のexitをreturnと同じように振舞わせる方法はないでしょうか。 現場で共通利用している共通関数の定義ファイルを . で読込んで使っているのですが、、、 お目当ての共通関数は、関数内でエラーだった場合、ログ吐いてexitまでしてしまい、困りました。 エラーコードで返してくれさえすれば、処理自体はそのまんま使いたいのですが。。。 その共通関数の戻り値はreturnでは返されず、共通関数内で定義した変数に格納され、呼び元でその変数を使う作りになっています。 何卒よろしくお願いします。
164 名前:名無しさん@お腹いっぱい。 [2009/08/04(火) 01:02:56 ] 質問です。 以下のようなファイルhoge.datがあるとします。 ------------------------ ~$ cat hoge.dat usa\newyork japan\tokyo korea soul ------------------------ このhoge.datを、以下のようなスクリプトで読み込んでから、出力してみたのですが、 円マーク(\)が表示されなくなります。 ------------------------ ~$ cat hoge.sh #!/bin/sh IFS=' ' while read line do echo "$line" done < hoge.dat --------------------------- 実行結果 --------------------------- ~$ ./hoge.sh usanewyork japantokyo korea soul --------------------------- 円マーク(¥)も表示されるようにするにはどうしたらよいでしょうか?
165 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 06:39:16 ] >>164 read -r あと、円マークじゃなくてバックスラッシュが表示されるように設定しろ
166 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 06:44:51 ] >>163 alias exit=return . hoge unalias exit
167 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 08:37:30 ] >>163 result=`. hoge;echo \$result`
168 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 08:43:41 ] >>167 「.」でソースしてるファイル内で「関数定義」をしているので、 それだとサブシェル扱いになるので、リターンすると関数定義が消えてしまうので 解決になりません。(戻り値が必要なのではありません)
169 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 08:58:38 ] 条件後出しすんなよ。そういうことなら (共通関数) 条件後出しのお代りか?
170 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 09:06:40 ] >>169 後出しじゃないだろ >>163 >共通関数の定義ファイル
171 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 09:09:35 ] >>166 で解決でしょ。 sourceしたファイル内で returnできるshには、aliasもあるから。
172 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 09:21:24 ] 見てきたように嘘をつくなあ、純正shはreturnあって、alias無い。
173 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 09:27:17 ] >>172 > 「sourceしたファイル内で return」 純正shは、関数の中でしかreturnできない。 sourceしたファイル内で returnすると、純正シェルではエラーになる。 嘘はお前。
174 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 09:58:18 ] 嘘つきはどちらでしょうか? > お目当ての共通関数は、関数内でエラーだった場合、ログ吐いてexitまでしてしまい、困りました。
175 名前:163 mailto:sage [2009/08/04(火) 12:35:58 ] みなさんたくさんのレスありがとうございます。 >>166 を使って相談してみたところ怪訝な顔をされてしまい、 結局「共通関数のコピペで別の関数(exit→returnだけ)を作れ」 となってしまいました。。。 ※個人的には、その方がよっぽど怪訝な顔したいですが。。。 とても勉強になりました。ありがとうございました!
176 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 13:39:20 ] >>172 質問者(>>175 )が、「>>166 (alias)を使って相談してみた」って言ってるから、 やっぱりaliasが使えるシェルだったということで、>>171 が正しかったじゃん。
177 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 13:44:25 ] たまたま使えただけ。↓は赤っ恥全開の嘘。 > sourceしたファイル内で returnできるshには、aliasもあるから。
178 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 13:45:27 ] >>177 「sourceしたファイル内で returnできるshには、aliasもある」は正しいが。
179 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 13:50:33 ] 恥の上塗りミットも茄子。 シェル関数内でのexitを書き換える為には↓これでは十分じゃないから。 > sourceしたファイル内で returnできるshには、aliasもあるから。
180 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 13:53:53 ] >>179 おまえ、意味取り違えてるよ。 シェル関数じゃなくて、sourceしたファイルを中途終了するときに、 returnが使えるんだよ。(純正シェルだと使えない) (exitを使うとsourceした元のシェル自体が終了するので使えない) そういう新しい機能のreturnが使えるシェルなら、aliasも使える。
181 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 13:58:38 ] >>180 とぼけようと必死だな。質問者のお題(>>163 )は関数内のexitを再定義すること。 > 関数内のexitをreturnと同じように振舞わせる方法はないでしょうか。 「sourceしたファイル内でのreturn」は全然関係ない。
182 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 14:08:28 ] >>172 は、 >>171 「sourceしたファイル内で returnできるshには、aliasもある」 のことを「嘘」だと言った。 その >>172 は間違い。 (>>172 では、元の質問のことには触れられていないから、 >>171 自体を質問に関係なく「嘘」と決めつけている。それは当然間違い) 「sourceしたファイル内で returnできるshには、aliasもある」は正しい。
183 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 14:09:10 ] 彼らは何のために戦っているのだろう。
184 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 14:11:55 ] なぜ「彼」と限定できるんですか? エスパーですか?
185 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 14:13:25 ] エスパーですよ。
186 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 14:14:22 ] >>173 に指摘されるまでは、 >>172 は関数外での returnの用法を知らなかったんだろう。
187 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 14:14:44 ] >>182 無様杉。引っ込んでろ。
188 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 14:17:13 ] >>187 一般的に、>>187 みたいに論理的な指摘が一切含まれていない暴言を先に吐いた方が 議論の負け。
189 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 14:19:02 ] >>186 お前も引っ込んでろ。
190 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 14:20:12 ] 一般的に、言い訳満開の>>176 で既に大敗。
191 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 14:22:19 ] >>190 「一般的に」の日本語の用法を間違っています。
192 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 15:10:29 ] 一般的に、「日本語の用法」とか関係ないところにケチ付け始めたところで負け。
193 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 15:14:22 ] 用法、容量を守ってご使用ください。
194 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 15:55:43 ] YO! HO!
195 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 15:59:03 ] 用法・用量な
196 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 19:46:10 ] 追試してみるから純正shってのがどれなのか教えてくれ
197 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 19:50:56 ] >>180 が言うところの「そういう新しい機能のreturnが使えるシェルなら、 aliasも使える。」じゃないシェルだろ。
198 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 20:13:58 ] >>196 そりゃ純正というくらいだから Sixth Edition とか Seventh Edition とかについてきたやつじゃないの
199 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 20:16:29 ] 純正シェルには、return以前にシェル関数自体がないから。
200 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 20:19:43 ] Solaris10の/bin/sh: ×「.」の中でのreturn / × alias FreeBSDの/bin/sh: ○「.」の中でのreturn / ○ alias bash: ○「.」の中でのreturn / ○ alias zsh: ○「.」の中でのreturn / ○ alias ksh: ○「.」の中でのreturn / ○ alias
201 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/05(水) 00:56:33 ] FreeBSDの/bin/shってボーンシェルじゃないの?もしかして
202 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/05(水) 01:33:46 ] もしかしても糞もなくボーンシェルじゃありません
203 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/05(水) 02:09:21 ] BシェルというのはBourne Shell=/bin/sh だと思ってたけど違うの? ボーンシェルでない/bin/shというのはBシェルでもなく一体なんなんですか?
204 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/05(水) 02:17:07 ] >>1 読めよ
205 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/05(水) 06:22:27 ] Bourne Shell ≠ ボーンシェル Bourne Shell = ブールネシェル
206 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/05(水) 17:46:17 ] >>201 >>203 どのバージョンからかだったかは忘れたが、 FreeBSD や NetBSD の /bin/sh は Bourne Shell ではなくその互換再実装の Almquist Shell だよ >AUTHORS > This version of sh was originally written by Kenneth Almquist.
207 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/05(水) 19:45:44 ] 386BSDはすでにashだった。
208 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/06(木) 06:48:56 ] >>206 なるほど、ashはbourne shellであってはいけないのか。 en.wikipedia.org/wiki/Bourne_shell > Due to copyright issues surrounding the Bourne Shell as it was > used in historic CSRG BSD releases, Kenneth Almquist developed > a clone of the Bourne Shell
209 名前:名無しさん@お腹いっぱい。 [2009/08/06(木) 15:38:32 ] 44,555 34,567 0 143,456 1,235,004 44 0 0 55 みたいな数字の列があるのですが、これのトータルを計算したいと思ってます。 問題は数字の3桁ごとに,が入ってることなのですが、Bashスクリプトでこれを取りつつ合計を計算 する方法ってあるでしょうか? どうかよろしくお願いします。
210 名前:名無しさん@お腹いっぱい。 [2009/08/06(木) 15:54:06 ] sed -e "s/,//g" で出来ましたが、合計の計算ができません。 44555 34567 0 143456 1235004 44 0 0 55 から、全部の合計を出したいです。
211 名前:名無しさん@お腹いっぱい。 [2009/08/06(木) 15:57:01 ] sed -e "s/,//g" | xargs echo | sed -e "s/ /+/g" | bc これで出来た。
212 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/06(木) 15:59:44 ] 何万行もあると破綻しそうな
213 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/06(木) 16:17:27 ] >>209 #!/bin/bash n=0 while IFS=, read line do ((n += line)) done echo $n
214 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/06(木) 16:25:39 ] >>213 それ、カンマの除去処理がおかしい >>209 #!/bin/bash n=0 while read line do ((n += ${line//,/})) done echo $n
215 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/06(木) 17:07:33 ] { echo 0; sed -e 's/,//g' -e 's/$/+/'; echo p; } |dc
216 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/06(木) 17:12:10 ] sed 's/,//g'| paste -s -d+ | bc
217 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/06(木) 17:22:53 ] >>215 それだったら、 sed 's/,//g; s/$/+/; $s/$/0/' | bc の方が簡潔。
218 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/06(木) 17:31:47 ] >>217 bcだと、途中改行できないから不可。 sedでさらに行末にバックスラッシュを付加してやればそれでも動くかな。 >>215 echoとsedと一緒に使うと無駄。 sed '1s/^/0 /; s/,//g; s/$/+/; $s/$/p/' | dc でいいだろ。
219 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/06(木) 17:34:20 ] >>217 実行してから因縁つけろ。カス sed 's/,//g; s/$/+/; $s/$/0/' file| bc (standard_in) 2: syntax error (standard_in) 3: syntax error (standard_in) 4: syntax error (standard_in) 5: syntax error (standard_in) 6: syntax error (standard_in) 7: syntax error (standard_in) 8: syntax error (standard_in) 9: syntax error
220 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/06(木) 17:42:32 ] みなさん、質問を良く読みましょうね。 >>209 さんは、 > Bashスクリプトで って言ってますよ。 よって、>>214 が正解ですね。 すでに正解が出ているのに >>215 以降に何か書いてるおともだちがいますが、 Bashも使っていないし、質問の答としてはふさわしくありませんね。
221 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/06(木) 17:44:22 ] Bash: not found だから>>214 は不正解だな。
222 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/06(木) 17:58:51 ] >>221 そういうことしか言えないようだから >>214 が正解だな
223 名前:名無しさん@お腹いっぱい。 [2009/08/06(木) 23:36:58 ] >>218 それで処理すると、 dc: stack empty dc: stack empty dc: stack empty と出ます。
224 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/07(金) 07:05:39 ] >>223 スペースも含めてちゃんとコピペしろ。
225 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/10(月) 15:20:35 ] シェルスクリプトって、ほんとツンデレだよな。 理解するまで四苦八苦ツンツンしてるくせに、一旦わかってしまうと、とたんにデレデレ。
226 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/10(月) 16:25:01 ] 別にそれはシェルスクリプトに限ったことでもなかろう
227 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/11(火) 18:17:01 ] しばらく使わないと忘れちゃってまたツン期に入るのが…
228 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/11(火) 23:15:11 ] bashで変数の置換と切り出しとかを一緒にできないですかね? echo ${HOGE//a/A} echo ${HOGE:0:8} これをひとつにしたい感じです
229 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/12(水) 00:02:16 ] もちろん、できません
230 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/15(土) 15:52:19 ] bash です。 date | read HOGE これやっても変数 HOGE が空なんだけど、どうして?
231 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/15(土) 15:55:14 ] readはサブシェルで実行されて瞬殺で終了するから。
232 名前:230 mailto:sage [2009/08/15(土) 16:05:15 ] >>231 即答サンクス! そうだった、パイプラインはそれぞれサブシェルで動くんだった。 つーことは、date 出力を変数に入れるには、素直に HOGE=`date` でよい、と。
233 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/15(土) 16:57:18 ] >>232 × パイプラインはそれぞれサブシェルで動く ○ 1個以上のパイプを含んだパイプラインはそれぞれサブシェルで動く 普通のコマンド1個だけでも「パイプライン」なので。
234 名前:232 mailto:sage [2009/08/15(土) 17:37:04 ] >>233 訂正サンクス! 確かに。 サブシェルと「環境」について、いまいち理解できない…
235 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/15(土) 17:47:10 ] バッドノウハウよりもっと有用な事を覚えよう
236 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/15(土) 20:09:24 ] バッドノウハウを覚えることは有益 バッドノウハウをあれこれ考えることは無益
237 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/15(土) 20:50:30 ] バッドノウハウって、具体的に何のこと言ってるの?
238 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/15(土) 20:55:52 ] 定義にこだわるふりをして、干されている現実から目をそらす>>233 の手法。
239 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/17(月) 06:30:05 ] la -Alでファイルサイズとファイル名のみほしいので la -Al | cut -d " " -f 5,9 とかやるとうまくいきません。どうすればいいですか?