2012-01-03 13 views
0

簡単な質問:bashのforループで変数を使用する

数値のリストから番号を取得します。その後、それぞれの番号を使ってsthを実行します。

for i in list_of_number;do cat file|head -$(($i+1))|tail -1;done 

これは正しいようですが、実際は機能しません。ここで何が問題なの? thx

答えて

1

これを行うと、list_of_numberが文字列として扱われます。これは、ループしたい数値のリストを含むファイルであると仮定します。

代わりに試してみてください。

 
for i in `cat list_of_number`;do cat file|head -$(($i+1))|tail -1;done 
+0

をおやっああ...ありがとう! – user815408

+0

心配する必要はありませんが、私はこれらのタイプの間違いを常にしています。 Bashはかなり容赦しないかもしれません。 – asf107

関連する問題