シェルスクリプト総合 その25at UNIXシェルスクリプト総合 その25 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト16:名無しさん@お腹いっぱい。 15/08/16 22:42:11.52 .net すればいいじゃん。 17:名無しさん@お腹いっぱい。 15/08/16 23:56:46.15 .net >>14 awk で行番号見ながら出力ファイルを変えれば? 以下は out.0~9 に出力する例。 動かしてみた感じだと perl で真面目にプログラム書いた方が処理速度的には速そうね。 #!/bin/sh INFILE="$1" LINE=$(wc -l < "$INFILE") SPMOD=$(expr $LINE % 10) SPDIV=$(expr $LINE / 10) [ "$SPMOD" != 0 ] && SPDIV=$(expr $SPDIV + 1) awk "BEGIN{I=0; F=\"out.\"I; DIV=${SPDIV}; B=DIV;} {print \$0 > F; if(NR == B){I++; if(I==${SPMOD}){DIV--;} F=\"out.\"I; B+=DIV;}}" "$INFILE" 18:名無しさん@お腹いっぱい。 15/08/17 00:28:08.28 .net GNU coreutils の split コマンドだと -n オプションってのがある。 $ split -n l/10 95lines.txt # 1/10 じゃなくて l/10 ね(line の l) ただ、こうなる↓ $ wc -l xa? 12 xaa 9 xab 9 xac 9 xad 9 xae 9 xaf 9 xag 9 xah 9 xai 11 xaj 95 合計 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch