[bookmarked] د پیل کونکو لپاره باش: 21 ګټور حکمونه

مواد، هغه ژباړه چې موږ یې نن خپروو، د هغو کسانو لپاره دي چې غواړي د لینکس کمانډ لاین ماسټر کړي. د دې وسیلې په مؤثره توګه کارولو وړتیا کولی شي ډیر وخت خوندي کړي. په ځانګړې توګه، موږ به دلته د باش شیل او 21 ګټور کمانډونو په اړه وغږیږو. موږ به د اوږدې لارښوونو ټایپ کولو ګړندي کولو لپاره د کمانډ بیرغونو او بش عرفونو کارولو څرنګوالي په اړه هم وغږیږو.

[bookmarked] د پیل کونکو لپاره باش: 21 ګټور حکمونه

زموږ په بلاګ کې د باش سکریپټونو په اړه د خپرونو لړۍ هم ولولئ

شرایط

لکه څنګه چې تاسو د لینکس کمانډ لاین سره کار کول زده کوئ ، تاسو به د ډیری مفکورو سره مخ شئ چې د نیویګ کولو لپاره ګټور دي. ځینې ​​​​یې، لکه "لینکس" او "یونیکس"، یا "شیل" او "ټرمینل"، ځینې وختونه ګډوډ وي. راځئ چې د دې او نورو مهمو شرایطو په اړه وغږیږو.

یونس یو مشهور عملیاتي سیسټم دی چې په 1970s کې د بیل لابراتوار لخوا رامینځته شوی. د هغې کوډ تړل شوی و.

لینوکس د یونیکس په څیر ترټولو مشهور عملیاتي سیسټم دی. دا اوس په ډیری وسایلو کې کارول کیږي، په شمول د کمپیوټرونو.

ترمينل (ټرمینل)، یا ټرمینل ایمولیټر یو برنامه ده چې عملیاتي سیسټم ته لاسرسی ورکوي. تاسو کولی شئ په ورته وخت کې ډیری ټرمینل کړکۍ خلاصې کړئ.

شیل (شیل) یو برنامه ده چې تاسو ته اجازه درکوي عملیاتي سیسټم ته په ځانګړې ژبه لیکل شوي کمانډونه واستوي.

باش د بورن بیا شیل لپاره ولاړ دی. دا ترټولو عام شیل ژبه ده چې د عملیاتي سیسټم سره د تعامل لپاره کارول کیږي. همچنان ، د باش شیل په macOS کې ډیفالټ دی.

د کمانډ لاین انٹرفیس (د کمانډ لاین انټرفیس، CLI) د یو شخص او کمپیوټر ترمنځ د متقابل عمل یوه طریقه ده چې په کارولو سره کاروونکي د کیبورډ څخه کمانډ ته ننوځي، او کمپیوټر، د دې کمانډونو په پلي کولو سره، د کارونکي لپاره د متن په بڼه پیغامونه ښکاره کوي. د CLI اصلي کارول د ځانګړو ادارو په اړه تازه معلومات ترلاسه کول دي، لکه فایلونه، او د فایلونو سره کار کول. د کمانډ لاین انٹرفیس باید د ګرافیکي کاروونکي انٹرفیس (GUI) څخه توپیر شي، کوم چې په ابتدايي توګه موږک کاروي. د کمانډ لاین انٹرفیس اکثرا په ساده ډول د کمانډ لاین په توګه ویل کیږي.

سکریپټ (script) یو کوچنی برنامه ده چې د شیل کمانډونو ترتیب لري. سکریپټونه فایلونو ته لیکل شوي، دوی په مکرر ډول کارول کیدی شي. کله چې سکریپټونه ولیکئ، تاسو کولی شئ متغیرات، شرطونه، لوپس، افعال، او نور ځانګړتیاوې وکاروئ.

اوس چې موږ مهم شرایط پوښلي، زه غواړم دا په ګوته کړم چې زه به دلته د "بش"، "شیل" او "کمانډ لاین" اصطلاحات د یو بل په بدل کې وکاروم، په بیله بیا د "ډائریکټري" او "فولډر" اصطلاحات.

