forループ内のある変数の内容を別の変数に保存しようとしていますが、次の結果が表示されます。
0403-006 Execute permission denied
助ける。
while IFS='|' read -r col1 col2 col3 col4 col5 col6 col7
do
for f in directory/*
do
files=$($f | awk -F "_" '{print $3}')
echo $files
done
done <test.txt
私はこのプログラムを実行するための完全な権限を持っており、echo $filesと入力するとエラーが発生します。
ベストアンサー1
スクリプトが実行する操作は非常に不明瞭で、完全に間違っているようです。正確に何が間違っていて何を達成したいのかを知るには、より詳細な情報を提供する必要があります。私の考えでは、エラーは次の行で発生するようです。
files=$($f | awk -F "_" '{print $3}')
特にここで何が起こっているのかを理解する必要があります。
$f | awk -F "_" '{print $3}'
実行中です$f
。これはファイルの1つですdirectory/*
。そのうちの1つは0403-006
実行できないことです。
変数などcol1
はどうですかcol2
?読み取ったデータはtest.txt
まったく使用されません。
私の推測が正しい場合でもスクリプトは正常に見えないため、入力データと予想される出力を含む最小限の完全な例を提供してください。