Linux کمانڈ لائن کے ساتھ شروعات کریں
ایک عملی glossary entry جو Linux shell کی بنیادی باتوں کا احاطہ کرتی ہے: navigation، file operations، permissions، اور وہ عادتیں جو آپ کو اس میں تیز بناتی ہیں۔
کمانڈ لائن آپریٹنگ سسٹم سے براہ راست بات کرنے کے لیے ایک text interface ہے۔ icons پر کلک کرنے کی بجائے، آپ ایک shell کو instructions دیتے ہیں، اور shell انہیں چلاتا ہے۔ زیادہ تر Linux distributions پر وہ shell bash ہے، اگرچہ zsh عام ہو گیا ہے، خاص طور پر اس لیے کہ یہ macOS پر default ہے اور Linux setups میں تیزی سے مقبول ہو رہا ہے۔ کمانڈ لائن سیکھنا سیکڑوں commands یاد کرنے کے بارے میں نہیں ہے۔ یہ tools کے ایک چھوٹے سے سیٹ کو اندرونی کرنے اور انہیں اچھی طرح combine کرنے کے بارے میں ہے۔
shell دراصل کیا کرتا ہے
جب آپ ایک terminal کھولتے ہیں، تو آپ ایک terminal emulator چلا رہے ہوتے ہیں، اور اس کے اندر ایک shell process input کے لیے انتظار میں ہوتا ہے۔ آپ ایک command type کرتے ہیں، enter دباتے ہیں، اور shell اسے parse کرتا ہے، جس program کا نام آپ نے دیا ہے اسے تلاش کرتا ہے، اور اسے جو arguments آپ نے دیے ہیں ان کے ساتھ چلاتا ہے۔ Output text کے طور پر واپس آتا ہے۔ یہ پورا loop ہے۔ terminal (window) اور shell (آپ کے text کی تشریح کرنے والا program) کے درمیان اس الگ تھلگ ہونے کو سمجھنا بہت سی early confusion کو صاف کر دیتا ہے۔
چاروں طرف گھومنا اور چیزوں کو دیکھنا
چار commands بیشتر early navigation کا احاطہ کرتے ہیں:
pwd # print working directory
ls -la # list files, including hidden ones, with details
cd projects # change into a directory
cd .. # go up one level
ls -la کو شروع میں پوری طرح type کرنا قابلِ غور ہے بجائے aliases پر انحصار کے، تاکہ آپ output میں permissions، ownership، اور file sizes دیکھنے کے عادی ہو جائیں۔ permission string میں آگے والا d یا - آپ کو بتاتا ہے کہ کوئی چیز ایک directory ہے یا ایک regular file، جو بہت سے beginners کو شروع میں pareshان کرتا ہے۔
فائلوں کو پڑھنا اور manipulate کرنا
cat somefile.txt ایک پوری فائل کو screen پر dump کرتا ہے۔ کسی بھی لمبی چیز کے لیے، less somefile.txt آپ کو scroll اور search کرنے دیتا ہے /pattern کے ساتھ۔ head -n 20 file.log اور tail -n 20 file.log پہلی یا آخری lines دکھاتے ہیں، اور tail -f file.log فائل کو follow کرتا ہے جیسے جیسے نئی lines append ہوتی ہیں، یہی وہ طریقہ ہے جس سے آپ debugging کے دوران real time میں ایک log دیکھتے ہیں۔
Copying، moving، اور deleting cp، mv، اور rm استعمال کرتے ہیں:
cp report.txt report.bak
mv report.bak archive/
rm archive/report.bak
rm چیزوں کو trash bin میں نہیں لے جاتا۔ یہ انہیں delete کرتا ہے۔ -i شامل کرنے سے یہ confirmation مانگتا ہے، جو ایک معقول عادت ہے جب تک آپ ابھی muscle memory بنا رہے ہوں۔
Permissions، بغیر mystery کے
ls -l چلانا ایک فائل پر کچھ اس طرح دکھاتا ہے -rwxr-xr--۔ اسے تین groups میں تقسیم کریں: owner، group، others۔ ہر group کے پاس read، write، execute ہے۔ chmod 755 script.sh owner کو read/write/execute (7) سیٹ کرتا ہے، اور group/others کو read/execute (5)۔ chmod +x script.sh ایک shortcut ہے ایک فائل کو executable بنانے کے لیے بغیر پوری number کو دوبارہ calculate کیے۔ chown بدلتا ہے کہ فائل کا مالک کون ہے، اور عام طور پر sudo کی ضرورت ہوتی ہے جب تک یہ پہلے سے آپ کی اپنی فائل نہیں ہے۔
Piping اور redirection
یہاں command line ایک file browser ہونا بند کرتا ہے اور ایک حقیقی tool بننا شروع کرتا ہے۔ pipe | ایک command کا output دوسرے میں بھیجتا ہے:
ps aux | grep nginx
ls -la | wc -l
cat access.log | grep 404 | sort | uniq -c | sort -rn
وہ آخری والا گنتا ہے کہ ایک log میں ہر 404-generating line کتنی بار ظاہر ہوتی ہے اور frequency کے لحاظ سے sort کرتا ہے، مکمل طور پر چھوٹے commands کو chain کر کے بنایا گیا۔ Redirection > اور >> کے ساتھ output ایک فائل میں بھیجتا ہے screen کی بجائے: > overwrite کرتا ہے، >> append کرتا ہے۔ 2> specifically error output کو redirect کرتا ہے، جو اہم ہو جاتا ہے جب آپ scripts لکھنا شروع کرتے ہیں جو normal output کو errors سے الگ کرنے کی ضرورت رکھتے ہیں۔
چیزیں تلاش کرنا
find name، type، یا modification time کے لحاظ سے تلاش کرتا ہے:
find /var/log -nameAI کی مدد سے لکھا گیا، Michal Pilch (CISSP)، Korra Studio کے ذریعے جائزہ لیا گیا اور شائع کیا گیا۔
یہ Korra Studio کے علم کے ذخیرے کا ایک نوٹ ہے — یہ پلیٹ فارم ہر موضوع کو ایک سے ایک رہنمائی کے ساتھ جوڑتا ہے۔
مفت شروع کریںarrow_forward