رفع خطای -bash: /bin/rm: Argument list too long
گاهی ممکن است بخواهید تعداد خیلی زیادی فایل را حذف کنید ولی با خطای
-bash: /bin/rm: Argument list too long
مواجه شوید.
دستور rm در هر بار اجرا تعداد مشخصی فایل را می تواند حذف کند و زمانی که تعداد فایل ها از حد مشخصی بیشتر شود با خطا مواجه می شود.
برای رفع این مشکل می توانید از دستور find استفاده کنید!!
فرض کنید میخواهید تمام فایل هایی که با a شروع می شوند و در پوشه /tmp هستند را حذف کنید.
find /tmp/ -type f -name "a*" | xargs rm
اگر باز هم خطا دریافت کردید میتونید از کد زیر استفاده کنید:
1 |
find /tmp/ -path '/tmp/*' -name "abcd*" -type f -prune -mtime +3 | xargs rm |
با اجرای دستور فوق فایل هایی که در پوشه /tmp هستند و نام آنها با abcd شروع میشود و تاریخ ویرایش آنها بیشتر از ۳ روز است حذف میشوند.
میتونید بجای mtime +3 عدد دلخواه خود را بنویسید. (مثلا mtime +10 برای فایلهایی که ویرایش آنها بیشتر از ۱۰ روز پیش بوده). یا بجای abcd نام فایل مورد نظر خود را بنویسید و یا بجای /tmp مسیر دلخواه خود را وارد نمایید.
لینک کوتاه مطلب : https://blog.talahost.com/?p=120
برچسب ها :
/bin/find, Argument list too long, bash: /bin/find: Argument list too long, linux, ssh, آموزش ssh, حذف تعداد زیاد فایل, رفع خطای Argument list too long, کنسول لینوکس