番号付きファイルを繰り返し出力するには?

番号付きファイルを繰り返し出力するには?

私は実行しようとしています:

cat s_f_d_TMT161023_1306.fits.coo.1 | sed -e '/^#/d'| sort -n -k 3 | head -n 50 >> inputcoo2.list

そして、

cat s_f_d_TMT161023_1307.fits.coo.1 | sed -e '/^#/d'| sort -n -k 3 | head -n 50 >> inputcoo3.list

など。

私はそれぞれの最後の4文字を使いましたcat1305~まで1440。また、出力名を1ずつ増やしたいと思いますinputcoo3.listinputcoo4.list

ある種のループを実行する必要があるようですが、私は初めてbashに触れて実装方法を知りません。

私は何をすべきですか?

ベストアンサー1

努力する

for i in $(seq 1305 1440)
do
  j=$((i - 1304))
  sed -e '/^#/d' "s_f_d_TMT161023_${i}.fits.coo.1" | 
    sort -n -k 3 | 
    head -n 50 >> "inputcoo${j}.list"
done
  • これは以下を節約しますcat
  • 宛先ファイルが追加されます。
  • 0ファイル名に先行(文字o以外の数字0)を使用するには、次のようにします。j="$(printf '%03d' $i)"

おすすめ記事