Aynı listeyi kullanarak birden çok döngü komutuna sahip bir komut dosyası var. Bu şuna benzer: Uygulama adında bir alan olmadığındanBash döngü komutu boşlukları içeren listeden geç
# List of applications
read -r -d '' Applications << EndOfList
/Applications/App.app
/Applications/App2.app
/Applications/App3.app
/Applications/Another App.app
EndOfList
for file in $Applications
do
if [ -e "$file" ]; then
echo ""$file" found"
fi;
done
exit 1
Bu listede dördüncü uygulamanın dışında iyi çalışıyor görünüyor. Ben hata ayıklama modunda komut dosyasını çalıştırın, bu çıkışı:
+ read -r -d '' Applications
+ for file in '$Applications'
+ '[' -e /Applications/App.app ']'
+ for file in '$Applications'
+ '[' -e /Applications/App2.app ']'
+ for file in '$Applications'
+ '[' -e /Applications/App3.app ']'
+ for file in '$Applications'
+ '[' -e /Applications/Another ']'
+ for file in '$Applications'
+ '[' -e App.app ']'
+ exit 1
bunu ve birden başka yollar alıntı, ters eğik çizgi kaçan denedim ama işe alamadı.
Evet! Bu gerçekten gitmek için bir yoldur. Teşekkürler! Bu konuda daha fazla bilgi buldum [here] (http://mindspill.net/computing/linux-notes/using-the-bash-ifs-variable-to-make-for-loops-split-with- boşluk olmayan-karakter /) – Matter