تدهور رشيق للعالم على المحطة
-
22-09-2019 - |
سؤال
كلما فشل تطابق نمط العالم ، فإنه يتوقف عن الوظيفة بأكملها. على سبيل المثال،
$ 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
لا تنتمي إلى StackOverflow