bash変数を作成し、ループを介してそれらに値を割り当てる方法はありますか?
以下の線に沿った何か:
#!/bin/bash
c=0
for file in $( ls ); do
var"$c"="$file";
let c=$c+1;
done
編集:これがリストの代わりにならないことを指摘してくれた@Costasと@mdpcに感謝します。問題は理論のみです。
1
注:これをコマンドとして実行した場合、セットアップは変数を現在のプロセスでのみ変更/変更/割り当てし、親プロセスでは変更しないことに注意してください。「。」を使用してファイルを入手できます。コマンド(EX:。new_vars)を使用して、これを現在のプロセス内で実行します。
—
mdpc 2015
わかりましたが、上記は実際には動作しません。
—
toxefa
var"$c"
それを壊します。@Costasの回答は、単一のリスト変数に複数の値を割り当てる方法を示しています-変数を実際にループで生成できるかどうかを理論的に尋ねています。
うーん...なぜ複雑なのか、新しい変数を使用するだけでファンファーレなしに作成されます。
—
mdpc 2015