- 1 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/05/03(木) 17:54:23.25 .net]
- シェルスクリプトの総合スレです。
□お約束 ・特記なき場合はBourne Shell(/bin/sh)もしくはPOSIX準拠の互換シェルがデフォルトです。 bash/zsh/ksh/ash/dash/yash/poshなどの専用機能に依存する場合は明示しましょう。 Linuxユーザは/bin/shの正体がbashまたはdashなので特に注意。 FreeBSDユーザは/bin/shの正体がashなので注意。 ・POSIXについてのリンクは https://en.wikipedia.org/wiki/POSIX にまとめられています 最新の仕様はこちらへ pubs.opengroup.org/onlinepubs/9699919799/ (左上の「Shell & Utilities」 から参照することができます。) ・v7 shに一番近くて、現役(?)のshは、OpenSolaris由来のheirloom sh。 src.illumos.org/source/xref/illumos-gate/usr/src/cmd/sh/ heirloom.sourceforge.net/sh.html ・csh/tcshのシェルスクリプトは推奨されません。 (理由は「csh-whynot」でググれ) ・UNIXにはシェルスクリプトに便利な小さなコマンドがいろいろあります。 manや参考リンクを見ましょう。 aproposないしはman -kでそれらしい単語による簡単な検索もできます。 ・シェルで使えるワイルドカード等は正規表現ではありません。 正規表現の話題はスレ違い(正規表現スレへ) ・シェルスクリプトのことをシェルってゆうな □初心者へのアドバイス: ・適した道具を判断するのも頭の重要な使い方。シェルスクリプトよりも awkまたはperlの方が適した処理にはそちらを使いましょう。 ・知らないコマンドが出てきたらmanを引きましょう。 ・思い通りに動かないときは、まずは sh -x でトレースしましょう。 □回答者への注意事項: ・シェルスクリプトでの処理方法を質問しているのに、よくわからずに 「そういうのはperl使いましょう」と回答するのはやめましょう。 安易にperlに逃げずにシェルスクリプトで処理するのが頭のいいやり方。 質問に対して問題が間違ってるといちゃもんをつけるのもやめましょう 前スレ シェルスクリプト総合 その26 https://mevius.5ch.net/test/read.cgi/unix/1489979246/
- 414 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/10(日) 17:24:25.73 .net]
- >>399
最後にマジれすすると最初のフィルタはひとつのawkだけでできる。めーんどくさいけど
- 415 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/10(日) 17:25:37.95 .net]
- >>397
sedやtrを使うと遅いfork、子プロセス生成が行われるからね データ量に比例してその回数が増えるやり方は駄目 1回か固定の数回でできるって言うなら話は別だけど
- 416 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/10(日) 17:26:19.38 .net]
- >>400
最初だけできてもだめ駄目 これが実現できないと駄目 > syori "a1" "a2" "a3" "a4" > syori "b1" "b2" "b3" "b4" > syori "c1" "c2" "c3" "c4" > > という風にsyori
|

|