اطلاعیه

بستن
هنوز اعلام نشده است.

نحوه حذف، تغییرنام و کپی فایل هایی که با dash شروع میشوند

بستن
X
  • فیلتر کردن
  • زمان
  • نمایش
پاک کردن همه
پست های جدید

  • نحوه حذف، تغییرنام و کپی فایل هایی که با dash شروع میشوند

    برخی ابزارهای لینوکس یا برنامه هایی که به صورت دستی نوشته شده اند فایل هایی که با "-" شروع میشوند را ایجاد میکنند. اگر شما با استفاده از دستورات ls ،rm ،cp ،mv یا chmod برای حذف، کپی، تغییر نام و یا دسترسی به سایر فایل ها اقدام کنید، خطاهای زیر را دریافت خواهید کرد.
    کد PHP:
    [cmd]: invalid option -- 
    به این دلیل است که سیستم عامل لینوکس شما dash که در filename وجود دارد را به عنوان بخشی از آپشن های کامندلاین در نظر میگیرد و به شما خطای آپشن نادرست یا عدم وجود آپشن را برمیگرداند.

    برای حل مشکل شما میتوانید یکی از دو روش زیر را استفاده کنید.


    روش اول :

    با توجه به اینکه وجود "-" در filename باعث ابهام در تشخیص فایل میشود شما تنها نیاز دارید که این چنین مشکلاتی را با اضافه کردن یک path name به نام فایل رفع کنید. به طور مثال اگر شما یک فایل به نام -my.txt در پوشه جاری خود دارید میتوانید با استفاده از دستور زیر به آن دسترسی داشته باشید.
    کد PHP:
    chmod 600 ./-my.txt
    rm ./-my.txt 


    روش دوم :

    به منظور روبه رو شدن با کاراکتر "-" در نام فایل شما میتوانید از آپشن خاص "−−" استفاده کنید که توسط getopt() به عنوان عدم استفاده از آپشن تفسیر میشود. تمام ابزارهای کامندلاینی استاندارد لینوکس از getopt() برای پروسس کردن آپشن های کامندلاین استفاده میکنند، زمانیکه getopt() گزینه "−−" را دریافت کند پروسس پردازش کردن آپشن ها را در کامند متوقف میکند. بنابراین تنها کافیست "−−" را قبل از نام فایل استفاده کنید تا مشخص کنید که dash موجود در نام فایل بخشی از دستور نیست.
    کد PHP:
    chmod -- 600 -my.txt
    rm -- -my.txt 
پردازش ...
X
کانال تلگرام منطقه لینوکسی ها