จะสร้างนามแฝงและฟังก์ชันเชลล์บน Linux ได้อย่างไร?
การรู้พร้อมท์คำสั่งและเชลล์สคริปต์ยังคงเป็นสิ่งที่จำเป็นหากคุณต้องการใช้ประโยชน์สูงสุดจากระบบ GNU / Linux และยิ่งทำงานที่บรรทัดคำสั่งมากเท่าไหร่ก็ยิ่งพบว่าคำสั่งส่วนใหญ่ที่ใช้เป็นคำสั่ง ชุดย่อยของคำสั่งที่มีอยู่ งานส่วนใหญ่เป็นนิสัย & ผู้ใช้ที่คุณอาจเรียกใช้ในลักษณะเดียวกันทุกวัน
ในขณะที่ผู้สร้างยูทิลิตีคำสั่งทั่วไปจำนวนมากพยายามที่จะกำจัดการพิมพ์ที่ไม่เกี่ยวข้องโดยใช้ชื่อที่สั้นลงเช่น แทนที่จะเป็นรายการเราพิมพ์“ล” & แทนที่จะเปลี่ยนไดเร็กทอรีเราพิมพ์ “ซีดี” นอกจากนี้ผู้ใช้ Linux จำนวนมากมักต้องใช้คำสั่งเดียวซ้ำแล้วซ้ำเล่า การพิมพ์ / คัดลอกคำสั่งเดิมซ้ำแล้วซ้ำอีกจะลดประสิทธิภาพการทำงานและทำให้ผู้ใช้เสียสมาธิจากการทำงานจริง
จะดีมากถ้าเราใช้เวลาน้อยลงในการพิมพ์คำสั่งยาว ๆ เหล่านั้น เรามีสองวิธีที่มีประสิทธิภาพในการลดเวลาของคุณที่บรรทัดคำสั่งคือ นามแฝงของเชลล์ และ ฟังก์ชั่น, ด้วยการใช้ทั้งสองสิ่งนี้ ผู้ใช้สามารถเชื่องงานที่ซ้ำซากจำเจ ลดกระบวนการที่มีความยาว & กำหนดค่าคำสั่งที่กำหนดเองด้วยตัวเลือกที่ผู้ใช้ใช้เสมอ & พยายามจดจำ
คุณสามารถกำหนดคำสั่งของคุณให้เหมาะกับความต้องการเฉพาะของคุณและเพื่อแบ่งเบาภาระของงานซ้ำ ๆ
นามแฝงและเชลล์สคริปต์เช่นฟังก์ชันทำงานประเภทเดียวกัน ซึ่งช่วยให้คุณกำหนดและตั้งชื่อ - ชุดของฟังก์ชัน Bash shell ซึ่งสามารถเรียกได้ตามชื่อที่คุณตั้งให้ การพิมพ์ชื่อจะง่ายและสะดวกกว่าการพิมพ์ขั้นตอนหรือคำสั่งทั้งหมดทุกครั้งที่คุณต้องการใช้
ความแตกต่างระหว่างนามแฝงและฟังก์ชันเป็นหนึ่งในความซับซ้อนและขนาด สคริปต์ดีกว่าในการเก็บโค้ดที่ยาวขึ้นและซับซ้อนมากขึ้น นามแฝงเหมาะอย่างยิ่งสำหรับการถือชุดคำสั่งที่สั้นกระชับมากขึ้น
นามแฝงของเชลล์
เชลล์นามแฝงคือทางลัดที่กำหนดเองเพื่ออ้างอิงคำสั่งหรือชุดคำสั่งที่ดำเนินการโดยมีหรือไม่มีตัวเลือกแบบกำหนดเอง นามแฝงเหล่านี้เป็นชื่อทางเลือกที่จำง่ายสำหรับคำสั่งแบบยาวที่คุณต้องดำเนินการบ่อยๆ เมื่อคุณพิมพ์ที่บรรทัดคำสั่งเชลล์จะค้นหาสิ่งที่คุณเขียนไว้ในรายการนามแฝงก่อน หากพบรายการที่ตรงกันสิ่งนั้นจะถูกแทนที่ด้วยนามแฝงด้วยข้อความที่สอดคล้องกัน หลังจากเสร็จสิ้นมันจะดูบรรทัดคำสั่งที่เป็นผลลัพธ์ทั้งหมดอีกครั้งและเรียกใช้งาน
มีโอกาสที่คุณอาจใช้ไฟล์ นามแฝง บนระบบ Linux เนื่องจากลีนุกซ์ส่วนใหญ่จะเพิ่มนามแฝงที่เป็นที่นิยมอย่างน้อยโดยค่าเริ่มต้นใน“.bashrc” ไฟล์ของบัญชีผู้ใช้
นอกเหนือจากนามแฝง: ฟังก์ชั่นเชลล์
ไม่สามารถแทนที่บล็อกของรหัสที่คล้ายกัน แต่ไม่เหมือนกันได้ด้วยนามแฝง พวกเขาไม่สามารถจัดการข้อผิดพลาดหรือส่งคืนรหัสทางออกที่กำหนดเองทำการควบคุมโฟลว์หรือใช้ตัวแปร หากคุณจำเป็นต้องทำสิ่งเหล่านี้ก็ถึงเวลาใช้ฟังก์ชันเชลล์
ฟังก์ชันเชลล์คือโค้ดบล็อกที่มีโครงสร้างเป็นสคริปต์ย่อยที่สมบูรณ์เขียนครั้งเดียวและเรียกใช้จากสคริปต์ใด ๆ ที่ต้องการ
ไวยากรณ์ของนามแฝง:
การสร้างนามแฝงใน bash นั้นตรงไปตรงมามาก ไวยากรณ์มีดังนี้:
นามแฝง alias_name =” command_to_run”
เพื่อสร้าง bash alias ใหม่ใน session ปัจจุบัน
- พิมพ์ "นามแฝง”
- จากนั้นประกาศชื่อนามแฝง
- ตามด้วยเครื่องหมายเท่ากับ
- และคำสั่งที่จะทำงานเมื่อมีการเรียกนามแฝง
คำสั่งต้องอยู่ในเครื่องหมายคำพูดและไม่มีช่องว่างรอบเครื่องหมายเท่ากับ ช่องว่างที่นี่จะทำลายคำสั่ง นามแฝงแต่ละรายการจะต้องประกาศในบรรทัดใหม่
ให้เราได้รับความกระจ่างจากตัวอย่าง บนบรรทัดคำสั่ง Linux หนึ่งในคำสั่งที่ใช้มากที่สุดคือ“ล” คำสั่ง "ls" ส่วนใหญ่จะใช้กับ "ลา” ซึ่งจะแสดงรายการไฟล์และไดเรกทอรีทั้งหมดที่มีไฟล์ที่ซ่อนอยู่ในรูปแบบของรายการแบบยาว ตอนนี้เราจะสร้างนามแฝงที่เรียบง่าย "ล” ซึ่งจะเป็นทางลัดไปยังไฟล์ls -la คำสั่ง
- เปิดไฟล์ หน้าต่างเทอร์มินัล
- ประเภท:
นามแฝง ll="ls -la"
& กด ป้อน
- ตอนนี้อยู่ในคอนโซลประเภท“ล” และกด ป้อน
- ผลลัพธ์จะเหมือนกับการพิมพ์ ls -la
นามแฝง "ll" ที่กำหนดไว้ข้างต้นจะพร้อมใช้งานในเซสชันเชลล์ปัจจุบันเท่านั้น หากคุณปิดเซสชันหรือหน้าต่างเซสชันใหม่ที่เริ่มต้นจากเทอร์มินัลอื่นนามแฝงที่กำหนดไว้ข้างต้นจะไม่สามารถใช้งานได้
เราจะพูดถึงในภายหลังเกี่ยวกับวิธีทำให้นามแฝงคงอยู่ ตัวอย่างที่นี่มีไว้สำหรับ bash shell แต่แนวคิดทั้งหมดและโค้ดส่วนใหญ่ใช้ได้กับเชลล์อื่น ๆ เช่นกัน
นามแฝงที่กำหนดไว้ล่วงหน้า
นามแฝงบางชื่อถูกกำหนดไว้ล่วงหน้าสำหรับคุณ หากต้องการทราบรายชื่อนามแฝงทั้งหมดที่กำหนดไว้ในระบบ เราจะใช้คำสั่ง "นามแฝง" โดยไม่มีพารามิเตอร์ใดๆ:
นามแฝง
นี่คือนามแฝงในเครื่องทดสอบ Ubuntu บทความนี้ได้รับการค้นคว้า นอกจากนี้นามแฝงที่กำหนดเองจะปรากฏในรายการนี้ด้วย
มีนามแฝงที่แตกต่างกันมากมายสำหรับคำสั่ง ls และมีกลุ่มของนามแฝงที่ให้เอาต์พุตสีแก่ตระกูลคำสั่ง grep เช่น ด้วยนามแฝงที่กำหนดไว้ด้านบนทุกครั้งที่คุณพิมพ์:
grep
มันจะถูกตีความว่า:
grep --color = อัตโนมัติ
สิ่งนี้แสดงจุดสำคัญที่มีนามแฝง สามารถมีชื่อเดียวกับคำสั่งที่มีอยู่ พวกเขายังสามารถมีคำสั่งดั้งเดิมอยู่ภายในตัวเอง
นี่คือคำจำกัดความของนามแฝง grep
นามแฝง grep = 'grep --color = auto'
- คำสั่ง alias ใช้เพื่อกำหนดนามแฝง
- ชื่อของนามแฝงจะได้รับถัดไป ในตัวอย่างนี้คือ "grep"
- เครื่องหมายเท่ากับเชื่อมต่อชื่อของนามแฝงกับร่างกาย ของนามแฝง สำหรับนามแฝงที่เรียบง่ายทั้งหมดเนื้อหาของนามแฝงจะอยู่ภายในเครื่องหมายคำพูดเดียว "
- เนื้อหาของนามแฝงคือส่วนที่ดำเนินการเมื่อใช้นามแฝงในบรรทัดคำสั่ง
- เนื้อความของนามแฝงนี้เพียงแค่เรียกคำสั่ง grep ด้วยตัวเลือก –color=auto
นามแฝงการแจ้งเตือน
ที่ด้านบนของรายชื่อมีนามแฝงที่ดูซับซ้อนเรียกว่าแจ้งเตือน. ในทางกลับกันและเพื่อให้คุณรู้ว่ามันทำอะไรนามแฝงการแจ้งเตือนจะถูกใช้เพื่อแจ้งให้คุณทราบเมื่อคำสั่งเสร็จสิ้น นอกจากนี้ยังระบุว่าคำสั่งเสร็จสมบูรณ์หรือไม่ มีการแจ้งเตือนระบบกราฟิกที่ด้านบนของหน้าจอ
นี่คือตัวอย่างง่ายๆ คำสั่ง sleep จะเข้าสู่โหมดสลีปเป็นเวลาห้าวินาทีจากนั้นนามแฝงการแจ้งเตือนจะถูกเรียก นามแฝงตรวจสอบการตอบสนองจากคำสั่งก่อนหน้า มันแยกคำสั่งสุดท้ายจากไฟล์ประวัติ กำหนดว่าคำสั่งเสร็จสมบูรณ์หรือไม่ จากนั้นจะแสดงผลลัพธ์ในการแจ้งเตือนของระบบ
หากคำสั่งเสร็จสิ้นตามที่คาดไว้ไอคอนในการแจ้งเตือนระบบจะเป็นหน้าต่างเทอร์มินัลขนาดเล็ก หากคำสั่งส่งคืนรหัสข้อผิดพลาด ไอคอนในการแจ้งเตือนระบบจะเป็นไอคอนข้อผิดพลาดสีแดง
นอน 5; แจ้งเตือน
หลังจากผ่านไปห้าวินาทีเราจะเห็นการแจ้งเตือนของระบบนี้:
ไอคอนเป็นหน้าต่างเทอร์มินัลขนาดเล็กซึ่งหมายความว่าทุกอย่างเป็นไปด้วยดี ลองอีกครั้งโดยใช้คำสั่งที่เรารู้ว่าจะล้มเหลว:
DoomedToFail; แจ้งเตือน
ตอนนี้การแจ้งเตือนระบบของเรามีไอคอนข้อผิดพลาด
การกำหนดนามแฝงเล็กน้อย
อย่างที่เราเห็นในการกำหนดนามแฝงเราใช้คำสั่ง alias
เราจะสร้างนามแฝงสำหรับคำสั่ง clear นามแฝงของเราจะถูกเรียกว่า cls และจะเรียกคำสั่งที่ชัดเจน
คำจำกัดความนามแฝงของเราเป็นเรื่องเล็กน้อยมากจนไม่รับประกันว่าจะถูกรวมไว้ด้วยเครื่องหมายอัญประกาศเดี่ยว หากเนื้อหาของนามแฝงซับซ้อนกว่านี้หรือมีช่องว่างให้รวมไว้ในเครื่องหมายคำพูดเดี่ยว เราจะกำหนดนามแฝงใช้ ls เพื่อใส่เอาต์พุตบางส่วนในหน้าต่างเทอร์มินัลจากนั้นใช้ cls นามแฝงใหม่ของเราเพื่อล้างหน้าจอ
นามแฝง cls = clear ls -l cls
หน้าจอถูกล้าง ความสำเร็จแม้ว่าจะสั้น นามแฝงจะคงอยู่ตราบใดที่หน้าต่างเทอร์มินัลนี้ยังคงเปิดอยู่ เมื่อปิดหน้าต่างนามแฝงจะหายไป
ในการทำให้นามแฝงถาวรโดยใช้ไฟล์“ .bashrc”
คุณอาจสงสัยว่านามแฝงที่บรรจุไว้ล่วงหน้าถูกกำหนดไว้ที่ใด อยู่ในไฟล์“ .bashrc” ในโฮมโฟลเดอร์ของคุณ ไฟล์นี้ถูกอ่านและคำสั่งที่อยู่ภายในจะถูกเรียกใช้เมื่อใดก็ตามที่คุณเริ่มเชลล์แบบโต้ตอบ นั่นคือเมื่อคุณเปิดหน้าต่างเทอร์มินัล
พิมพ์คำสั่งต่อไปนี้ในโฮมโฟลเดอร์ของคุณเพื่อดูเนื้อหาของไฟล์“ .bashrc” พร้อมการเน้นไวยากรณ์
gedit .bashrc
สิ่งนี้จะเปิดไฟล์geditแก้ไขด้วยไฟล์“ .bashrc” ที่โหลดเข้ามา
พื้นที่ที่ไฮไลต์จะแสดงพื้นที่สองส่วนที่มีการกำหนดนามแฝง
การเลื่อนดูเอกสารจะเปิดเผยส่วนอื่นๆ อีกสองส่วนที่เกี่ยวข้องกับนามแฝง:
ประการแรกคือคำจำกัดความของนามแฝงการแจ้งเตือน อย่างที่สองคือคำสั่ง if แปลว่า "ถ้าไฟล์".bash_aliases” อยู่อ่านได้ใน”
หากคุณมีนามแฝงเพียงไม่กี่นามที่ต้องการกำหนดคุณอาจใส่ชื่อแทนไว้ในไฟล์“ .bashrc” ของคุณ เหน็บไว้ด้านล่างส่วนที่มีนามแฝง ls
หากคุณกำลังจะสร้างนามแฝงจำนวนมากหรือคุณเพียงแค่ชอบแนวคิดที่จะให้นามแฝงของคุณห่อหุ้มอยู่ภายในไฟล์ของคุณเองคุณสามารถกำหนดได้ในไฟล์“ .bash_aliases” ของคุณ ข้อดีอย่างหนึ่งของการสร้างไฟล์เหล่านี้ในไฟล์“ .bash_aliases” ของคุณคือคุณไม่สามารถเปลี่ยนการตั้งค่าใด ๆ ในไฟล์“ .bashrc” โดยไม่ได้ตั้งใจ ข้อดีอีกประการหนึ่งคือนามแฝงของคุณจะถูกคัดลอกไปยังระบบใหม่อย่างง่ายดาย เนื่องจากถูกแยกออกจากไฟล์ “.bashrc”
นามแฝงควรตั้งชื่อในลักษณะที่ง่ายต่อการจดจำ ขอแนะนำให้เพิ่มความคิดเห็นเพื่อใช้อ้างอิงในอนาคต
การจัดเก็บนามแฝงในไฟล์. bash_aliases
ไม่มีไฟล์“ .bash_aliases” ตามค่าเริ่มต้นคุณจะต้องสร้างขึ้น คุณสามารถสร้างไฟล์ด้วยคำสั่งนี้:
สัมผัส. bash_aliases
มาแก้ไขไฟล์และเพิ่มนามแฝงสองสามตัวเข้าไป คำสั่งนี้จะเปิดไฟล์“ .bash_aliases” ในโปรแกรมแก้ไข gedit
gedit .bash_aliases
เราได้เพิ่มชื่อแทนสามชื่อ อย่างแรกคือของเราclsนามแฝงที่เราใช้ก่อนหน้านี้ ต่อไปเรียกว่าซ. และเป็นวิธีการเรียกคำสั่ง history แบบชวเลข
นามแฝงที่สามเรียกว่าftc. ซึ่งย่อมาจาก "จำนวนประเภทไฟล์"
นามแฝงนี้มีส่วนเกี่ยวข้องมากกว่าดังนั้นจึงถูกรวมไว้ด้วยเครื่องหมายอัญประกาศเดี่ยว มันใช้โซ่คำสั่งที่เชื่อมโยงกันด้วยท่อ มันสร้างรายการที่เรียงลำดับของนามสกุลไฟล์และชื่อไดเร็กทอรีที่แตกต่างกัน โดยมีการนับสำหรับแต่ละรายการ
เมื่อเราบันทึกไฟล์“ .bash_aliases” แล้วเราอาจคาดหวังให้นามแฝงของเราใช้งานได้และสามารถเข้าถึงได้ ไม่เป็นเช่นนั้น ไฟล์จะต้องถูกอ่านโดย Bash shell ก่อนที่คำจำกัดความของนามแฝงจะใช้งานได้จริง สิ่งนี้ทำได้ทุกครั้งที่เปิดเชลล์แบบโต้ตอบ
เราสามารถใช้ Bash shell ในตัวได้ด้วย เพื่ออ่านและดำเนินการคำสั่งในไฟล์ เนื่องจากไฟล์“ .bash_alias” ของเราถูกอ่านเมื่อประมวลผล“ .bashrc” เราจึงควรทำการทดสอบโดยเรียก“ .bashrc” ด้วยวิธีนี้เราจะตรวจสอบได้ว่าไฟล์“ .bash_alias” ถูกเรียกมาจาก“ .bashrc” และนามแฝงของเรายังมีชีวิตอยู่และสมบูรณ์
คำสั่งที่เราใช้ ได้แก่ :
gedit .bash_aliases
ในการแก้ไขไฟล์“ .bash_aliases”
. .bashrc
สิ่งนี้จะอ่านและดำเนินการคำสั่งภายใน“ .bashrc” ซึ่งจะเรียก“ .bash_aliases”
ftc
สิ่งนี้จะเรียกนามแฝง ftc
นามแฝงของเราตอบสนองซึ่งหมายความว่า Bash ได้อ่านทั้ง“ .bashrc” และ“ .bash_aliases” และขณะนี้นามแฝงใหม่ของเราพร้อมใช้งานแล้ว
ตอนนี้คุณสามารถดำเนินการต่อและเพิ่มนามแฝงใหม่ให้กับไฟล์“ .bash_aliases” ได้ตามที่เกิดขึ้นกับคุณ หากคุณพบว่าตัวเองทำสิ่งต่างๆมากกว่าหนึ่งครั้งหรือสองครั้งให้ลองตั้งชื่อแทน
การลบนามแฝง
มีคำสั่งให้ลบนามแฝงเพื่อไม่ให้ Bash จดจำหรือไม่ตอบสนอง ตรงไปตรงมาอย่างสดชื่นคำสั่งถูกเรียกใช้ยูนาเลีย.
หากต้องการใช้ให้ตั้งชื่อนามแฝงที่คุณต้องการให้ Bash ลืม เพื่อให้ Bash ลืมนามแฝง ftc ของเราให้ใช้ unalias เช่น ที่ใช้ก่อนหน้านี้“ll” คำสั่ง:
ยูนาเลีย ll
คุณสามารถใช้ยูนาเลียเพื่อลบนามแฝงที่คุณกำหนดไว้และนามแฝงใด ๆ ที่กำหนดไว้ล่วงหน้า
ในการลบนามแฝงทั้งหมดออกจากระบบของคุณให้ใช้ตัวเลือก -a (ทั้งหมด):
unalias -a
การสูญเสียหน่วยความจำของ Bash จะไม่ถาวร ในครั้งต่อไปที่คุณเปิดหน้าต่างเทอร์มินัลนามแฝง "ลืม" จะกลับมา ในการล้างข้อมูลออกอย่างแท้จริงคุณต้องลบออกจากไฟล์“ .bashrc” และ“ .bash_alias”
หากคุณคิดว่าอยากได้กลับมาอย่าลบออกจากไฟล์“ .bashrc” ให้แสดงความคิดเห็นโดยเพิ่มแฮช # ที่จุดเริ่มต้นของแต่ละบรรทัดแทน หากต้องการทำให้ไฟล์“ .bash_alias” ของคุณใช้งานไม่ได้ให้เปลี่ยนชื่อใหม่ หากมองไม่เห็นไฟล์“ .bashrc” ก็จะไม่อ่านไฟล์นั้นการย้อนกลับขั้นตอนเหล่านี้เพื่อคืนสถานะนามแฝงถือเป็นเรื่องเล็กน้อย
หากต้องการข้ามนามแฝงชั่วคราว (สมมติว่าเราใช้นามแฝงว่า ls เป็น ls -a) เราสามารถพิมพ์:
\ ls
ผลลัพธ์คำสั่งปกติจะถูกเรียกไม่ใช่เวอร์ชันนามแฝง
ความช่วยเหลือสำหรับคำสั่ง Alias:
- - ตัวเลือกความช่วยเหลือ: จะแสดงข้อมูลวิธีใช้
ไวยากรณ์:
นามแฝง - help
ฟังก์ชั่นเชลล์
บางครั้งจำเป็นต้องใช้นามแฝงที่สามารถยอมรับอาร์กิวเมนต์อย่างน้อยหนึ่งข้อ นั่นคือ เมื่อใช้ฟังก์ชันทุบตี
ไวยากรณ์
การสร้างฟังก์ชันทุบตีไม่ใช่เรื่องยากมาก สามารถประกาศในรูปแบบใดรูปแบบหนึ่งจากสองรูปแบบต่อไปนี้:
function_name () { [คำสั่ง] }
หรือ
ฟังก์ชัน function_name {[คำสั่ง]}
เราสามารถบีบอัดรูปแบบที่สองนี้ให้เป็นบรรทัดเดียวและแยกคำสั่งด้วยอัฒภาค อัฒภาคต้อง มาตามคำสั่งสุดท้ายด้วย:
function_name () {command1; คำสั่ง 2; }
นามแฝง Lika, ฟังก์ชัน Bash shell สามารถกำหนดได้ภายในไฟล์“ .bashrc” แต่มักจะเป็นสิ่งที่ดีกว่าที่จะใส่ไว้ในไฟล์คำจำกัดความของตัวเอง เราจะเรียกมันว่า“ .bash_functions” ตามหลักการที่ใช้สำหรับไฟล์“ .bash_aliases”
นั่นหมายความว่าเราต้องบอกไฟล์“ .bashrc” เพื่ออ่านในคำจำกัดความของเรา เราสามารถคัดลอกและแก้ไขข้อมูลโค้ดที่อ่านในไฟล์“ .bash_aliases” เปิด gedit และโหลดไฟล์“ .bashrc” ด้วยคำสั่งนี้:
gedit .bashrc
คุณต้องเพิ่มส่วนไฮไลต์ที่แสดงด้านล่าง
คุณสามารถไฮไลต์ส่วนนามแฝงแล้วกด Ctrl + C จากนั้นย้ายไปยังตำแหน่งที่คุณต้องการส่วนใหม่แล้วกด Ctrl + V เพื่อวางสำเนาของข้อความ จากนั้นสิ่งที่คุณต้องทำคือเปลี่ยนสองตำแหน่งที่ระบุว่า“ .bash_aliases” เป็น“ .bash_functions”
เราสามารถบันทึกการเปลี่ยนแปลงเหล่านั้นและปิด gedit
ตอนนี้เราจะสร้างและแก้ไขไฟล์“ .bash_functions” และใส่คำจำกัดความของฟังก์ชันลงไป
แตะ .bash_functions gedit .bash_functions
เพื่อเปิดไฟล์“ .bash_functions” ที่ว่างเปล่าใน gedit
เราจะเพิ่มฟังก์ชันง่ายๆที่เรียกว่า up จะใช้พารามิเตอร์บรรทัดคำสั่งเดียวซึ่งเป็นตัวเลข ขึ้นมาก็จะเรียก cd .. จำนวนครั้งนั้น ดังนั้นหากคุณใช้คำสั่ง
ขึ้น 2
ขึ้นจะเรียก cd .. สองครั้งและจะเลื่อนขึ้นสองระดับในแผนผังไดเรกทอรี
มีหลายวิธีในการกำหนดฟังก์ชัน นี่คือหนึ่ง:
ฟังก์ชั่นขึ้น () {
ฟังก์ชันคำเป็นทางเลือก หากคุณเป็นนักอนุรักษนิยมให้ใช้หากคุณไม่สามารถพิมพ์ลงไปได้ก็ไม่ต้องกังวลให้ปล่อยทิ้งไว้
นี่คือฟังก์ชั่นทั้งหมดของเราใน gedit:
ฟังก์ชั่นขึ้น () {
นี่คือจุดเริ่มต้นของนิยามฟังก์ชันของเราและตั้งชื่อฟังก์ชันขึ้นมา
ระดับ = $ 1
สิ่งนี้จะสร้างตัวแปรที่เรียกว่าระดับ และตั้งค่าให้เป็นค่าของพารามิเตอร์แรก พารามิเตอร์นี้จะเป็นตัวเลขที่ผู้ใช้ให้มาเมื่อพวกเขาเรียกใช้ฟังก์ชัน $ 1 หมายถึง "พารามิเตอร์บรรทัดคำสั่งแรก"
ในขณะที่ ["$ levels" -gt "0"]; ทำ
จากนั้นเราจะเข้าสู่ลูปซึ่งจะแปลเป็น "เมื่อ"มูลค่า” ของ“ระดับ"เป็นบวกหรือมากกว่าศูนย์ทำสิ่งที่มีอยู่ในเนื้อความของลูป"
ภายในร่างกายของลูปเรามีคำสั่งสองคำสั่ง พวกเขาเป็น:
ซีดี ..
เลื่อนระดับในแผนผังไดเร็กทอรี
ระดับ = $ (($ ระดับ - 1))
ตั้งค่าระดับเป็นค่าใหม่ซึ่งน้อยกว่าค่าปัจจุบันหนึ่งค่า
จากนั้นเรากลับไปที่ด้านบนสุดของลูปการเปรียบเทียบระหว่างค่าของระดับและศูนย์จะถูกสร้างขึ้นอีกครั้ง ถ้า "ระดับ" มากกว่าศูนย์เนื้อหาของลูปจะดำเนินการอีกครั้ง ถ้ามันไม่เป็นบวกหรือมากกว่าศูนย์การวนซ้ำจะเสร็จสิ้นและเราเลื่อนไปที่คำสั่ง done และฟังก์ชันจะสิ้นสุดลง
บันทึก การเปลี่ยนแปลงเหล่านี้และปิดgedit.
เราจะอ่านและดำเนินการคำสั่งใน ".bashrc" ซึ่งควรอ่านและดำเนินการคำสั่งในไฟล์ ".bash_functions" ของเรา
. .bashrc
เราสามารถทดสอบฟังก์ชันได้โดยการย้ายไปยังตำแหน่งบางตำแหน่งในแผนผังไดเร็กทอรีและใช้ขึ้นเพื่อย้ายกลับไปยังจุดที่ "สูงกว่า" ในแผนผังไดเร็กทอรี
cd ./work/backup/ ขึ้น 2
ฟังก์ชั่นใช้งานได้ เราได้ย้ายไดเรกทอรีสองระดับในแผนภูมิให้สูงขึ้น
ติดตามด้วยประเภท
เมื่อคุณสร้างชุดของนามแฝงและไลบรารีของฟังก์ชัน อาจกลายเป็นเรื่องยากที่จะจดจำว่าคำสั่งใดคำสั่งหนึ่งเป็นนามแฝงหรือฟังก์ชัน คุณสามารถใช้ปุ่ม“ประเภท” คำสั่งเพื่อเตือนคุณ สิ่งที่น่าสนใจคือคุณยังได้เห็นคำจำกัดความ
มาใช้ประเภทในไฟล์ftcนามแฝงและฟังก์ชันขึ้นของเรา
พิมพ์ ftc พิมพ์ขึ้น
เราได้รับคำเตือนที่เป็นประโยชน์มากว่าคำสั่งแต่ละประเภทคืออะไรพร้อมทั้งคำจำกัดความ
เริ่มรวบรวม
นามแฝงและฟังก์ชันสามารถเพิ่มความเร็วในการใช้บรรทัดคำสั่งของคุณได้อย่างมาก พวกเขาสามารถย่อลำดับคำสั่งให้สั้นลงและช่วยให้คุณสามารถอบตัวเลือกที่คุณใช้กับคำสั่งมาตรฐานได้เสมอ ทุกครั้งที่คุณเห็นหนึ่งซับหรือฟังก์ชันที่มีประโยชน์คุณสามารถปรับเปลี่ยนและปรับแต่งได้จากนั้นเพิ่มลงในไฟล์“ .bash_aliases” หรือ“ .bash_functions” ของคุณ การใช้สิ่งเหล่านี้อย่างกว้างขวางสามารถช่วยให้เวลาของคุณอยู่ในเปลือกหอยได้อย่างสนุกสนานและซับซ้อนน้อยลง
อย่าลืมระวังการกำหนดคำสั่งที่มีอยู่ใหม่ด้วยพฤติกรรมที่อาจทำลายล้างแม้แต่การทำสิ่งที่ตรงกันข้ามและการใส่นามแฝงคำสั่งไปยังตัวแปรที่ปลอดภัยกว่า (เช่นขอให้ยืนยันก่อนที่จะลบซ้ำเสมอ) ก็สามารถกลับมากัดคุณได้ในครั้งแรกที่คุณอยู่ในระบบโดยที่คุณไม่ต้องพึ่งพามัน . หากต้องการค้นหาผู้สมัครที่สามารถสร้างนามแฝงได้ดีคุณควรค้นหาประวัติของคุณเพื่อหาคำสั่งที่คุณใช้บ่อยที่สุด