مشكلة Bash Script ، Find ، MV Tilde Files التي تم إنشاؤها بواسطة Gedit
سؤال
أنا أستخدم Linux مع GEDIT الذي لديه عادة رائعة لإنشاء ملف مؤقت مع tilde في النهاية لكل ملف أقوم بتحريره.
أنا أحاول نقل كل هذه الملفات مرة واحدة إلى مجلد مختلف باستخدام ما يلي:
find . -iname “*.php~” -exec mv {} /mydir \;
ومع ذلك ، فإنه يمنحني الآن أخطاء في بناء الجملة ، كما لو كانت تبحث من خلال كل ملف ومحاولة نقل قطعة النص. أريد فقط نقل جميع الملفات التي تنتهي في .php ~ إلى دليل آخر. أي فكرة كيف أفعل ذلك؟
هتاف كه
المحلول
جرب هذا الواحد:
for D in `find . -iname "*.php~"`; do mv ${D} /mydir; done
للحصول على مرجع مستقبلي ، إذا دخلت إلى تحرير> تفضيلات> علامة تبويب المحرر ، فهناك مربع اختيار لـ "إنشاء نسخة احتياطية من الملفات قبل حفظها" ، وهذا هو الشخص المسؤول عن إنشاء إصدار Tilde.
نصائح أخرى
تجد GNU
find . -iname "*.php~" -exec mv "{}" /mydir +;
أو
for file in *.php~
do
echo mv "$file" /mydir
done
لا تنتمي إلى StackOverflow