-2

以下のようなCSV出力ファイルを作成するシェルスクリプトがあります(別々の行で):

aaa,111
bbb,222
ccc,999

上記の出力の最初の列として、次のようなレコード番号が必要です。

dm1,aaa,111
dm2,bbb,222
dm3,ccc,999

dmシェル スクリプト内で変数を作成するにはどうすればよいですか?

4

3 に答える 3

1

使用awk:

awk '{print "dm" NR "," $0}' input.csv >output.csv

また

... | awk '{print "dm" NR "," $0}' >output.csv
于 2013-06-29T21:05:26.853 に答える
0

var と expr を使用して、次のような計算を行うことができます

dm=`expr $dm + 1`
echo "dm$dm,...rest of output..."
于 2013-06-29T21:02:50.980 に答える
0

出力をパイプしますawk

yourcommand | awk -F, -v prefix="dm" '{printf "%s%d,%s\n", prefix, NR, $0}'

-F,入力フィールドセパレーターを設定-vするように設定し、プレフィックスを設定するように設定します。必要に応じて、「dm」をシェル変数に置き換えることができます。

于 2013-06-29T21:09:29.120 に答える