rm はその逆と一致します。

rm はその逆と一致します。

HPCに6490のジョブを提出しました。

> ls -1 split-data/*.fasta | wc -l
6490

> ls -1 split-data/*.fasta
split-data/utg000001l.fasta
split-data/utg000002l.fasta
split-data/utg000003l.fasta
split-data/utg000004l.fasta
split-data/utg000005l.fasta

残念ながら、93の雇用が保留されました。

> qjobs | grep racon
       5240703 racon-3/utg001564l-racon-3.fasta  H   1     1   0     10.0   0.0    150   :03   
       5241418 racon-3/utg002276l-racon-3.fasta  H   1     1   0     10.0   0.0    150   :02   
       5241902 racon-3/utg002759l-racon-3.fasta  H   1     1   0     10.0   0.0    150   :03   
       ...

raconこれで、93の保留ジョブを再送信し、そのために正常に完了した入力ファイルを削除したいと思います。

次のコマンドは、削除したくないファイルを探します。

 qjobs | grep "racon" | awk '{ print $2 }' | sed 's|racon-3/||' | sed 's|-racon-3||' 
utg001564l.fasta
utg002276l.fasta
utg002759l.fasta
utg002919l.fasta
utg003133l.fasta
...

上記のコマンドを組み合わせてrm逆方向一致削除を実行するにはどうすればよいですか?

事前にありがとう

ベストアンサー1

ls -1 split-data/*.fasta | cut -d/ -f2 |sort > /tmp/total
qjobs | grep "racon" | awk '{ print $2 }' | sed 's|racon-3/||' | sed 's|-racon-3||' | sort >  /tmp/dnot
comm -23 /tmp/total /tmp/dnot |
xargs printf 'split-data/%s\n' |
xargs -l -t rm

おすすめ記事