معياري جریانونه، کوم چې موږ به دلته وکاروو هغه معیاري آخذه ده (معیاري داخل، stdinمعياري محصول (معياري محصول، stdout) او د معیاري تېروتنې محصول (معیاري تېروتنه، stderr).

که په مثال کې کمانډونه چې لاندې به ورکړل شي، تاسو به یو څه ومومئ my_whatever - دا پدې مانا ده چې دا ټوټه باید ستاسو د یو څه سره بدله شي. د مثال په توګه، د فایل نوم.

اوس، مخکې له دې چې د حکمونو تحلیل ته دوام ورکړو چې دا مواد ورته وقف شوي، راځئ چې د دوی لیست او د دوی لنډ توضیحات وګورو.

21 د بش حکمونه

▍معلومات ترلاسه کول

  • man: د کمانډ لپاره د کارونکي لارښود (مرسته) ښکاره کوي.
  • pwd: د کاري لارښود په اړه معلومات ښکاره کوي.
  • ls: د لارښود منځپانګې ښیي.
  • ps: تاسو ته اجازه درکوي د چلولو پروسو په اړه معلومات وګورئ.

▍د فایل سیسټم لاسوهنه

  • cd: کاري لارښود بدل کړئ
  • touch: یو فایل جوړ کړئ
  • mkdir: لارښود جوړ کړئ
  • cp: یوه فایل کاپي کړئ.
  • mv: یو فایل حرکت یا حذف کړئ.
  • ln: یو لینک جوړ کړئ

▍I/O ری ډایریکشن او پایپ لاینونه

  • <: راستول stdin.
  • >: راستول stdout.
  • |: د یوې کمانډ محصول د بلې کمانډ ان پټ ته پایپ کړی.

▍د فایلونو لوستل

  • head: د دوتنې پیل ولولئ.
  • tail: د دوتنې پای ولولئ.
  • cat: یو فایل ولولئ او د هغې مینځپانګې سکرین ته چاپ کړئ ، یا فایلونه یوځای کړئ.

▍د فایلونو ړنګول، د پروسې بندول

  • rm: دوتنې ړنګول
  • kill: پروسه بنده کړئ.

▍لټون

  • grep: د معلوماتو لټون.
  • ag: د لټون لپاره پرمختللی کمانډ.

▍ آرشیف کول

  • tar: آرشیف جوړول او ورسره کار کول.

راځئ چې د دې حکمونو په اړه په ډیر تفصیل سره خبرې وکړو.

د ټیم توضیحات

د پیل کولو لپاره، راځئ چې د امرونو سره معامله وکړو، چې پایلې یې په فورمه کې خپریږي stdout. معمولا دا پایلې په ترمینل کړکۍ کې څرګندیږي.

▍معلومات ترلاسه کول

man command_name: د کمانډ لارښود ښکاره کړئ، د بیلګې په توګه د مرستې معلومات.

pwd: اوسني کاري لارښود ته لاره ښکاره کړئ. د کمانډ لاین سره د کار کولو په جریان کې، کاروونکي اکثرا اړتیا لري چې دقیقا معلومه کړي چې هغه په ​​سیسټم کې چیرته دی.

ls: د لارښود منځپانګې ښکاره کړئ. دا کمانډ هم ډیری وختونه کارول کیږي.

ls -a: پټ شوي فایلونه ښکاره کړئ. بیرغ دلته پلي کیږي -a امرونه ls. د بیرغونو کارول د امرونو چلند تنظیم کولو کې مرسته کوي.

ls -l: د فایلونو په اړه مفصل معلومات ښکاره کړئ.

په یاد ولرئ چې بیرغونه یوځای کیدی شي. د مثال په توګه - دا ډول: ls -al.

ps: د چلولو پروسې وګورئ.

ps -e: د ټولو روان بهیرونو په اړه معلومات ښکاره کړئ، نه یوازې هغه چې د اوسني کاروونکي شیل سره تړاو لري. دا کمانډ اکثرا په دې فورمه کې کارول کیږي.

▍د فایل سیسټم لاسوهنه

cd my_directory: کاري لارښود ته بدل کړئ my_directory. د لارښود ونې کې د یوې کچې پورته کولو لپاره ، وکاروئ my_directory نسبي لاره ../.

[bookmarked] د پیل کونکو لپاره باش: 21 ګټور حکمونه
cd کمانډ

touch my_file: د دوتنې جوړول my_file د ورکړل شوې لارې په اوږدو کې.

mkdir my_directory: یو فولډر جوړ کړئ my_directory د ورکړل شوې لارې په اوږدو کې.

mv my_file target_directory: فایل حرکت کول my_file فولډر ته target_directory. کله چې د هدف لارښود مشخص کول ، تاسو اړتیا لرئ دې ته مطلق لاره وکاروئ (او د جوړښت په څیر نه ../).

ټیم mvد فایلونو یا فولډرو نوم بدلولو لپاره هم کارول کیدی شي. د مثال په توګه، دا کیدای شي داسې ښکاري:

mv my_old_file_name.jpg my_new_file_name.jpg
cp my_source_file target_directory
: د دوتنې یوه کاپي جوړه کړئ my_source_file او په فولډر کې یې واچوئ target_directory.

ln -s my_source_file my_target_file: یو سمبولیک لینک جوړ کړئ my_target_file فی فایل my_source_file. که تاسو لینک بدل کړئ، اصلي فایل به هم بدل شي.

که فایل my_source_file بیا به حذف شي my_target_file پاتې به شي. بیرغ -s امرونه ln تاسو ته اجازه درکوي د لارښودونو لپاره لینکونه جوړ کړئ.

اوس راځئ چې د I/O ری ډایریکشن او پایپ لاینونو په اړه وغږیږو.

▍I/O ری ډایریکشن او پایپ لاینونه

my_command < my_file: د معیاري ان پټ فایل توضیح کونکي ځای په ځای کوي (stdin) په هر فایل کې my_file. دا ګټور کیدی شي که کمانډ د کیبورډ څخه ځینې ان پټ ته انتظار وي، او دا ډاټا دمخه په فایل کې خوندي شوي.

my_command > my_file: د کمانډ پایلې بیرته راګرځوي، د بیلګې په توګه هغه څه چې په عموم ډول ځي stdout او پرده ته راووت، فایل ته my_file. که فایل my_file شتون نلري - دا جوړ شوی. که فایل شتون ولري، نو بیا لیکل کیږي.

د مثال په توګه، د کمانډ اجرا کولو وروسته ls > my_folder_contents.txt د متن فایل به رامینځته شي چې په اوسني کاري لارښود کې د هغه څه لیست لري.

که د سمبول پر ځای > د ساختمان څخه کار واخلئ >>بیا، په دې شرط چې هغه فایل چې د کمانډ محصول بیرته لیږل شوی وي شتون لري، دا فایل به بیا نه لیکل کیږي. ډاټا به د دې فایل په پای کې اضافه شي.

اوس راځئ چې د ډیټا پایپ لاین پروسس کولو ته یوه کتنه وکړو.

[bookmarked] د پیل کونکو لپاره باش: 21 ګټور حکمونه
د یوې کمانډ محصول د بلې کمانډ ان پټ ته تغذیه کیږي. دا داسې دی لکه یو پایپ له بل سره وصل کړئ

first_command | second_command: د لېږدونکي سمبول |، د یوې کمانډ محصول بلې کمانډ ته لیږلو لپاره کارول کیږي. هغه څه چې د بیان شوي جوړښت ښي خوا ته کمانډ لیږل کیږي stdout، په غورځول stdin د پایپ لاین سمبول ښیې ته کمانډ.

په لینکس کې، ډاټا یوازې د هر ښه جوړ شوي کمانډ په کارولو سره پایپ لاین کیدی شي. ډیری وختونه ویل کیږي چې په لینکس کې هرڅه یو پایپ لاین دی.

د پایپ لاین سمبول د ډیری کمانډونو سلسلې لپاره کارول کیدی شي. دا داسې ښکاري:

first_command | second_command | third_command

[bookmarked] د پیل کونکو لپاره باش: 21 ګټور حکمونه
د څو کمانډونو پایپ لاین د پایپ لاین سره پرتله کیدی شي

په یاد ولرئ کله چې د سمبول کیڼ اړخ ته قومانده |، یو څه تولیدوي stdout، هغه څه چې هغه یې تولیدوي سمدلاسه د دې په توګه شتون لري stdin دوهم ټیم دا دی، دا معلومه شوه چې د پایپ لاین په کارولو سره، موږ د امرونو موازي اجرا کولو سره معامله کوو. ځینې ​​​​وختونه دا کولی شي غیر متوقع پایلې رامینځته کړي. په دې اړه جزیات لوستلی شئ دلته.

اوس راځئ چې د فایلونو څخه د معلوماتو لوستلو او په سکرین کې د ښودلو په اړه وغږیږو.

▍د فایلونو لوستل

head my_file: د فایل له پیل څخه کرښې لولي او سکرین ته یې چاپوي. تاسو کولی شئ نه یوازې د فایلونو مینځپانګې ولولئ ، بلکه هغه څه چې د کمانډ محصول په کې راځي stdinد پایپ لاین برخې په توګه د دې کمانډ کارول.

tail my_file: د دوتنې له پای څخه کرښې لولي. دا کمانډ په پایپ لاین کې هم کارول کیدی شي.

[bookmarked] د پیل کونکو لپاره باش: 21 ګټور حکمونه
سر (سر) په مخ کې دی، او لکۍ (لمس) شاته ده

که تاسو د پانډاس کتابتون په کارولو سره د ډیټا سره کار کوئ ، نو امرونه head и tail باید تاسو سره آشنا وي. که دا مسله نه وي، پورته ارقام وګورئ، او تاسو به یې په اسانۍ سره په یاد ولرئ.

د فایلونو لوستلو لپاره نورې لارې په پام کې ونیسئ، راځئ چې د قوماندې په اړه وغږیږو cat.

ټیم cat یا د فایل مینځپانګې سکرین ته چاپ کوي ، یا ډیری فایلونه سره یوځای کوي. دا پدې پورې اړه لري چې څومره فایلونه دې کمانډ ته لیږدول کیږي کله چې ویل کیږي.

[bookmarked] د پیل کونکو لپاره باش: 21 ګټور حکمونه
د پیشو قومانده

cat my_one_file.txt: کله چې یو واحد فایل دې کمانډ ته لیږدول کیږي، دا یې تولیدوي stdout.

که تاسو ورته دوه فایلونه یا ډیر فایلونه ورکړئ، نو دا په بل ډول چلند کوي.

cat my_file1.txt my_file2.txt: د ان پټ په توګه د څو فایلونو ترلاسه کولو سره، دا کمانډ د دوی مینځپانګې سره یوځای کوي او ښیې چې څه پیښ شوي stdout.

که د فایل کنټینیشن پایله د نوي فایل په توګه خوندي کولو ته اړتیا ولري ، تاسو کولی شئ آپریټر وکاروئ >:

cat my_file1.txt my_file2.txt > my_new_file.txt

اوس راځئ چې د فایلونو حذف کولو او پروسې بندولو څرنګوالي په اړه وغږیږو.

▍د فایلونو ړنګول، د پروسې بندول

rm my_file: دوتنې ړنګول my_file.

rm -r my_folder: فولډر ړنګوي my_folder او ټول هغه فایلونه او فولډرې چې پکې شامل دي. بیرغ -r په ګوته کوي چې کمانډ به په تکراري حالت کې پرمخ ځي.

د دې لپاره چې سیسټم د تایید لپاره غوښتنه وکړي هرکله چې فایل یا فولډر حذف شي ، بیرغ وکاروئ -f.

kill 012345: د ټاکل شوي چلولو پروسه ودروي، دا په زړه پورې تړلو ته وخت ورکوي.

kill -9 012345: په جبري توګه ټاکل شوې روانه پروسه لغوه کوي. بیرغ وګورئ -s SIGKILL د بیرغ په څیر معنی لري -9.

▍لټون

تاسو کولی شئ د معلوماتو لټون کولو لپاره مختلف کمانډونه وکاروئ. په تېره بیا - grep, ag и ack. راځئ چې د دې حکمونو سره زموږ پیژندنه پیل کړو grep. دا د وخت ازمول شوي ، د باور وړ کمانډ دی ، کوم چې په هرصورت ، د نورو په پرتله ورو دی او د کارولو لپاره دومره اسانه ندي لکه څنګه چې دوی دي.

[bookmarked] د پیل کونکو لپاره باش: 21 ګټور حکمونه
grep کمانډ

grep my_regex my_file: لټون my_regex в my_file. که یو میچ وموندل شي، ټول تار بیرته راستانه کیږي، د هرې لوبې لپاره. ډیفالټ my_regex د منظم بیان په توګه درملنه کیږي.

grep -i my_regex my_file: لټون په غیر حساس ډول ترسره کیږي.

grep -v my_regex my_file: ټول هغه قطارونه راګرځوي چې پکې نه وي my_regex. بیرغ -v د معکوس معنی، دا د آپریټر سره ورته والی لري NOT، په ډیری پروګرامینګ ژبو کې موندل کیږي.

grep -c my_regex my_file: په فایل کې موندل شوي د لټون شوي نمونې لپاره د میچونو شمیر په اړه معلومات بیرته راګرځي.

grep -R my_regex my_folder: په ټاکل شوي فولډر کې موقعیت لرونکي ټولو فایلونو کې تکراري لټون ترسره کوي او په هغه فولډرونو کې چې په دې کې ځای لري.

اوس راځئ چې د ټیم په اړه خبرې وکړو ag. هغه وروسته راغله grep، دا ګړندی دی ، د دې سره کار کول خورا اسانه دي.

[bookmarked] د پیل کونکو لپاره باش: 21 ګټور حکمونه
ag قومانده

ag my_regex my_file: د لاین شمیرو په اړه معلومات بیرته راګرځوي، او پخپله لاینونه، په کوم کې چې میچونه موندل شوي my_regex.

ag -i my_regex my_file: لټون په غیر حساس ډول ترسره کیږي.

ټیم ag په اتوماتيک ډول فایل پروسس کړئ .gitignore او هغه څه چې په دې فایل کې لیست شوي فولډرو یا فایلونو کې موندل کیږي له محصول څخه خارجوي. دا ډیر آرام دی.

ag my_regex my_file -- skip-vcs-ignores: د اتوماتیک نسخه کنټرول فایلونو مینځپانګې (لکه .gitignore) په لټون کې په پام کې نه نیول کیږي.

برسېره پردې، د دې لپاره چې ټیم ته ووایاست ag په کوم فایل لارو کې چې تاسو غواړئ له لټون څخه لرې کړئ، تاسو کولی شئ فایل جوړ کړئ .agignore.

د دې برخې په پیل کې، موږ د قوماندې یادونه وکړه ack. ټیمونه ack и ag ډیر ورته، موږ کولی شو ووایو چې دوی 99٪ د تبادلې وړ دي. په هرصورت، ټیم ag ګړندی کار کوي ، له همدې امله ما دا تشریح کړ.

اوس راځئ چې د آرشیف سره د کار کولو په اړه وغږیږو.

▍ آرشیف کول

tar my_source_directory: د فولډر څخه فایلونه یوځای کوي my_source_directory په یو واحد ټربال فایل کې. دا ډول فایلونه یو چا ته د فایلونو لوی سیټونو لیږدولو لپاره ګټور دي.

[bookmarked] د پیل کونکو لپاره باش: 21 ګټور حکمونه
tar قومانده

د دې کمانډ لخوا رامینځته شوي ټربال فایلونه د توسیع سره فایلونه دي .tar (ټیپ آرشیف). دا حقیقت چې د "ټیپ" کلمه (ټیپ) د کمانډ په نوم پټه ده او د فایلونو د نومونو په توسیع کې دا رامینځته کوي دا په ګوته کوي چې دا کمانډ څومره وخت شتون درلود.

tar -cf my_file.tar my_source_directory: په نوم د ټاربال فایل جوړوي my_file.tar د فولډر مینځپانګو سره my_source_directory. بیرغ -c د "تخلیق" (تخلیق) او بیرغ لپاره ولاړ دی -f لکه "دوتنه" (دوتنه).

د فایلونو استخراج لپاره .tar- فایل، کمانډ وکاروئ tar د بیرغونو سره -x ("استخراج"، استخراج) او -f ("دوتنه"، دوتنه).

tar -xf my_file.tar: څخه فایلونه استخراجوي my_file.tar اوسني کاري لارښود ته.

اوس راځئ چې د کمپرس او ډیکمپریس څرنګوالي په اړه وغږیږو .tar- فایلونه

tar -cfz my_file.tar.gz my_source_directory: دلته د بیرغ په کارولو سره -z ("zip"، کمپریشن الګوریتم) په ګوته کوي چې الګوریتم باید د فایلونو د کمپرس کولو لپاره وکارول شي gzip (GNUzip). د فایل کمپریشن د ډیسک ځای خوندي کوي کله چې دا ډول فایلونه ذخیره کوي. که چیرې فایلونه پلان شوي وي، د بیلګې په توګه، نورو کاروونکو ته لیږدول کیږي، دا د داسې فایلونو چټک ډاونلوډ کې مرسته کوي.

فایل خلاص کړئ .tar.gz تاسو کولی شئ بیرغ اضافه کړئ -z د استخراج منځپانګې کمانډ ته .tar- فایلونه، کوم چې موږ پورته بحث وکړ. دا داسې ښکاري:

tar -xfz my_file.tar.gz
دا باید په پام کې ونیول شي چې ټیم tar ډیری نور ګټور بیرغونه شتون لري.

د بش نومونه

د بش عرفونه (د عرف یا لنډیز په نوم هم ویل کیږي) د کمانډونو لنډ نومونو یا د دوی ترتیبونو رامینځته کولو لپاره ډیزاین شوي ، چې د منظم کمانډونو پرځای کارول کار ګړندی کوي. که تاسو یو عرف لرئ bu، کوم چې امر پټوي python setup.py sdist bdist_wheel، بیا دې کمانډ ته زنګ وهلو لپاره ، د دې عرف کارول بس دي.

د داسې عرف رامینځته کولو لپاره ، یوازې فایل ته لاندې کمانډ اضافه کړئ ~/.bash_profile:

alias bu="python setup.py sdist bdist_wheel"

که ستاسو سیسټم فایل نلري ~/.bash_profile، بیا تاسو کولی شئ دا پخپله د کمانډ په کارولو سره رامینځته کړئ touch. د عرف رامینځته کولو وروسته ، ټرمینل بیا پیل کړئ ، له هغې وروسته تاسو کولی شئ دا عرف وکاروئ. په دې حالت کې، د دوو حروفونو داخلول د کمانډ له دریو درجن څخه زیاتو حروفونو ان پټ بدلوي، کوم چې د دې لپاره دی مجلسونه د Python کڅوړې.

В ~/.bash_profile تاسو کولی شئ د هر ډول کارول شوي حکمونو لپاره عرفونه اضافه کړئ.

▍ پايلې

پدې پوسټ کې ، موږ د باش 21 مشهور کمانډونه پوښلي او د قوماندې عرفونو رامینځته کولو په اړه مو خبرې کړې دي. که تاسو د دې موضوع سره علاقه لرئ - وګوره د خپرونو لړۍ باش ته وقف شوې. دا تاسو کولی شئ د دې خپرونو pdf نسخه ومومئ. همچنان ، که تاسو غواړئ باش زده کړئ ، په یاد ولرئ چې د کوم بل برنامې سیسټم په څیر ، تمرین کلیدي دی.

ګرانو لوستونکو! کوم حکمونه چې د پیل کونکو لپاره ګټور دي تاسو به هغه ته اضافه کړئ چې پدې مقاله کې بحث شوي؟

زموږ په بلاګ کې د باش سکریپټونو په اړه د خپرونو لړۍ هم ولولئ

[bookmarked] د پیل کونکو لپاره باش: 21 ګټور حکمونه

سرچینه: www.habr.com

Add a comment