در این مقاله قصد دارم به مجموعهای از دستورات پرکاربرد در لینوکس و لینوکس و کار با فایلها بپردازم که برای هر کاربری که با این سیستمعامل کار میکند، ضروری هستند. اگر بهتازگی با لینوکس آشنا شدهاید و در حال یادگیری هستید، این نوشته میتواند برایتان شروع خوبی باشد؛ مخصوصاً اگر بخواهید با ترمینال و خط فرمان راحتتر کار کنید.
مقدمه
وقتی وارد دنیای لینوکس میشویم، یکی از اولین چیزهایی که با آن مواجه میشویم محیط ترمینال یا همان Command Line Interface (CLI) است. در ابتدا ممکن است این محیط کمی ترسناک یا خشک بهنظر برسد، اما بهمرور که با دستورات مختلف آشنا میشوید، متوجه قدرت، سرعت و انعطافپذیری فوقالعاده آن خواهید شد.
قابلیت تکمیل خودکار (Auto-completion)
در لینوکس، یکی از ویژگیهای دوستداشتنی برای کار در ترمینال، تکمیل خودکار با کلید Tab است. کافیست بخشی از نام یک دستور یا فایل را تایپ کنید و دکمهی Tab را بزنید؛ سیستم خودش ادامه را حدس میزند. اگر چند گزینه وجود داشته باشد، با دو بار زدن متوالی Tab لیست کامل را به شما نشان میدهد. البته در مراحل یادگیری پیشنهاد میکنم زیاد از این قابلیت استفاده نکنید تا حافظهی عضلانی و تایپتان تقویت شود.
مرور دستورات قبلی با history
یکی دیگر از امکانات جالب ترمینال، دستور history
است. این دستور لیستی از تمام فرمانهایی که قبلاً اجرا کردهاید را همراه با شماره نمایش میدهد. با کلیدهای جهت بالا و پایین روی کیبورد هم میتوانید بین دستورات قبلی حرکت کنید.
گرفتن راهنمای دستورات
برای یادگیری بیشتر دربارهی هر دستور، چند راه وجود دارد:
man <دستور>
: راهنمای کامل و دقیقinfo <دستور>
: مشابهman
ولی گاهی خلاصهتر<دستور> --help
: خلاصهای سریع از نحوه استفاده
اطلاعات کاربری
چند دستور مفید برای دیدن اطلاعات مربوط به کاربر فعلی:
who
: کاربرانی که وارد سیستم شدهاندw
: اطلاعات بیشتر شامل مدت زمان فعالیتwhoami
: نام کاربری فعلیid
: اطلاعات دقیقتر شامل UID، GID و گروهها
جستجو در میان دستورات
اگر نام دقیق دستوری را یادتان نیست، دستور whatis
کمک میکند با جستجو در توضیحات دستورات، گزینههای مرتبط را پیدا کنید. مثلاً whatis who
میتواند لیستی از دستورات مرتبط با “who” نمایش دهد.
جابهجایی در دایرکتوریها لینوکس و کار با فایلها
برای رفتن به دایرکتوریهای مختلف از دستور cd
استفاده میشود. به عنوان مثال:
cd /home/user/Documents
cd ..
برای بازگشت به پوشهی قبل- استفاده از Tab برای تکمیل مسیرها
دیدن محتویات دایرکتوری
برای لیست کردن فایلها و پوشهها از ls
استفاده میکنیم. اگر بخواهیم اطلاعات بیشتری ببینیم:
ls -l
: نمایش جزئیات مثل مجوزها و تاریخ تغییرls -lh
: نمایش اندازهها بهصورت قابلفهم (KB, MB)
کپی، انتقال و ساخت فایل
cp
: کپی فایل یا پوشه (cp file.txt backup.txt
)mv
: جابهجایی یا تغییر نام فایلtouch
: ساخت یک فایل خالی
مشاهده محتویات فایل
برای دیدن محتوای یک فایل متنی:
cat file.txt
head -n 5 file.txt
: نمایش ۵ خط اولtail -n 5 file.txt
: نمایش ۵ خط آخر
برش بخشهایی از فایل
با دستور cut
میتوان بخش خاصی از هر خط فایل را استخراج کرد. مثلاً cut -c 1 file.txt
فقط اولین حرف هر خط را برمیگرداند.
اجرای چند دستور پشت سر هم
اگر بخواهید چند دستور را پشت سر هم اجرا کنید، میتوانید بین آنها از ;
استفاده کنید. مثلاً:
echo "شروع شد"; sleep 2; echo "پایان یافت"
توقف موقت اجرای اسکریپت
با دستور sleep
میتوانید بین دستورات وقفه بیندازید. مثلاً:
sleep 5
ترمینال را ۵ ثانیه در حالت انتظار نگه میدارد.
چاپ متن یا متغیرها
دستور echo
برای چاپ متن در خروجی استفاده میشود. مثلاً:
echo "سلام دنیا"
تغییر مسیر خروجی
اگر بخواهید خروجی یک دستور را داخل یک فایل بریزید:
>
: نوشتن و جایگزینی کامل محتوا>>
: اضافه کردن به انتهای فایل
مثال:
echo "سلام" > log.txt
echo "خداحافظ" >> log.txt
نگاهی به ساختار فایلها در لینوکس
در لینوکس به جای “پوشه”، از واژهی دایرکتوری استفاده میشود. همه چیز از ریشهی /
شروع میشود. ساختار آن شبیه یک درخت وارونه است و شاخههای مختلفی مثل /home
، /etc
، و /var
دارد.
چرا این دستورات مهم هستند؟
این دستورات پایهایترین ابزارهایی هستند که تقریباً در هر اسکریپت و کار روزمرهی لینوکسی استفاده میشوند. اگر برنامهنویسی با شل (Shell Scripting) یا مدیریت سیستم برایتان مهم است، باید با این ابزارها بهخوبی آشنا شوید.
جمعبندی
ترمینال لینوکس در نگاه اول ممکن است پیچیده به نظر برسد، اما با یادگیری و تمرین همین دستورات ساده، میتوانید تسلط خوبی بر روی این سیستمعامل پیدا کنید. پیشنهاد من این است که این دستورات را در محیط واقعی تمرین کنید، با آنها بازی کنید، اشتباه کنید و از اشتباهات یاد بگیرید.
اگر دوست دارید ادامهی این سری مقالات را هم بنویسم، خوشحال میشوم خبر بدهید!