Mempunyai asas pengaturcaraan yang kukuh jelas merupakan kualiti penting untuk jurutera perisian yang baik. Adalah sangat penting untuk menguasai sekurang-kurangnya satu bahasa pengaturcaraan, sama ada bahasa yang ditafsirkan seperti Python, atau bahasa yang disusun seperti C++. Walau bagaimanapun, ini hanyalah satu aspek untuk menjadi seorang jurutera yang benar-benar menyeluruh. Asas tersebut tidak berguna jika anda tersesat dalam persekitaran shell.
Aplikasi fleksibel arahan Bash membolehkan anda memasuki kawasan yang bahasa pengaturcaraan tradisional tidak dapat meliputi. Kadangkala, anda sebenarnya tidak perlu menggunakan bahasa pengaturcaraan yang lebih berkuasa. Menggunakan Shell, anda boleh menyelesaikan tugas yang anda perlukan dengan lebih cepat dan lebih mudah, tanpa memerlukan kebergantungan tambahan.
Dalam artikel ini, kami akan meneroka beberapa arahan Bash yang sangat berguna. Arahan ini boleh membantu anda mengelak daripada menulis lebih banyak kod daripada yang anda perlukan. Lain kali anda menghadapi masalah, cuba arahan ini.
linuxmi@linuxmi:~/www.linuxmi.com$ while true; do echo "hello $(date)"; sleep 1; done
Anda tidak perlu menggunakan bahasa pengaturcaraan yang besar hanya untuk menggelungkan sesuatu. Mendapatkan output pada selang masa yang tetap atau mengulangi data asas adalah mudah dilakukan dalam Bash.
Barisan kod ini menunjukkan cara membina gelung sementara tak terhingga yang mudah dalam Shell. Anda hanya sambungkan semuanya dengan koma bertitik dan anda sudah selesai. Anda bebas untuk menukar arahan yang dilaksanakan dan melaraskan pemasa tidur dengan sewajarnya.
Apabila anda menjalankan arahan ini, anda sepatutnya melihat tarikh berubah setiap saat pada terminal anda.
linuxmi@linuxmi:~/www.linuxmi.com$ echo "hello linux迷 www.linuxmi.com" | tee linuxmi.rs | less
arahan tee boleh melakukan fungsi yang memerlukan berbilang baris kod untuk dicapai dalam bahasa lain. Menggunakan alat kecil yang berguna ini, anda boleh menghantar input tertentu ke fail atau arahan lain, yang kemudiannya boleh dihantar ke arahan lain. Ia sebenarnya seperti memasang injap "T" dalam paip air anda. Anda boleh mengarahkan sebahagian daripada output keluar dan ia akan terus mengalir ke bawah paip.
Contoh di atas menghantar teks "hello linux fans www.linuxmi.com" yang diperoleh daripada arahan echo ke fail linuxmi.rs dan kemudian menghantarnya ke less. Satu cara untuk menulis semula adalah: anda akan mendapat fail dengan kandungan output, dan anda boleh melihatnya pada skrin menggunakan arahan kurang.
linuxmi@linuxmi:~/www.linuxmi.com$ tar -czvf linuxmi.tar.gz linuxmi.sh
Mengalih fail dan direktori pada baris arahan ialah kemahiran penting. Jika anda sedang mengerjakan sesuatu dan perlu mengalihkannya antara hos, atau hanya mahu memampatkan fail untuk storan luar talian, arahan tar ialah rakan anda.
Menggunakan arahan dan pilihan di atas, anda boleh memampatkan direktori ke dalam pakej termampat tar.gz baharu. Kini anda boleh membawa fail anda dengan cepat.
linuxmi@linuxmi:~/www.linuxmi.com$ echo -e "linuxmi\n linuxmi.com\n www.linuxmi.com\n www.93139.com" > linuxmi.txt | wc -l
Ingin tahu berapa banyak baris yang terdapat dalam fail? Sangat mudah. Gunakan utiliti wc. "Kiraan perkataan" ialah maksud sebenarnya, tetapi ia juga boleh digunakan untuk mengira banyak perkara lain, seperti bilangan baris.
Coretan di atas mengeluarkan empat baris teks ke fail dan kemudian menggunakan wc untuk mengira bilangan baris. Alat ini berguna jika anda perlu memanipulasi bilangan baris tertentu atau mengesahkan sama ada proses telah menulis baris baharu pada fail.
linuxmi@linuxmi:~/www.linuxmi.com$ seq 95 100
Sangat mudah tetapi sangat membantu. Menjana nombor dalam Bash adalah sangat mudah, hanya gunakan utiliti seq. Perintah kecil yang kemas ini mengeluarkan urutan nombor yang boleh anda gunakan dalam gelung, fail teks atau di mana-mana sahaja anda memerlukan senarai nombor.
Anda juga boleh menukar pembatas jika anda mahu:
seq -s " " 1 10
atau
echo {0..10}
Ini akan memisahkan semua nombor dengan ruang dan bukannya baris baharu lalai. Anda juga boleh menggunakan arahan gema dan operator .. untuk mendapatkan jenis hasil yang sama.
linuxmi@linuxmi:~/www.linuxmi.com$ eval $(ssh-agent) && ssh-add && ssh-add -l
Pemahaman asas tentang kunci SSH dan cara mengurusnya adalah sangat penting. Anda mungkin mendapati bahawa memahami utiliti ssh-add dan ssh-agent boleh menjadi lebih bermanfaat daripada yang anda fikirkan.
Arahan di atas melakukan beberapa operasi penting:
这个简单的一行命令确保你的代理工作正常,并包含了正确的密钥。当你需要连接到某个服务或获取一些代码时,下一步就可以直接开始了。
linuxmi@linuxmi:~/www.linuxmi.com$ history | grep "top"
或者按下CTRL + R,然后输入top
还记得很久以前运行的那个命令吗?我也不记得了。在历史记录中搜索它吧。
如果你像我一样记忆力不太好,那么history命令非常有用。它会显示当前终端会话中所有已运行的命令列表。反向交互式搜索或grep工具的真正威力在于能够找到之前执行的命令。
如果你只是想查看命令历史记录而不是执行它,你可以使用grep搜索。要统一搜索和执行操作,你可以使用CTRL + R的反向交互式搜索历史记录组合键。一旦按下快捷键,一个交互提示符就会出现,当你开始输入命令时,控制台会显示相应的匹配命令。
linuxmi@linuxmi:~/www.linuxmi.com$ history | grep "top"
有时Bash会变得有点奇怪。变量插值可能出错,嵌套引号可能会混乱且难以跟踪。情况将变得更加复杂,尤其是当你需要在不同的二进制文件或服务中传递命令字符串时。在这种情况下,你可以使用bash命令将一组命令作为单个实体进行评估。
这个指令将接收纯文本字符串,然后按照常规的Bash语法来进行解析。对于外部shell来说,你只是运行一个命令并传递一个参数,但实际上你是在指示Bash解析多个命令的字符串并执行它们。
Atas ialah kandungan terperinci Lapan arahan Shell untuk menjadikan anda master baris arahan Linux dalam masa yang singkat. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!