کار کردن با فایل ها در لینوکس

در نوشته ی پیش رو دستورات مدیریت، ایجاد، تغییر مسیر، تغییر نام و یا تغییر پسوند جمعی فایل در لینوکس را مرور می کنیم.

 

تمام فایل ها در لینوکس حساس به حروف (بزرگ/کوچک) هستند.

فایل ها در لینوکس و حتی بعضی از یونیکس ها به حروف بزرگ یا کوچک حساس هستند. بدین معنی که File1 با file1 متفاوت بوده و هر کدام از اینها یک فایل جداگانه محسوب می شوند و میتوانند در یک پوشه بدون آنکه خطای (نام تکراری) دریافت کنید هر دوی اینها را داشته باشید.

 

با توجه به چیزهایی که در نوشته قبلی یاد گرفتیم، میخواهیم یک پوشه بنام pouyasazan ایجاد کرده و در آن دو فایل بسازیم با نام های کوچک و بزرگ

mkdir pouyasazan

با دستور cd وارد پوشه ای که ایجاد کرده ایم می شویم:

cd pouyasazan

برای ایجاد فایل در لینوکس از دستور touch استفاده می شود. مثلا touch file1

به دستورات زیر نگاه کنید:

touch tarimehr
touch Tarimehr
touch TariMehr

تفاوت فایل ها فقط در بزرگی و کوچکی حروف است و بدون خطا در کنار هم در یک پوشه قرار گرفته اند.

بنابراین هر یک میتوانند محتوای خاص خودشان را هم داشته باشند. ما برای واضح تر شدن در هر کدام از فایل ها محتویاتی قرار داده ایم و با دستور cat از فایل ها خواسته ایم تا چیزی که در آنها قرار دارد را به ما نشان دهند.

 

[root@server15 pouyasazan]# cat tarimehr
in test 1 ast
[root@server15 pouyasazan]# cat Tarimehr
in test 2 ast ba mohtavaye motefavet !!!
[root@server15 pouyasazan]#

در لینوکس تمام آنچه که مشاهده می کنید فایل محسوب می شوند. حتی پوشه های موجود در لینوکس هم نوع خاصی از فایل هستند.

پوشه ی /dev/sda که مربوط به پارتیشن بندی سیستم است و یا پراسس های سیستم نیز فایل محسوب می شود و از آن به عنوان فایل سیستم یاد می شود.

دستور file یک ابزار برای تشخیص نوع فایل است.

شما با استفاده از دستور file می توانید اطلاعاتی در خصوص آن فایل استخراج نمایید. برای درک بهتر مطلب ما یکسری فیلم، تصویر و متن در این پوشه قرار داده ایم و با زدن دستور فایل، نوع آنها را مشاهده میکنیم.

[root@server15 pouyasazan]# ls
How-To-Extend-LVM.mp4  logo-pouyasazan.png  tarimehr  Tarimehr  TariMehr
[root@server15 pouyasazan]# file How-To-Extend-LVM.mp4
How-To-Extend-LVM.mp4: ISO Media, MPEG v4 system, version 2
[root@server15 pouyasazan]# file logo-pouyasazan.png
logo-pouyasazan.png: PNG image data, 200 x 52, 8-bit/color RGBA, non-interlaced
[root@server15 pouyasazan]# file How-To-Extend-LVM.mp4
How-To-Extend-LVM.mp4: ISO Media, MPEG v4 system, version 2
[root@server15 pouyasazan]# file tarimehr
tarimehr: ASCII text
[root@server15 pouyasazan]#

دستور touch

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

touch mehrdad

با این کار یک فایل خالی بنام دلخواه ما ایجاد می شود.

نکته: این دستور همانند سایر دستورات آپشن های زیادی دارد که با زدن دستور man touch می توانید کارهایی که با این دستور قابل انجام است را مطالعه نمایید.

یکی از آنها سوئیچ t- است که میتوانید به کمک آن اطلاعات تاریخ و ساعت و زمانی این فایل را نیز دستکاری یا تعریف نمایید:

-t STAMP
use [[CC]YY]MMDDhhmm[.ss] instead of current time

[root@server15 pouyasazan]# touch -t 201805082113 mehrdad
[root@server15 pouyasazan]# ls -al
total 27404
drwxr-xr-x.  2 root root     4096 Apr 22 04:19 .
dr-xr-x---. 16 root root     4096 Apr 22 02:29 ..
-rw-r--r--.  1 root root 28036064 Apr 22 03:01 How-To-Extend-LVM.mp4
-rw-r--r--.  1 root root     5966 Dec 19  2015 logo-pouyasazan.png
-rw-r--r--.  1 root root        0 May  8  2018 mehrdad
-rw-r--r--.  1 root root       14 Apr 22 02:37 tarimehr
-rw-r--r--.  1 root root       41 Apr 22 02:37 Tarimehr
-rw-r--r--.  1 root root        0 Apr 22 02:29 TariMehr

 

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

