اقرأ محتويات دليل باستخدام البرنامج النصي Shell

StackOverflow https://stackoverflow.com/questions/2435386

  •  19-09-2019
  •  | 
  •  

سؤال

أحاول الحصول على محتويات دليل باستخدام البرنامج النصي شل.

البرنامج النصي الخاص بي هو:

for entry in `ls`; do
    echo $entry
done

ومع ذلك، يحتوي الدليل الحالي على العديد من الملفات مع Whitespaces بأسمائها. في هذه الحالة، فشل هذا البرنامج النصي.

ما هي الطريقة الصحيحة للحلقة على محتويات دليل في SHELT SCRIPTING؟

ملاحظة: أستخدم باش.

هل كانت مفيدة؟

المحلول

for entry in *
do
  echo "$entry"
done

نصائح أخرى

لا تحليل محتويات الدليل باستخدام ls في حلقة. سوف تواجه مشاكل فضائية بيضاء. استخدام توسيع شل بدلا من ذلك

   for file in *
    do
      if [ -f "$file" ];then
       echo "$file"
      fi
    done
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top