โดยใช้ ' ซีดี ' สั่งการ
คำสั่ง 'cd' ใช้ในทั้ง Bash และ Zsh shell เพื่อเปลี่ยนไดเร็กทอรีปัจจุบัน คุณลักษณะที่ไดเรกทอรีถูกค้นหาซ้ำ ๆ เพื่อค้นหาไฟล์และโฟลเดอร์เรียกว่า การขยายเส้นทางแบบเรียกซ้ำ ซึ่งรองรับโดย zsh เท่านั้น การใช้คำสั่ง 'cd' ใน bash และ zsh shell จะแสดงที่นี่
ทุบตี
คุณต้องพิมพ์เส้นทางแบบเต็มของไดเรกทอรีใน bash เพื่อเปลี่ยนไดเรกทอรีและ bash ไม่รองรับการขยายเส้นทางแบบเรียกซ้ำ
$ซีดี รหัส/python
Zsh
สามารถค้นหาไดเร็กทอรีและไฟล์ได้อย่างง่ายดายในเชลล์นี้ หากคุณพิมพ์ cd + space + c + tab ใน zsh shell จากนั้นจะค้นหาชื่อไฟล์หรือโฟลเดอร์ที่ขึ้นต้นด้วย 'ค ’ และจะแสดงชื่อไฟล์หรือโฟลเดอร์ที่พบก่อน
% ซีดีค
ตัวอย่างเช่น if รหัส พบโฟลเดอร์และจะแสดง หากคุณพิมพ์อีกครั้ง '/NS' จากนั้นจะแสดงไฟล์และชื่อโฟลเดอร์ที่ขึ้นต้นด้วย ' NS '.
% ซีดีNSแก้ไขตัวสะกด
ตัวตรวจสอบการสะกดเป็นคุณลักษณะที่มีประโยชน์มากสำหรับเชลล์ใดๆ ผู้ใช้สามารถแก้ไขข้อผิดพลาดในการพิมพ์ได้อย่างง่ายดายด้วยคุณสมบัตินี้ คุณลักษณะนี้ได้รับการสนับสนุนโดยทั้ง ทุบตี และ ซซ. แต่การแก้ไขตัวสะกดสามารถทำได้อย่างมีประสิทธิภาพมากขึ้นใน Zsh เปลือก. การใช้คุณลักษณะนี้แสดงไว้สำหรับเชลล์ทั้งสองด้านล่าง
ทุบตี
สมมติว่าคุณต้องการไปที่ไดเร็กทอรี ' ดนตรี ' แต่คุณพิมพ์ว่า ' มูจิค โดยไม่ได้ตั้งใจ bash shell จะไม่ตรวจพบข้อผิดพลาดในการสะกดคำโดยค่าเริ่มต้นและจะแสดงข้อความแสดงข้อผิดพลาด: ไม่พบไฟล์หรือโฟลเดอร์ .
$ซีดีMugicคุณต้องเปิดใช้งานเครื่องตรวจตัวสะกดเพื่อแก้ไขปัญหาประเภทนี้ เปิด ~/.bashrc ไฟล์ในโปรแกรมแก้ไขใด ๆ เพื่อเพิ่มบรรทัดเพื่อเปิดใช้งานการตรวจตัวสะกด ที่นี่ นาโน ตัวแก้ไขใช้สำหรับแก้ไขไฟล์
$นาโน~/.bashrcเพิ่มบรรทัดต่อไปนี้ที่ท้ายไฟล์ บันทึกและปิดไฟล์
ร้านค้า -NScdspellตอนนี้ เรียกใช้คำสั่งต่อไปนี้เพื่อยืนยันการเปลี่ยนแปลงอย่างถาวร
$แหล่งที่มา~/.bashrcหากคุณเรียกใช้ด้านบน ' ซีดี' คำสั่งที่มีการสะกดผิดจากเทอร์มินัลจากนั้นจะแก้ไขชื่อโฟลเดอร์โดยอัตโนมัติ
$ซีดีMugicZsh
ตัวตรวจสอบการสะกดไม่ได้เปิดใช้งานโดยค่าเริ่มต้นใน zsh shell ด้วย ดังนั้น หากคุณเรียกใช้คำสั่ง 'echo' เช่นคำสั่งต่อไปนี้ที่มีข้อผิดพลาดในการสะกดคำ จะแสดงข้อความแสดงข้อผิดพลาด
%ehco'สวัสดีชาวโลก'เปิด ~/.zshrc ในตัวแก้ไขใด ๆ และเพิ่มบรรทัดต่อไปนี้ที่ส่วนท้ายของไฟล์ บรรทัดแรกจะเปิดใช้งานตัวตรวจสอบการสะกดใน Zsh ค่าตัวเลือกเริ่มต้นของตัวตรวจการสะกดคือ [เนีย] ที่บ่งบอกว่า ไม่ ใช่ ยกเลิกและแก้ไข . บรรทัดที่สองจะเปลี่ยนค่าเริ่มต้นเพื่อทำให้ตัวเลือกเข้าใจผู้ใช้มากขึ้น ที่นี่, นาโน editor ใช้สำหรับแก้ไขไฟล์
% นาโน~/.zshrcตั้งค่าถูกต้อง
ส่งออก SPROMPT='ถูกต้อง %R ถึง %r? [ใช่ ไม่ ยกเลิก แก้ไข] '
บันทึกและออกจากไฟล์และเรียกใช้คำสั่งต่อไปนี้เพื่ออัปเดตการเปลี่ยนแปลง
% แหล่งที่มา~/.zshrcเรียกใช้คำสั่งก่อนหน้าอีกครั้งและตรวจสอบผลลัพธ์ ตอนนี้ ผู้ใช้จะได้รับตัวเลือกในการแก้ไขผลลัพธ์ หากคุณพิมพ์ y การสะกดจะถูกแก้ไขโดยอัตโนมัติ
%ehco'สวัสดีชาวโลก'หากคุณต้องการให้ผลลัพธ์มีประสิทธิภาพมากขึ้นโดยใช้สี ให้รันคำสั่งต่อไปนี้จาก zsh shell เพื่อเปิดใช้งานสี
%ออโต้โหลด U สี&&สีหลังจากนั้นให้เพิ่มบรรทัดต่อไปนี้ใน ~/.zshrc ไฟล์เหมือนเมื่อก่อน
ส่งออก SPROMPT='ถูกต้อง$fg[สีแดง]%R$reset_colorถึง$fg[สีเขียว]%r$reset_color?[ใช่ ไม่ ยกเลิก แก้ไข] '
ตอนนี้ รันคำสั่งใดๆ ที่มีข้อผิดพลาดในการสะกดคำ และตรวจสอบผลลัพธ์ ในที่นี้ คำแสดงข้อผิดพลาดจะแสดงเป็นสีแดง และคำที่ถูกต้องจะแสดงเป็นสีเขียว
%ehco'สวัสดีชาวโลก'การใช้ธีม
รูปลักษณ์ของพรอมต์ของเชลล์สามารถเปลี่ยนแปลงได้โดยใช้ธีมและปลั๊กอินที่แตกต่างกัน ทั้ง bash และ zsh shells มีธีมหลายประเภทสำหรับเปลี่ยนรูปลักษณ์ของเชลล์ วิธีการใช้ชุดรูปแบบใน bash และ zsh shell จะแสดงในส่วนถัดไปของบทความนี้
ทุบตี
คุณต้องติดตั้ง git เพื่อติดตั้งธีมทุบตี รันคำสั่งต่อไปนี้เพื่อติดตั้งแพ็คเกจ git
$sudo apt-get install ไปหลังจากติดตั้ง ไป ให้รันคำสั่งต่อไปนี้เพื่อสร้างโคลนของ ทุบตี แม่แบบ
$git โคลน --ความลึก=1https://github.com/ทุบตี/bash-it.git ~/.bash_itเรียกใช้คำสั่งต่อไปนี้เพื่อติดตั้ง ทุบตี แม่แบบหลังจากโคลนมัน กด ' และ ’ เมื่อมันจะขอสำรองข้อมูลของ ~/.bash_profile หรือ ~/.bashrc และผนวก ทุบตีมัน แม่แบบที่ส่วนท้ายของไฟล์
ผลลัพธ์ต่อไปนี้จะปรากฏขึ้นหลังจากเสร็จสิ้นกระบวนการติดตั้ง
ตอนนี้ถ้าคุณเปิด ~/.bashrc ไฟล์โดยใช้โปรแกรมแก้ไขใด ๆ ไฟล์จะมีเนื้อหาดังต่อไปนี้ 'bobby' ถูกตั้งค่าเป็นธีมเริ่มต้นสำหรับเทมเพลต bash-it
รันคำสั่งต่อไปนี้เพื่อยืนยันการอัพเดตของเชลล์
$แหล่งที่มา~/.bashrcข้อความแจ้งต่อไปนี้จะปรากฏในเทอร์มินัลหลังจากติดตั้งเทมเพลตอย่างถูกต้อง ตอนนี้ปิดเทอร์มินัล คุณจะเห็นพรอมต์ bash เดียวกันทุกครั้งที่คุณเปิดเทอร์มินัล
มีธีมมากมายสำหรับ ทุบตีมัน เทมเพลต bash prompt ที่แสดงในรูปแบบต่างๆ หนึ่งในนั้นคือ ' อิจฉา' ธีม. หากคุณต้องการตั้งค่าธีมนี้ ให้เปิดไฟล์ ~/.bashrc โดยใช้ตัวแก้ไขใดๆ และเปลี่ยน ' BASH_IT_THEME ' ค่าเป็น ' อิจฉา '.
อีกครั้งเรียกใช้ ' แหล่งที่มา ’ คำสั่งเพื่อยืนยันการอัพเดทอย่างถาวร ผลลัพธ์ต่อไปนี้จะปรากฏขึ้นหลังจากตั้งค่าธีม 'อิจฉา'
Zsh
เช่นเดียวกับ bash zsh shell มีหลายธีม หนึ่งในธีม zsh คือ oh-my-zsh . รันคำสั่งต่อไปนี้เพื่อติดตั้งธีมนี้สำหรับ zsh shell
% NS -ค '$(curl -fsSLhttps://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh) '
หลังจากติดตั้งธีมแล้วให้กด ' และ' เพื่อทำให้เชลล์เริ่มต้นเป็น zsh
มันจะขอรหัสผ่านรูทเพื่อทำกระบวนการติดตั้งให้เสร็จสิ้น ผลลัพธ์ต่อไปนี้จะปรากฏขึ้นหลังจากเสร็จสิ้นกระบวนการติดตั้ง
ตอนนี้ หากคุณเปิดไฟล์ ~/.zshrc คุณจะเห็นรายการสำหรับ oh-my-zsh แม่แบบ 'ร็อบบี้รัสเซล' ถูกตั้งค่าเป็นธีมเริ่มต้นสำหรับเทมเพลต
หากต้องการคงการเปลี่ยนแปลงไว้อย่างถาวร คุณต้องเรียกใช้คำสั่ง 'source'
% แหล่งที่มา~/.zshrcหากคุณต้องการเปลี่ยนธีมเป็น ' ลูกศร ' จากนั้นเปิดไฟล์ ~/.zshrc ในตัวแก้ไขใด ๆ และเปลี่ยนค่าของ ' ZSH_THEME ' ถึง 'ลูกศร '.
คุณต้องเรียกใช้คำสั่ง 'source' อีกครั้งเพื่ออัปเดตการเปลี่ยนแปลงอย่างถาวรสำหรับ zsh shell สัญลักษณ์ลูกศรต่อไปนี้จะปรากฏขึ้นหลังจากตั้งค่าชุดรูปแบบนี้
% แหล่งที่มา~/.zshrcหากคุณปิดเทอร์มินัลแล้วเปิดเปลือก zsh อีกครั้ง ผลลัพธ์ต่อไปนี้จะปรากฏขึ้น
การใช้การขยายไวด์การ์ด
การขยายไวด์การ์ดสามารถใช้ในการทุบตีในรูปแบบต่างๆ โดยไม่ต้องตั้งค่าใดๆ แต่การขยายสัญลักษณ์แทนไม่ได้เปิดใช้งานใน zsh shell โดยค่าเริ่มต้น วิธีการใช้การขยายสัญลักษณ์ตัวแทนใน bash และ zsh จะแสดงในส่วนนี้ของบทความนี้
ทุบตี
สมมติว่า คุณต้องค้นหาไฟล์ทั้งหมดที่มีนามสกุล 'บันทึก' ของตำแหน่งปัจจุบันโดยใช้คำสั่ง 'echo' ที่นี่ค่า ' *.บันทึก' ถูกกำหนดให้กับตัวแปร ไฟล์ ที่ใช้ในคำสั่ง 'echo' เพื่อแสดงรายการไฟล์บันทึกทั้งหมด
$ลส$ไฟล์='*.บันทึก'
$โยนออก $ไฟล์
Zsh
หากคุณเรียกใช้คำสั่งข้างต้นใน zsh shell ค่าของ $files จะพิมพ์ออกมาแทนรายการไฟล์บันทึก เนื่องจากไม่ได้เปิดใช้งานการขยายไวด์การ์ดโดยค่าเริ่มต้นสำหรับ zsh shell
% ลส% ไฟล์='*.บันทึก'
% โยนออก $ไฟล์
รันคำสั่งต่อไปนี้เพื่อเปิดใช้งานการขยายไวด์การ์ดสำหรับ zsh
% ชุด -หรือGLOB_SUBSTตอนนี้ ถ้าคุณเรียกใช้คำสั่งก่อนหน้านี้ รายการของล็อกไฟล์จะแสดงขึ้น
บทสรุป
Bash และ Zsh เป็นเชลล์ที่มีประโยชน์มากสำหรับผู้ใช้ Linux เชลล์ทั้งสองมีคุณสมบัติที่มีประโยชน์บางอย่าง ผู้ใช้สามารถเลือกเชลล์ตามงานที่ต้องการได้ ความแตกต่างที่สำคัญบางประการระหว่างเชลล์ทั้งสองนี้มีอธิบายไว้ในบทความนี้โดยใช้ตัวอย่างที่เหมาะสม หวังว่าความแตกต่างระหว่างเปลือกทั้งสองนี้จะชัดเจนสำหรับผู้อ่านหลังจากอ่านบทความนี้