با alias سریع‌تر کد بزنید!

دستورات سریع لینوکسی برای برنامه‌نویس‌هامقدمهالبته که دوست دارم یه متن بلند بنویسم! اما همزمان که دارم این مطلب رو مینویسم، دارم روی یه مطلب (چند نسخه‌ای) کار میکنم در باره‌ی برنامه‌نویسی وب. مثل همیشه، از صفر تا صدش، برای اونایی که تا حالا حتی برنامه‌نویسی هم نکردن! کار عجیبیه، کلی چیز باید بخونم و انجام بدم و یاد بگیرم. بگذریم…این مطلب من، قرار نیست خیلی طولانی باشه و پیشبینی میکنم که به مرور بروز رسانی بشه. داستانش هم از این قراره که، من علاقه ندارم کدها رو چندبار بنویسم. مد نظرم اینه که یه سری «کلید» برای خودم داشته باشم و جاهای مختلف ازشون استفاده کنم.لینوکسلینوکس یه هسته‌ی سیستم‌عامله. یعنی دستورات و فرایندهایی که یه سیستم‌عامل نیاز داره رو براش فراهم میکنه و یه راه ارتباطی بین سخت‌افزار و سیستم‌عامله. ضمنا، لینوکس متن بازه، یعنی میشه هرچیزی رو توش تغییر داد و شخصی‌سازی کرد.سیستم‌عامل‌های زیادی هم وجود دارن که مبتنی بر لینوکس هستن، یعنی، از هسته‌ی لینوکس استفاده میکنن و یه جورایی «توزیعی» یا Distributionای از لینوکس هستن (بین کاربرهای لینوکسی، به Distro هم معروفن). من اینجا سعی کردم در مورد سیستم‌عامل‌های لینوکس بیشتر توضیح بدم.شِل یا Shellخیلی ساده، شِل یا «تِرمینال» یه برنامه هست که دستورات رو از کاربر میگیره و اونا رو به سیستم‌عامل و در نهایت خروجی رو نمایش میده. شِلِ لینوکس یکی از مهمترین اجزای لینوکس به حساب میاد و یکی از محیط‌های مورد علاقه‌ی برنامه‌نویس‌هاست.اینجا من تصمیم دارم که روی یه سری از اصول این نرم‌افزار کار کنم و در نهایت یه سری از دستورات به درد بخور که خودمم استفاده میکنم رو بگم. ضمنا، اگر شما هم دستوراتی رو دارید، بهم بگید که اینجا آپدیت کنم.برای باز کردن نرم‌افزار تِرمینال، میتونید توی سیستم‌عامل لینوکسی دکمه‌ی Ctrl + Alt + T رو بزنید، یا دکمه‌ی CMD + Space رو توی سیستم‌عامل مک بزنید و دنبال Terminal بگردید.دستورات پایهاین دستورات رو بدون علامت $ اجرا کنید. $ یک نشانست و به این معنیه که دستور داره با مجوز یک «کاربر» و نه یک «مدیر» اجرا میشه. نشانه‌ی یک مدیر، علامت # هست.۱. pwdاین دستور به شما آدرس جایی که توش هستید رو میگه. وقتی ترمینال باز میشه، معمولا از پوشه‌ی Home شروع به کار میکنه. ضمنا، این آدرس‌ها Absolute هستن، یعنی از پوشه‌ی ریشه یا Root شروع میشن.$ pwd /home/aien۲. lsاین دستور به شما محتویات پوشه‌ای که توش هستید رو میگه. اگر به آخرش -a هم اضافه کنید، میتونید فایل‌های مخفی رو هم ببینید.$ ls -a . Downloads .gtk-bookmarks .node-gyp .rdm .vscode .. .dropbox .gtkrc-2.0 .npm .rediscli\_history Web ...۳. cdاین دستور به شما این امکان رو میده که جای خودتون رو عوض کنید. مثلا از پوشه‌ای که توش هستید، برید به یه پوشه‌ی دیگه.$ pwd /home/aien/ $ cd /home/aien/Bilder $ pwd /home/aien/Bilder۴. mkdir و rmdirاین دستور به شما آدرس جایی که توش هستید رو میگه. وقتی ترمینال باز میشه، معمولا از پوشه‌ی Home شروع به کار میکنه. ضمنا، این آدرس‌ها Absolute هستن، یعنی از پوشه‌ی ریشه یا Root شروع میشن.$ mkdir sample $ cd sample $ pwd /home/aien/Bolder/sample $ cd .. $ pwd /home/aien/Bilder $ rmdir sample $ ls ...۵. touchاین دستور به شما امکان ساخت فایل‌ها رو میده.$ touch file.txt $ ls ... file.txt ...۶. rmاین دستور به شما امکان حذف فایل‌ها و تو بعضی شرایط، فولدرها رو میده.$ rm file.txt۷. cpاین دستور به شما امکان کپی کردن فایل‌ها رو میده. این دستور، دوتا ورودی دریافت میکنه، اولی آدرس جایی هست که فایل قرار داره و دومی آدرس جایی هست که فایل باید اونجا بره.$ touch file.txt $ pwd /home/aien/Bilder $ cp ./file.txt /home/aien/Musik $ cd /home/aien/Musik $ pwd /home/aien/Musik $ ls ... file.txt ...۸. mvاین دستور به شما امکان جابه‌جا کردن فایل‌ها رو میده و مثل دستور کپی عمل میکنه.$ pwd /home/aien/Musik $ mv file.txt /home/aien/Videos $ ls ... ... $ cd ../Videos $ pwd /home/aien/Videos $ ls ... file.txt ...۹. rmاین دستور به شما امکان حذف فایل‌ها و تو بعضی شرایط، فولدرها رو میده.$ rm file.txtدستورات حرفه‌ای‌تر۱. nanoاین دستور به شما امکان نوشتن داخل یک فایل رو میده. اگر اون فایل وجود نداشته باشه، اون رو ایجاد میکنه. بعد از اینکه داخل فایل نوشتید، کافیه Ctrl + X رو بزنید، Y رو بزنید و از برنامه خارج بشید. نوشته‌ها ذخیره شدن!$ nano file.txt۲. catاین دستور به شما امکان نمایش محتوای یک فایل رو میده.$ cat file.txt In yek file nemune ast!دستور aliasدستور alias کمک میکنه تا دستور یا دستوراتی رو با اسامی دیگه صدا بزنیم و اجرا کنیم. شاید با خودتون بگید آخه چه کاربردی داره وقتی میتونم خودم دستور رو تایپ کنم؟موضوع اینه که گاهی نیاز هست دستوراتی رو اجرا کنیم که نسبتا پیچیده هستن و فقط تو بعضی چیزهای کوچیک فرق میکنن.برای شروع، دستور زیر رو تایپ کنید:$ aliasیه لیست طولانی از دستورات رو خواهید گرفت:-='cd -' ... l='ls -lah' ... serve='http-server -o -a localhost .' which-command=whenceآخر این لیست، دستور هست که نوشته l='ls -lah'. اگر شما این دستور رو تو ترمینال بنویسید، یعنی بنویسید l، مثل این میمونه که به ترمینال گفتید دستورls -lah رو اجرا کنه.حالا برای نمونه، دستور زیر رو بزنید:$ alias p="pwd"از این به بعد اگر من دستور p رو بزنم، انگار دستور pwd رو زدم، پس آدرس جایی که هستم رو میگیرم:$ alias p="pwd" $ p /home/aienحالا فرض کنید که توی سیستمتون، نرم‌افزار Apache رو داشتید. برای دستکاری فایل اصلیش، لازم بود که مثلا nano رو با کل آدرس اون فایل وارد کنید. چی میشد اگر مینوشتید:$ alias a="nano /etc/httpd/conf/httpd.conf"اونوقت به جای هربار تیاپ کردن دستور، فقط a رو اجرا میکردید و فایل رو دستکاری…چطور دستورات alias رو دائمی کنیماگر تو یه ترمینال، یه دستور alias رو وارد کنید، بعد از بستن اون ترمینال، دستورتون هم از بین میره و دفعه‌ی بعدی دوباره باید دوباره تعریفش کنید. راهکارش اینه که از فایل .bashrc استفاده کنید. خیلی ساده، دستور زیر رو بزنید:$ nano ~/.bashrcاین دستور، فایل .bashrc که توی پوشه‌ی Home شما هست رو باز میکنه. حالا دستور زیر رو به بالای این فایل اضافه کنید:alias p="pwd" alias bashrc="nano ~/.bashrc" ...با این کار، هربار که دستور p رو بزنید، به جاش دستور pwd اجرا میشه. برای حذفش هم، کافیه دوباره اون رو از فایلتون حذف کنید (دستور زیر رو تو ترمینال بزنید تا فایلش باز بشه).$ bashrcدستورات پر کاربردیه لیست از دستورات پر کاربرد هست که توی سایت خودم گذاشتم. میتونید به اونجا سر بزنید و دستورات بروز شده رو ببینید.موفق باشید