سؤال

كلما فشل تطابق نمط العالم ، فإنه يتوقف عن الوظيفة بأكملها. على سبيل المثال،

$ mv *.jpg *.png folder1 && blahblah
mv: cannot stat `*.jpg': No such file or directory

*.png لم يتم نقلها إلى المجلد 1 و blahblah لم يتم تشغيل.

والبرنامج النصي أدناه يعمل فقط للحالة عندما يكون كلاهما. [az] * و * ينجح.

#!/bin/bash
cd $1
du -sk .[A-z]* *| sort -rn | head

كيف أجعل الكرة الأرضية تفشل بأمان ، على الأكثر فقط عرض تحذيرات ، ولكن لا تتوقف عن الوظيفة؟

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

المحلول

في باش ، shopt -s nullglob سيسمح لكرة الشبكة الفاشلة بالتوسع إلى لا شيء بدون أخطاء.

نصائح أخرى

ثم استخدم حلقة. قبلة

for files in jpg png
do
  mv *.${files} /destination 2>/dev/null && do_something 
done
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top