- 1 名前:名無しさん@お腹いっぱい。 [2007/02/15(木) 14:28:44 ]
- シェルスクリプトの総合スレです。
スクリプトのお勉強・自慢・腕試しなどにどうぞ。 まずは注意点、リンク、地鎮祭など(>>1-6くらい)をご覧ください。 □お約束 ・特記なき場合はBourne Shell(/bin/sh)がデフォルトです。 bash/zsh/ksh/ashなどに依存する場合は明示しましょう。 Linuxユーザは/bin/shの正体がbashなので特に注意。 ・csh/tcshのシェルスクリプトは推奨されません。 (理由は「csh-whynot」でググれ) ・UNIXにはシェルスクリプトに便利な小さなコマンドがいろいろあります。 manや参考リンクを見ましょう。 aproposないしはman -kでそれらしい単語による簡単な検索もできます。 ・シェルスクリプトのことをシェルってゆーな ・シェルで使えるワイルドカード等は正規表現ではありません。 正規表現の話題はスレ違い(正規表現スレへ) □初心者へのアドバイス: ・適した道具を判断するのも頭の重要な使い方。シェルスクリプトよりも RubyやPerlの方が適した仕事には素直にそちらを使いましょう。 ・知らないコマンドが出てきたらmanを引きましょう。 ・思い通りに動かないときは、まずは sh -x でトレースしましょう。 前スレ シェルスクリプト総合 その7 pc10.2ch.net/test/read.cgi/unix/1157601611/
- 452 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/18(金) 20:30:15 ]
- >>451
間違ってるよ。man su 等を参照するべきなのはオマエ。
- 453 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/18(金) 20:59:46 ]
- >>450
sudoじゃダメなんか?
- 454 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/18(金) 21:30:20 ]
- >>448
testユーザで実行するバッチファイルを作っておいて、 su - test -c バッチファイル で実行しる。
- 455 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/18(金) 21:35:19 ]
- バッチファイル
バッチファイル バッチファイル バッチファイル wwww
- 456 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/19(土) 00:37:47 ]
- ほんとうにloginしたいならexpectを使うとか
- 457 名前:448 mailto:sage [2007/05/19(土) 03:04:26 ]
- rootでログイン中
expectでsu - testとして touch /home/test.txtを実行して 再度expectでsu - rootでrootになっても /home/test.txtは作成されてませんでした なぜでしょう?
- 458 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/19(土) 10:21:42 ]
- パーミッションじゃないの?
/homeにtestユーザは書き込めないんでは。
- 459 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/20(日) 04:33:32 ]
- 質問。
11.22.33を 33.22.11に文字を反転させたい。
- 460 名前:459 mailto:sage [2007/05/20(日) 04:42:15 ]
- 459は取り消し!
11.22.33を a[0]=11 a[1]=22 a[2]=33 のように配列に代入したい。 よろしくお願いします。
- 461 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/20(日) 05:39:47 ]
- 宿題でつか
- 462 名前:459 mailto:sage [2007/05/20(日) 06:19:25 ]
- 宿題でつ
- 463 名前:459 mailto:sage [2007/05/20(日) 07:14:05 ]
- スレ汚してごめんなさいできまつた
- 464 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/20(日) 21:56:12 ]
- テキストファイルに、ファイルの場所がずらずら書かれていて
----- /usr/local/etc/pussy001.jpg /usr/local/etc/pussy002.jpg /usr/local/etc/pussy003.jpg : ----- そこに書かれているファイルを指定した場所に移動させたいんです。 で、こんな感じで動くスクリプトを書きたいなぁと考えているんですが cat list.txt | grep jpg | mv.sh /work/pussy この mv.sh の書き方が分かりません。
- 465 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/20(日) 22:02:27 ]
- >>464
mv `grep jpg list.txt` /work/pussy で、一発。・・・で、pussyってww
- 466 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/20(日) 22:47:23 ]
- >465
残念ながら、ファイル名にスペースがあるとだめでした。 sh, tcsh, bashで試してみましたが、どれも同じです。
- 467 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/20(日) 23:18:02 ]
- >>464 の例では、ファイル名にスペースが入ってないじゃないか。
そういう条件は先に例に含めて書くこと。 ファイル名にスペースがある場合のやり方ももちろん知ってるが、 わざわざ教える気にならないので俺はパス。
- 468 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/20(日) 23:25:45 ]
- >>466
IFS=' ' mv `grep jpg list.txt` /work/pussy
- 469 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/21(月) 00:42:01 ]
- (while read f; do mv "$f" dest/ ; done) < file
>>467 ファイルの長さを考慮しないgrep戦法しか提示しなかった奴が そんな理屈をこねても見苦しいだけ。
- 470 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/21(月) 06:22:05 ]
- >>469
残念ながら、ファイル名に \ があるとだめでした。
- 471 名前:名無しさん@お腹いっぱい。 mailto:sage read -r [2007/05/21(月) 10:38:53 ]
- じゃあ諦めな。
- 472 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/21(月) 11:09:30 ]
- >>471
ファイル名の \ を考慮しないを考慮しないwhile read戦法しか提示しなかった奴が そんな理屈をこねても見苦しいだけ。
- 473 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/21(月) 11:17:06 ]
- というか、>>469 って、元の質問の jpg で grepするの忘れてるじゃん。
テストだったら0点。
- 474 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/21(月) 11:25:38 ]
- でもテストじゃないよ。
- 475 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/21(月) 11:33:37 ]
- そういう香具師が、「それはケアレスミス。答えはわかってた」とか後で言うんだよな。
- 476 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/21(月) 11:37:45 ]
- なんでそんな完璧にこだわるんだろ。
質問者のヒントになればいいじゃん。
- 477 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/21(月) 16:16:07 ]
- 低能同士、仲良く!
- 478 名前:464 mailto:sage [2007/05/22(火) 00:44:46 ]
- すみません、御礼が遅れました。
という訳で >465 >468 >469 全て参考になりました。特にIFS=〜は初めて 知ったので成程と関心しました。 この場をお借りして厚く御礼申し上げます。
- 479 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/22(火) 00:59:36 ]
- xargsは?
grep jpg list.txt | xargs -i mv {} /work/pussy
- 480 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/22(火) 12:09:35 ]
- >>479
空白が含まれているとダメだろ。
- 481 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/22(火) 14:28:33 ]
- grep jpg list.txt | tr '\n' '\0' | xargs -0 -i mv {} /work/pussy
- 482 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/22(火) 14:39:38 ]
- >>481
ファイル名に改行が含まれてるとだめだろw
- 483 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/22(火) 19:06:13 ]
- sudo find / -name '*pussy*' -exec rm -rf \{\} \;
- 484 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/22(火) 19:18:18 ]
- デリミタが改行なリストなんだから要素に改行は含められないんじゃ?
改行入りファイル名を考慮するならリストは改行文字以外で区切るべき だと思う.
- 485 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/22(火) 19:20:20 ]
- ファイル名に改行を入れるアホなんてほっとけ(w
- 486 名前:ウサチャソ mailto:sage [2007/05/22(火) 21:00:22 ]
- 試しに作ってみた。
% touch aaaa^Maaaa % ls -lF aaaa*--r-- 1 ウサチャソ users 0 5月 22 20:58 aaaa 表示バグってるよ…
- 487 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/22(火) 21:19:38 ]
- 改行と復改の区別ができないお子様は犬... 以下略
- 488 名前:ウサチャソ mailto:sage [2007/05/22(火) 21:37:01 ]
- >>487
改行のみ入れるのは面倒臭かったんだスマソ
- 489 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/22(火) 21:57:27 ]
- >>488
$ touch 'aaaa aaaa' だろ。 $ > 'aaaa aaaa' でも可。
- 490 名前:ウサチャソ mailto:sage [2007/05/22(火) 22:14:31 ]
- CTRL+Vが楽だったんで、つい…
ちなみに、>>489 でも >>486 でもCygwinだと同じ表示。 -rw-r--r-- 1 ウサチャソ なし 0 May 22 22:10 aaaa?aaaa 今日始めて知った。
- 491 名前:ウサチャソ mailto:sage [2007/05/22(火) 22:15:58 ]
- あ゛っごめん、Cygwinは「--show-control-chars」が必要だった…。
スレ違いなんでもう消えます、スマソ
- 492 名前:名無しさん@お腹いっぱい。 [2007/05/24(木) 20:33:53 ]
- 質問します。
lsnrctl >>_EOF_ set log_file listener.tmp RET=$? if [ $RET -ne 0 ];then logger -t loglog -p local1.notice "切り替えに失敗しました" exit 1 fi exit _EOF_ という事をしたいのですがどうしてもsetコマンド以降エラーに なってしまいます。 対処法を教えていただけないでしょうか?
- 493 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/24(木) 20:51:21 ]
- 逆だ。
lsnrctl <<_EOF_
- 494 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/24(木) 20:55:16 ]
- あと、ヒアドキュメントの部分は、LSNRCTLのコマンドしか受け付けないぞ。
- 495 名前:名無しさん@お腹いっぱい。 [2007/05/24(木) 21:23:10 ]
- すいません逆に書いてました。
やはりLSNRCTLコマンドしか受け付けないですか・・・ う〜ん、どうしてもLSNCTLの中でシェルスクリプトの処理の記述を したかったのですが無理そうですね。 ありがとうございました。
- 496 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/28(月) 07:13:03 ]
- 質問。
ファイルの最終から20行を削除したい。 どうしたらいいでしょうか?
- 497 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/28(月) 07:46:41 ]
- >>496
wc で数えて、head で切り出すぐらいしか考え付かない
- 498 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/28(月) 08:09:27 ]
- awk
- 499 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/28(月) 08:33:29 ]
- tac なんてLinuxでもないかぎり標準装備じゃない罠
cat file | tac | sed '1,20d' | tac
- 500 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/28(月) 12:43:49 ]
- 無意味なcat出た
- 501 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/28(月) 14:05:40 ]
- tacが使えなければ sed '1!G;h;$!d' すればいいじゃない。
- 502 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/28(月) 15:55:05 ]
- cat!出た!cat出た!得意技!cat出た!cat!これ!cat出たよ〜〜!
- 503 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/28(月) 16:13:35 ]
- >>502
楽しそうだな
- 504 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/28(月) 18:27:43 ]
- 俺は限界だと思った
- 505 名前:名無しさん@お腹いっぱい。 [2007/05/29(火) 00:14:45 ]
- tail つかって最後から20行みれ
で、>>499しる
- 506 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/29(火) 00:58:13 ]
- 基本的にサブシェルはshを新たに起動するよりは動作が軽いですよね?
- 507 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/29(火) 01:26:05 ]
- >>498
awkには入力ファイルの行数を保持する組み込み変数はないんじゃね? だから、結局wcでカウントしないとダメだったり。
- 508 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/29(火) 01:47:08 ]
- は?
awk '{a[NR]=$0}NR>20{print a[NR-20]}'
- 509 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/29(火) 02:37:14 ]
- >>508 短くていいが、でかいファイル通すとメモリが…
- 510 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/29(火) 02:54:34 ]
- 無理して一行でやるより、行舐めの回数が少ない方が好きだな。
- 511 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/29(火) 02:57:15 ]
- >>510 ワンパスだし。消費メモリを考えればいいと思うが。
- 512 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/29(火) 03:15:32 ]
- >>499
は論外。
- 513 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/29(火) 09:33:18 ]
- awk '{if (FNR>20) print a[FNR%20]; a[FNR%20]=$0}'
- 514 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/29(火) 10:12:43 ]
- 20行分だけバッファして遅延して出力させて
ファイル末尾に到達したら終了させるとか。
- 515 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/29(火) 19:07:30 ]
- >>514
書いてみよう
- 516 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/29(火) 19:20:43 ]
- >>514 は
>>513 がやろうとした事(間違ってるがw)
- 517 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/29(火) 19:44:45 ]
- >>496
こういう場合、ed を non-interactive に使うのがいい。 最後20行ということは、$-19から $までだから、 echo '$-19,$d w outfile q' | ed infile ↑で桶。
- 518 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/29(火) 21:46:07 ]
- sed -e '$d'|sed -e '$d'|sed -e '$d'|sed -e '$d'|sed -e '$d'|sed -e '$d'|sed -e '$d'|sed -e '$d'|sed -e '$d'|sed -e '$d'|sed -e '$d'|sed -e '$d'|sed -e '$d'|sed -e '$d'|sed -e '$d'|sed -e '$d'|sed -e '$d'|sed -e '$d'|sed -e '$d'|sed -e '$d'
- 519 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/30(水) 08:58:50 ]
- >>516 間違ってる?
- 520 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/30(水) 19:17:11 ]
- 質問なんですが・・
#!/bin/sh - tmpfile=/tmp/program.$$ cat "$1" | tr ' ' '\n' > tmpfile while read word do grep ${word} "$2" | いろいろと処理・・・ done < tmpfile てな感じのスクリプトなのですが、 第一引数のファイル中に、例えば -i と言うような語があると grep がオプションと解釈するのか何なのか、直後に while ループが 終了してしまいます。 '${'"$word"'}' だと grep には ${word} として渡されてしまいます。 何とかシェルを騙して grep に '-i' として渡す方法は無いでしょうか? (渡す前に条件判断して先頭文字が - なら sed などで先頭に \ を 付加すると言うのも行けそうな気はしますが、出来れば余計なIFとか 変数とか無しで行きたいものです)
- 521 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/30(水) 19:35:35 ]
- grep -e
grep -
- 522 名前:520 mailto:sage [2007/05/30(水) 19:53:07 ]
- >>521
ありがとう。 シェルを騙さなくても grep の方で用意されていましたか、 良く考えりゃ当然ですね。
- 523 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/30(水) 21:22:55 ]
- オプション -- で、それ以降はオプションとは解釈しないってのは
結構な数のコマンドで使える。
- 524 名前:520 mailto:sage [2007/05/30(水) 23:07:09 ]
- >>523
ですね。 これまで -- なんて、はぁ?って感じでしたけど、 実に有用性が高いですね。 勉強になります。
- 525 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/02(土) 11:43:37 ]
- 質問
インターネットに接続できるか試すコマンドってありますか? やりたいこと インターネットに接続できたら echo "できます" インターネットに接続できなかったら echo "できません" としたいです。
- 526 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/02(土) 11:59:13 ]
- インターネットとLANの区別をしなくていいのかな?
- 527 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/02(土) 12:05:24 ]
- 多分、この程度の精度でOKなんだろ。
if ping -c 1 www.yahoo.com >/dev/null 2>&1; then echo "出来ます" else echo "出来ません" fi
- 528 名前:525 mailto:sage [2007/06/03(日) 03:05:39 ]
- >>562>>527
ありがとうございます できればヤフーなどの特定のサイトに依存せず 確実にインターネットに繋がるかどうか判断したいです。 もし無理なら特定のサイトでも構いませんが こういう場合通例としてyahoo.comを使うのが適切でしょうか?
- 529 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/03(日) 07:09:14 ]
- 接続できていると分かったら、どこかと通信するんでしょ?
その通信相手にすればいいよ。
- 530 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/03(日) 07:21:06 ]
- >>528
何が目的なん?
- 531 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/03(日) 08:59:25 ]
- その通信相手がICMPブロックしてるかも知れないから、ブロックしてない
www.yahoo.comとかwww.google.comとか使えばいい。
- 532 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/03(日) 11:01:00 ]
- >>528
君のほうから、どことつながったらインターネットに繋がっていると言えるかの 判断基準を出してくれないと先に進めないと思うよ。
- 533 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/03(日) 12:04:41 ]
- 相手もそうだがプロトコルもな。
ファイアウォールの具合でICMP通らないかもしらんし。
- 534 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/03(日) 23:19:33 ]
- まぁ、スレ違いだな。
- 535 名前:名無しさん@お腹いっぱい。 [2007/06/04(月) 07:59:35 ]
- >>527
>if ping -c 1 www.yahoo.com >/dev/null 2>&1; then 関係ないが、この 2>&1 エラー対策でつか?
- 536 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/04(月) 14:12:29 ]
- 遅レスだが、
tail -r ファイル名| tail +20 | tail -r でもいけた(tailばっかりでカッコ悪いか)
- 537 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/04(月) 21:46:12 ]
- >>535
終了ステータスだけとれりゃいいので、エラーメッセージとか捨てる。
- 538 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/04(月) 21:50:18 ]
- それを捨てるなんて、とんでもない!
- 539 名前:ウサチャソ mailto:sage [2007/06/04(月) 23:49:23 ]
- きのうはおたのしみでしたね。
ウホッ
- 540 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/04(月) 23:51:56 ]
- *「おお しんでしまうとは なにごとだ!」
*「アッー!」
- 541 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/05(火) 06:33:28 ]
- vmstat 1 の結果の左側に`date +%H:%M:%S`(時分秒)を付けて流して表示させようとしています。
以前、gawkでstrftimeを利用して同じ事をしたのですが、今回使ってるサーバのawkは gawkでない為に別の方法が必要です。 どうもウマイ方法が思いつきませんで・・・ご教示お願いします。
- 542 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/05(火) 08:54:12 ]
- Perlあるなら
vmstat 1 | perl -MPOSIX -pe 'BEGIN{$|=1} print strftime q{%H:%M:%S }, localtime'
- 543 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/05(火) 08:59:20 ]
- これは重そうだけど
vmstat 1 | while read line; do echo `date +%H:%M:%S` $line; done
- 544 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/05(火) 20:13:14 ]
- >>539-540
DQ I ?
- 545 名前:541 mailto:sage [2007/06/05(火) 22:31:39 ]
- >>542
HP-UX10.20だったのですがperlが入っていませんでした(汗 でも、これを機会にperlもちょっとづつ勉強したいと思います。どもでした。 >>543 readがそんな使い方できるとは知りませんでした。 おかげさまでばっちり動きました。ありがとうございます。
- 546 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/05(火) 23:39:38 ]
- bash.infoの説明だと
echo hoge | read v で echo $V →hoge になるように読める で、できないってことはわかったんだけど結局readはどう使うんですか なんでwhile中だとうまく動くんでしょう
- 547 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/06(水) 00:17:57 ]
- サブシェルが起動するから。
read で代入する変数はサブシェルのものだから、親シェルに戻ると忘れる。 while でなくても、下のような書き方をすれば {...} の中にかぎり有効。 echo hoge | { read v echo $v } あと、ksh はふつーに可能だったような記憶がうっすらとあるが自信ない。
- 548 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/06(水) 15:14:41 ]
- 質問
シェルスクリプトを、windowsでCD-Rに焼き、linuxで実行すると 改行がコマンドとして認識され、command not foundとなってしまいます。 普通に改行を改行として認識させることはできないのでしょうか?
- 549 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/06(水) 16:33:41 ]
- よくわからんが改行コードの問題? 改行コードをLFで保存できるテキストエディタ使えよ
- 550 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/06(水) 16:52:46 ]
- >>549
ありがとうとざいます LFで保存したところ大丈夫でした。 ただし1行目だけはなぜかcommand not foundとなってしまう。。
- 551 名前:名無しさん@お腹いっぱい。 [2007/06/06(水) 20:15:14 ]
- log=20070101.log
$logを 2007-01-01 という風に、[西暦]-[月]-[日]な形にしたいのですが、どすればよいでしょうか? どなたか、お力をお貸し下さいませ。 .log と取って、4桁、2桁、2桁ごとに「-」を挟む。というのはわかるのですが 方法や何のコマンド使ってよいものやら見当もつきません。お願いします!
- 552 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/06(水) 20:26:09 ]
- echo $log | sed 's/\(....\)\(..\)\(..\).*/\1-\2-\3/'
|

|