2016-11-06 6 views
1

解決策が見つかりませんが、この質問の何千もの変形が以前に尋ねられています。 私はディレクトリにいくつかのテキストファイルを持っています。各ファイルの先頭に1つの列を追加したい。最初のファイルのための追加の列、それは1のカラムである第二のファイルのために、第三のファイルのために、それは2の列の0の列ですなどLinuxのディレクトリにあるすべてのテキストファイルに特定の列を追加するにはどうすればよいですか?

ので、この有効にする方法:

をこれに
0 2 3 2 
    3 3 3 1 
    4 3 4 2 

0 0 2 3 2 
0 3 3 3 1 
0 4 3 4 2 

と、この:これに

2 3 4 3 
2 3 3 5 
5 4 1 2 

1 2 3 4 3 
1 2 3 3 5 
1 5 4 1 2 

#!/bin/bash 
path=/prosjekt/tvs/QSexpt1_16K 

jj=0 
for file in "$path"/*.lsf; 
do 

awk '{$1=$(($jj)); print}' $file >> qq.txt 
$jj=$(($jj+1)) 

done 

答えて

1

これを試してください:あなたの試みで

#!/bin/bash 
path=/prosjekt/tvs/QSexpt1_16K 

jj=0; 
for file in "$path"/*.lsf; do 
    awk "{printf \"$jj\"; print}" "$file" >> qq.txt 
    jj=$(($jj+1)) 
done; 

問題があった。

は、私がどんな成功せず、次を試してみました $jj=$(($jj+1)) - あなたは $せずに変数を割り当てる必要があります。 bash変数は ''には展開されません。

+0

Thans a lot! :) – KianStar

関連する問題