- 1 名前:シェルスクリプトライター mailto:sage [2011/12/10(土) 20:06:40.38 ]
- シェルスクリプトの総合スレです。
スクリプトのお勉強・自慢・腕試しなどにどうぞ。 □お約束 ・特記なき場合は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 でトレースしましょう。 前スレ シェルスクリプト総合 その18 hibari.2ch.net/test/read.cgi/unix/1308195527/ 次スレは >>970 で。
- 266 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/31(火) 13:33:07.43 ]
- >>265
遅い原因は毎回md5sumを呼んでいるから md5sum "$@"で求めておいて、その結果に対しての処理ならそれほど遅くない アルゴリズムもcut -d' ' -f1してsortしてuniq -dして重複ファイルのMD5だけ列挙 そのMD5でgrepすればファイル名も分かるだろ
- 267 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/31(火) 13:39:35.46 ]
- 一気にmd5取る、md5でソート、ユニークなものだけ移動。残りは重複したファイル。
ユニークなファイルのリスト md5sum "$@" |sort -k 1 | uniq -w 32 |cut -d' ' -f 2
|

|