انجمن‌های فارسی اوبونتو

تازه کار => انجمن تازه‌کاران => نویسنده: ubuntu11 در 26 خرداد 1395، 05:10 ب‌ظ

عنوان: نحوه ی حذف فایلها در دایرکتوری به جز یه فایل
ارسال شده توسط: ubuntu11 در 26 خرداد 1395، 05:10 ب‌ظ
سلام بر دوستان
امیدوارم موضوع رو درست ذکر کرده باشم. من میخام تو یه دایرکتوری که هستم مثلا 15 فایل دارم میخام همه رو حذف کنم جز یه فایل
دستورش رو به چه صورت تو ترمینال باید اجرا کنیم؟
با تشکر
عنوان: پاسخ : نحوه ی حذف فایلها در دایرکتوری به جز یه فایل
ارسال شده توسط: Geek در 26 خرداد 1395، 05:15 ب‌ظ
پرسش خودت را باید با جزئیات بیشتری بیان کنی.
برای نمونه اون تک فایلی که قرار بمونه با دیگر فایل‌ها چه تفاوتی داره و... .
بهتره پرسشت رو همراه با یک نمونه توضیح بدی.
عنوان: پاسخ : نحوه ی حذف فایلها در دایرکتوری به جز یه فایل
ارسال شده توسط: X!n3td در 26 خرداد 1395، 05:19 ب‌ظ
خیلی ساده به این صورت :

rm -rf !(masoud)
در اینصورت همه فایل هایی که اسمشون masoud نیست حذف میشن :)‌ یعنی همه جز masoud
عنوان: پاسخ : نحوه ی حذف فایلها در دایرکتوری به جز یه فایل
ارسال شده توسط: ubuntu11 در 26 خرداد 1395، 05:49 ب‌ظ
با تشکر
kasra@ubuntu:~/wild$ ls
011ali  92kasra  Ahmad  aziz  elly  love  myfile  test  zip  zippy.tar.gz
حالا میخام همه ی فایلها  به جز فایل zippy.tar.gz  حذف بشن.
عنوان: پاسخ : نحوه ی حذف فایلها در دایرکتوری به جز یه فایل
ارسال شده توسط: ubuntu11 در 26 خرداد 1395، 05:56 ب‌ظ
خیلی ساده به این صورت :

rm -rf !(masoud)
در اینصورت همه فایل هایی که اسمشون masoud نیست حذف میشن :)‌ یعنی همه جز masoud

ممنون
حالا چرا داخل پرانتز که میذارم اسم فایل رو مینویسم و تب رو کلیک میکنم اسم فایل رو کامل نمینویسه؟
یعنی مثلا من بعد از نات ! پرانتز میذارم و گزینه zip رو مینویسم بعد روی تب کلیک میکنم کل اسم فایل zippy.tar.gz رو نمینویسه. مگه تو ترمینال اسمی که از قبل باشه با فشردن کلید تب کامل نمیشه؟ ببخشید ما مبتدی هستیم.و سوال اخرم در این زمینه بود.
موفق باشید
عنوان: پاسخ : نحوه ی حذف فایلها در دایرکتوری به جز یه فایل
ارسال شده توسط: M!lad در 26 خرداد 1395، 05:58 ب‌ظ
shopt -s extglob
rm !(zippy.tar.gz)

---

اسم رو کامل نمیکنه چون فکر میکنه اول اسم یک پرانتز هست، دنبال فایلی میگرده که اولش پرانتز باشه تا تکمیلش کنه و چیزی پیدا نمی‌کنه.