ディレクトリに存在するすべての可能なモジュールタイプのタールをワンショットで作成します。 module_XXXX.out形式で -
あなたは... acqDou、acqDumb、acqcheat、acqfunnyという名前のモジュールを持って言うことができます。以下に示すように、このようになります5月
何か。だから私は4つのモジュールとそれぞれの500のファイルをディレクトリに持っています。彼らはすべて空ですが、それは問題ではありません。 (ディレクトリ内に存在可能なモジュール名を与える)
我々は数字を取り除き(SED使用して)、ファイルを一覧表示することができ、ソートやユニークなリスト:目標を達成するために
>Wed Oct 05|01:15:13|[email protected][STATION]:/root/ga/scripts/temp/tmp % ls -lrtha *.out|head -7 ; echo ; ls -lrtha |tail -8
-rw-rw-r--. 1 gaurav gaurav 0 Oct 5 00:58 acqDou_0.out
-rw-rw-r--. 1 gaurav gaurav 0 Oct 5 00:58 acqDumb_0.out
-rw-rw-r--. 1 gaurav gaurav 0 Oct 5 00:58 acqcheat_0.out
-rw-rw-r--. 1 gaurav gaurav 0 Oct 5 00:58 acqfunny_0.out
-rw-rw-r--. 1 gaurav gaurav 0 Oct 5 00:58 acqDou_1.out
-rw-rw-r--. 1 gaurav gaurav 0 Oct 5 00:58 acqDumb_1.out
-rw-rw-r--. 1 gaurav gaurav 0 Oct 5 00:58 acqcheat_1.out
-rw-rw-r--. 1 gaurav gaurav 0 Oct 5 00:58 acqDumb_498.out
-rw-rw-r--. 1 gaurav gaurav 0 Oct 5 00:58 acqcheat_498.out
-rw-rw-r--. 1 gaurav gaurav 0 Oct 5 00:58 acqfunny_498.out
-rw-rw-r--. 1 gaurav gaurav 0 Oct 5 00:58 acqDou_499.out
-rw-rw-r--. 1 gaurav gaurav 0 Oct 5 00:58 acqDumb_499.out
-rw-rw-r--. 1 gaurav gaurav 0 Oct 5 00:58 acqcheat_499.out
-rw-rw-r--. 1 gaurav gaurav 0 Oct 5 00:58 acqfunny_499.out
drwxrwxr-x. 2 gaurav gaurav 64K Oct 5 01:14 .
>Wed Oct 05|01:15:30|[email protected][STATION]:/root/ga/scripts/temp/tmp %
それをwhileループに送り、モジュール名を一つずつ読み込み、出力モジュールtarfile、モジュール名wiseを生成し、そのモジュールのファイルしか持たないようにします。ここで
はコマンドです:私たちが終了したら
ls *.out |sed 's/[0-9]//g'|sort|uniq|sed 's/_.out//g'|while read module
do
tar -cvf ${module}.tar ${module}*
done
私たちは、このような何かを得ます。
4モジュール名とともにtarファイルが作成されました。また、それぞれのモジュールファイルが含まれています。 tar -tvfコマンドを使って見てみましょう。私はすべてのtarファイルでそれを実行し、ファイルごとに出力として2行だけを取ります。
>Wed Oct 05|01:18:29|[email protected][STATION]:/root/ga/scripts/temp/tmp % ls *.tar|while read file
do
echo ;echo "Looking inside file: $file"
tar -tvf $file|head -2
done
Looking inside file: acqcheat.tar
-rw-rw-r-- gaurav/gaurav 0 2016-10-05 00:58 acqcheat_0.out
-rw-rw-r-- gaurav/gaurav 0 2016-10-05 00:58 acqcheat_100.out
Looking inside file: acqDou.tar
-rw-rw-r-- gaurav/gaurav 0 2016-10-05 00:58 acqDou_0.out
-rw-rw-r-- gaurav/gaurav 0 2016-10-05 00:58 acqDou_100.out
Looking inside file: acqDumb.tar
-rw-rw-r-- gaurav/gaurav 0 2016-10-05 00:58 acqDumb_0.out
-rw-rw-r-- gaurav/gaurav 0 2016-10-05 00:58 acqDumb_100.out
Looking inside file: acqfunny.tar
-rw-rw-r-- gaurav/gaurav 0 2016-10-05 00:58 acqfunny_0.out
-rw-rw-r-- gaurav/gaurav 0 2016-10-05 00:58 acqfunny_100.out
>Wed Oct 05|01:18:42|[email protected][STATION]:/root/ga/scripts/temp/tmp %
実際には各tarファイルに500個のファイルがあります。あまりにもそれを確認してみましょう。
>Wed Oct 05|01:18:42|[email protected][STATION]:/root/ga/scripts/temp/tmp % ls *.tar|while read file
do
echo ; echo "File count in tar file: $file"
tar -tvf $file|wc -l
done
File count in tar file: acqcheat.tar
500
File count in tar file: acqDou.tar
500
File count in tar file: acqDumb.tar
500
File count in tar file: acqfunny.tar
500
>Wed Oct 05|01:20:03|[email protected][STATION]:/root/ga/scripts/temp/tmp %
乾杯、 のGaurav
あなたが最適化/固定に助けを得ることができるようにあなたが試みたものを提供してください。このサイトはあなたにプログラムを提供するものではありません。 – Fazlin
ファズリン、ここに試行されたコードを貼り付けました。 最初のループは、ファイル名を検索するキーワードです。また、tarファイルの名前を付けるのにも役立ちます。 2番目のループは、tarファイルを試行することです。しかし、それは動作していません。 – user2765315