わかりました。次の情報を入手しました。
check="${PATH//:/'\n'}"
上記は、各パスを単純化された方法で取り、それを変数としてきれいにフォーマットします。では、各行が存在することを確認し、echoと組み合わせて各行を宣言するかどうかを確認します(echoを使用するようです)。
おそらくforまたはwhileループが関連していることを知っていますが、どうすればよいかわかりません。
強く打つ答えだけをしてください。
ベストアンサー1
while read -d: dir
do
[ -d "$dir" ] || echo "Missing: $dir"
done <<<"${PATH%:}:"
read -d: dir
入力を変数として読み、dir
その時点の入力を削除します:
。
[ -d "$dir" ]
ディレクトリが存在するかテスト
||
次の文は、前の文がfalseを返した場合にのみ実行されます。
<<<"${PATH%:}:"
以下を使用してループに入力を提供します。ここにある文字列。この形式を"${PATH%:}:"
使用すると、:
PATH文字列に従います。これは2段階で行われる。初めて使用サフィックスの削除、、、は${PATH%:}
PATHから末尾(:
ある場合)を削除します。第二に、コロンを追加します。