نوشته شده توسط فرشید نوتاش حقیقت.
در این بخش به چند فرمان بسیار مهم و پرکاربرد که در مدیریت فایلها و دایرکتوریها کارایی دارد، پرداختهایم:
– فرمان cp: کپی کردن فایلها و دایرکتوریها
– فرمان mv: جابجا کردن/ تغییر نام فایلها و دایرکتوریها
– فرمان mkdir: ایجاد دایرکتوریها
– فرمان rm: حذف فایلها و دایرکتوریها
Wildcardها
قبل از آن که فرمانهای فوق را شرح دهیم، نیاز است به یکی از ویژگیهای پوسته بپردازیم که این فرمانها را بسیار قدرتمند میسازد.
Wildcard | کارایی |
* | هر کاراکتری و هر تعداد |
? | یک کاراکتر |
[characters] | هر کاراکتر مشخصی که نیاز است باشد. |
[!characters] | هر کاراکتر مشخصی که نباید باشد. |
[[:class:]] | هر کاراکتری متعلق به کلاس باشد. |
کاراکترهای class | کارایی |
[:alnum:] | هر کاراکتر الفبایی و شمارهای |
[:alpha:] | هر کاراکتر الفبایی |
[:digit:] | هر شمارهای |
[:lower:] | هر حرف کوچک |
[:upper:] | هر حرف بزرگ |
چندین مثال:
مثال | مفهوم |
* | همه فایلها |
g* | هر فایلی که با g آغاز میشود |
b*.txt | هر فایلی که با b شروع شده و هر تعداد کاراکتر بعد از آن با پایان .txt |
Data??? | هر فایلی که با Data آغاز میشود و سه کاراکتر در انتهای آن قرار دارد. |
[abc]* | هر فایلی که با a یا b یا c آغاز میشود. |
BACKUP.[0-9][0-9][0-9] | هر فایلی که با BACKUP. آغاز شده و در ادامه سه رقم قرار میگیرد. |
[[:upper:]] | هر فایلی که با حرف بزرگ آغاز میشود. |
[![:digit:]]* | هر فایلی که با عدد آغاز نمیشود. |
*[[:lower:]123] | هر فایلی که با یک حرف کوچک یا با شماره ۱ یا ۲ یا ۳ آغاز میشود. |
فرمان mkdir
فرمان mkdir برای ایجاد دایرکتوریها استفاده میشود.
فرمت فرمان mkdir
mkdir dir1
دایرکتوری dir1 را ایجاد میکند.
mkdir dir1 dir2 dir3
دایرکتوریهای dir1 و dir2 و dir3 را ایجاد میکند.
فرمان cp
فرمان cp فایلها و دایرکتوریها را کپی میکند.
فرمت فرمان cp
cp item1 item2
item1 را در item2 کپی میکند.
گزینههای فرمان cp
گزینه | عملکرد |
a, –archive | فایلها و دایرکتوریها و تمام ویژگیهای آن از جمله مالکیت و پرمیژن را کپی میکند. |
i, –interactive | قبل از بازنویسی مجدد یک فایل، از کاربر تاییدیه میخواهد. |
r, –recursive | دایرکتوریها و محتویات آن را بهطور بازگشتی کپی میکند. این گزینه (یا گزینه -a) هنگام کپی کردن دایرکتوریها نیاز میشود. |
u, –update | هنگام کپی کردن فایلها از یک دایرکتوری به دایرکتوری دیگر فقط فایلهایی را که یا وجود ندارند و یا جدیدتر از فایلهای متناظر موجود در دایرکتوری مقصد هستند کپی میکند. |
v, –verbose | پیامهای اطلاعرسانی را برای عملیات کپی نمایش میدهد. |
مثالهایی از فرمان cp
cp file1 file2
file1 را در file2 کپی میکند. اگر file2 وجود داشته باشد آن را با محتویات file1بازنویسی میکند. اگر file2 وجود نداشته باشد، آن را میسازد.
cp –i file1 file2
همانند مثال قبلی است با این تفاوت که زمانی که file2 وجود داشته باشد قبل از بازنویسی از کاربر سوال میشود.
cp file1 file2 dir1
file1 و file2 را در dir1 کپی میکند. dir1 باید وجود داشته باشد.
cp dir1/* dir2
با استفاده از wildcard تمام فایلهای dir1 در dir2 کپی میشوند. dir2 باید وجود داشته باشد.
cp -r dir1 dir2
dir1 (و محتویات آن را) به dir2 کپی میکند. اگر دایرکتوری dir2 وجود نداشته باشد، ایجاد خواهد شد و محتویات dir1 در آن کپی میشود.
فرمان mv
فرمان mv هم فایل را جابهجا میکند و هم تغییر نام میدهد. بستگی دارد که چگونه از آن استفاده شود. طرز استفاده از فرمان mv همانند فرمان cp است.
mv item1 item2
برای تغییر نام میبایست item1 و item2 به یک آدرس اشاره کنند ولی نام آنها متفاوت باشد.
گزینههای فرمان mv
گزینه | عملکرد |
i, –interactive | قبل از بازنویسی یک فایل از کاربر درخواست تاییدیه میکند. اگر این گزینه مشخص نشده باشد، فایل همنام بیدرنگ بازنویسی خواهد شد. |
u, –update | هنگام انتقال از یک دایرکتوری به دایرکتوری دیگر فقط فایلهایی را که در دایرکتوری مقصد موجود نیستند و یا جدیدتر از فایلهای موجود در دایرکتوری مقصد هستند حرکت میدهند. |
v, –verbose | پیامهای اطلاعرسانی را برای انتقال نمایش میدهند. |
مثالهای فرمان mv
mv file1 file2
file1 را به file2 انتقال میدهد. اگر file2 وجود داشته آن را با محتویات file1 بازنویسی میکند.
mv -i file1 file2
همانند مثال قبلی file1 را به file2 انتقال میدهد. اگر file2 وجود داشته از کاربر برای بازنویسی سوال میشود.
mv file1 file2 dir1
file1 و file2 را به dir1 انتقال میدهد. dir1 باید وجود داشته باشد.
mv dir1 dir2
dir1 (و محتویات آن را) به دایرکتوری dir2 انتقال میدهد. اگر dir2 وجود نداشته باشد آن را میسازد و محتویات دایرکتوری dir1 را به دایرکتوری dir2 منتقل میکند و dir1 را حذف میکند.
فرمان rm
فرمان rm برای پاک کردن (حذف) فایلها و دایرکتوریها مورد استفاده قرار میگیرد.
rm item…
item میتواند یک یا چند فایل یا دایرکتوری باشد.
گزینههای فرمان rm
گزینه | عملکرد |
i, –interactive | قبل از حذف فایلی که وجود دارد از کاربر تاییدیه میگیرد. اگر این گزینه مشخص نشده باشد، فرمان rm فایلها را بدون درنگ حذف میکند. |
r, –recursive | اگر دایرکتوری دارای زیردایرکتوریهایی باشد، آنها را نیز حذف میکند. |
f, –force | فایلهای موجود را نادیده میگیرد. |
v, –verbose | پیامهای اطلاعرسانی را برای عمل حذف نمایش میدهد. |
مثالهای فرمان rm
rm file1
بیدرنگ file1 را حذف میکند.
rm -i file1
قبل از حذف file1 از کاربر تاییدیه میگیرد.
rm -r file1 dir1
file1 و dir1 را به همراه محتویاتشان حذف میکند.
منبع: کتاب The Linux Command Line نوشته William E. Shotts
نوشته آموزش خط فرمان: قسمت پنجم، مدیریت فایلها و دایرکتوریها اولین بار در لینوکس سیزن پدیدار شد.