Yanıtlar:
Ayrıştırmals . Ayrıca ALL_CAPS_VARS kullanma
for i in "$incoming_dir"/*"$business_date"*; do
Etkileşimli olarak, alt dizinlere inmeyi önleyen lsbir -dseçenek vardır:
ls -d $INCOMINGDIR/*$BUSSINESSDATE*
"${i}". Ne olabileceğini asla bilemezsin i.
my_file.doc[newline]another_persons_file.docve bazı komut dosyalarının 2 dosya adı olarak gördüklerini "rm" denemesini umabilir ... Glenn'in bağlantısı mutlaka okunmalıdır (mywiki.wooledge.org'da herkes okumalı bütün sss ve aynı zamanda tuzaklar sayfası)
ls -d .*
Bu komutun özyinelemeli olması için hiçbir neden yoktur. Ancak $INCOMINGDIR/*$BUSSINESSDATE*bir dizinle eşleşirse, dizinin kendisi yerine bu dizinin içeriği gösterilir. Ancak bu seviyenin ötesinde bir özyineleme olmazdı.
Bu etkiyi önlemek için bu komutu kullanın:
ls -d "$INCOMINGDIR/"*"$BUSSINESSDATE"*
for ... inlsçıkışlı komutlar risklidir.
Genel olarak finddaha iyi bir çözüm gibi görünüyor veya
for i in "$INCOMINGDIR/"*"$BUSSINESSDATE"*
printf %s\\n "$INCOMINGDIR/"*"$BUSINESSDATE"*