rm mehrdad

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

برای حذف بی چون و چرای فایل میتوانید از دستور rm -rf mehrdad استفاده کنید تا بدون تعلل و سوال، فایل حذف شود.

rm -rf mehrdad

برخی از توزیع های لینوکس زمانی که دستور rm وارد میکنید هم از شما سوال یا تاییدیه خواسته نمی شود. برای افراد حواس پرت که نگران هستند ممکن است بطور تصادفی فایلی را حذف کنند پیشنهاد می کنیم از سوئیچ i استفاده کنند تا سیستم قبل از حذف حتما از ایشان تاییدیه دریافت کند.

rm -i mehrdad

 

 

کپی فایل ها در لینوکس با دستور cp انجام می شود.

برای مثال ما در مسیر pouyasazan/ هستیم و میخواهیم فایل tarimehr را در مسیر home/ کپی کنیم

برای این کار دستور ما بدین صورت خواهد بود:

cp tarimehr /home

حال زمانی قصد داریم کل پوشه پویا سازان را در مسیر دیگری کپی کنیم برای این کار میبایست از سوئیچ r- استفاده کنیم تا بصورت recursive این پوشه و هر آنجه در آن قرار دارد و پوشه های داخل آن و …. را بطور کامل برایمان کپی کند.

cp -r /pouyasazan /home

زمانی هم قصد داریم از این پوشه که هستیم، کپی در همان مسیر بگیریم اما با نامی دیگر ذخیره کنیم

اول از پوشه پویاسازان خارج شوید و یک مرتبه به عقب بازگردید. سپس دستور کپی را بزنید

بنابراین دستور ما می شود:

cd ..
cp -r pouyasazan /tari

با این دستور یک پوشه با نام دلخواه ما در مسیر / که به آن root گفته می شود ایجاد و محتویات pouyasazan در آن قرار میگیرد.

دستور i برای این مورد هم کاربرد دارد و شما می توانید برای جلوگیری از بروز خطا و یا اشتباه از این سوئیچ استفاده کنید. اگر احتمال میدهید قبلا فایلی با نام مورد نظرتان وجود داشته باشد با سوئیچ i می توانید از overwrite شدن فایل جدید جلوگیری کنید. در برخی توزیع های لینوکس این دستور کاربرد دارد چرا که برای مثال در centos بطور پیش فرض از این الگو تبعیت می کند.

 

دستور mv جز کامند هایی به شمار می رود که دو کاربری می توان از آن انتظار داشت.

یکی به عنوان انتقال فایل از مسیری به مسیر دیگر

و کاربرد دوم استفاده از این دستور برای تغییر نام فایل

مثال اول: فایلی بنام test در مسیر home/ داریم و میخواهیم آن را به پوشه پویا سازان در مسیر root/pouyasazan/ انتقال دهیم.

cd /home
mv test /root/pouyasazan

مثال دوم: حال در پوشه pouyasazan هستیم و فایلی بنام test داریم که میخواهیم آن را به iran تغییر نام دهیم.

mv test iran

به همین سادگی می توانید تغییر مسیر یا تغییر نام را با دستور mv انجام دهید.

 

یک دستور دیگری که بسیار کاربردی به نظر می رسد دستور rename است.

مثال: با دستور زیر فایل هایی با پسوند .conf ایجاد میکنیم:

touch iran.conf tehran.conf esfahan.conf mazandaran.conf

چهار فایل با نام های اعلام شده ایجاد می شوند که با دستور ls می توانید آنها را مشاهده کنید.

حال قصد داریم پسوند این فایل ها را از conf به txt تغییر دهیم که کاربرد دستور rename را می توانیم مشاهده کنیم:

rename .conf .txt *.conf

نتیجه را در تصویر مشاهده کنید:

مطالب مرتبط

2 دیدگاه‌

  1. علیرضا گفت:

    اموزش های خوبی در سایتتون قرار میدین،
    منتظر اموزش های بعدی شما هستیم

    • مهرداد تاری گفت:

      از اینکه مورد پسند شما بود، خرسندیم.
      روال ثابتی برای آموزش لینوکس شروع شده است که بطور منظم و هفتگی در سایت پویاسازان منتشر خواهد شد.

      سلامت باشید

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.