私はこのコードを持っていますが、FreeBSDで試してみるとエラーが多く表示されます...どうすれば修正できますか?変数IGNと一致する場合、ディレクトリをチェックします。 NAME_dは配列でなければなりません。それはそれを解決しますが、bashのを使用している場合、あなたはあなたがすべきアレイに追加する配列として、その後UNIX:配列を使用しようとするとエラーが発生する
NAME_d=()
とをNAME_dを開始する必要がある場合
max_d=$(find "${DIR}" -type d | wc -l)
for i in `seq 1 $max_d`
do
check_d=$(find "${DIR}" -type d | head -n "${i}" | tail -n -1 | tr '\/' '\n' | egrep -n "${IGN}")
if [ ! -z "$check_d" ]; then
NAME_d+=$i"d "
fi
done
directory_d=${NAME_d[*]}
sedCmds_d=${directory_d// /;}
これは今日二度目である私は、この '配列を参照してください'以前の検索でループし、ループ内で別の検索でそれぞれの検索から1行だけを読み込みます。これは最適ではありません。あなたの仕事を再考してください!どうすれば 'let x = 0;見つける。タイプd |読んでいる間に。 「x ++」しましょう。 $ dirで作業してください。おそらくLINENO $ xを使っても構いません。 done' – ikrabbe
あなたは 'bash'を使用しているようには見えません。これはバージョン3.1以降の代入文に対して' + = 'を許しています。さらに、 'NAME_d'は' bash'を使っていても配列ではありません。 – chepner
テキストとして投稿できない場合は、画像として情報を提供します(読み取り可能、検索可能など)。 –