input.txtファイルから複数のコマンドを順番に実行し、新しい.csvファイルに出力したいと思います。すべてのコマンドは個別に実行されると正常に実行されますが、{&&または;として実行すると何も起こりません。 }
私のコマンドは次のとおりです。
cat input_file.txt > output_file.csv
awk 'NR % 13 == 0'
sed -i '1i id,surface area (mm^2),gray matter volume (mm^3),avg
cortical thickness +-sd,mean curvature,gaussian curvature,folding
index,curvature index,hemi,ROI'
awk -F"/" '$1=$1' OFS="\t"
sed -e 's/\s\+/,/g'
awk '{ print $10 " " $0}' >> output_file.csv
これらすべてのコマンドを実行し、前のコマンドの後に各コマンドを実行する方法を知っている人はいますか?
とても感謝しています!
ベストアンサー1
あなたはしたいですか?チェーン1つの出力から次の入力まで?その場合は、コマンドをパイプに「接続」する必要があります。これにより、最初のプログラムの出力が次のプログラムの入力になります。
date -u
2019年10月15日 17:58:20 UTC
date -u | sed 's/ /./'
2019年3月15日 17:58:20.UTC
だから、あなたは実行することができます順番にパイプ文字|を使用して接続します。
あるいは、これらすべての出力を独立して取得するには、サブシェルを使用できます。 Bashでは、次のことができます。
(command1.sh;command2.sh;command3.sh) >> output.txt
";"、"&&"、改行文字などを使用して別のコマンドを実行できます。