วิธีสร้างนามแฝงและฟังก์ชันเชลล์บน Linux

มาตามคำสั่งสุดท้ายด้วย:



function_name () {command1; คำสั่ง 2; }

นามแฝง Lika, ฟังก์ชัน Bash shell สามารถกำหนดได้ภายในไฟล์ '.bashrc' แต่มักจะเป็นสิ่งที่ดีกว่าที่จะใส่ไว้ในไฟล์คำจำกัดความของตัวเอง เราจะเรียกมันว่า“ .bash_functions” ตามหลักการที่ใช้สำหรับไฟล์“ .bash_aliases”

นั่นหมายความว่าเราต้องบอกให้ไฟล์“ .bashrc” อ่านในคำจำกัดความของเรา เราสามารถคัดลอกและแก้ไขข้อมูลโค้ดที่อ่านในไฟล์“ .bash_aliases” เปิด gedit และโหลดไฟล์“ .bashrc” ด้วยคำสั่งนี้:



gedit .bashrc

ไฟล์ gedit .bashrc



คุณต้องเพิ่มส่วนไฮไลต์ที่แสดงด้านล่าง



คุณสามารถไฮไลต์ส่วนนามแฝงแล้วกด Ctrl + C จากนั้นย้ายไปยังตำแหน่งที่คุณต้องการส่วนใหม่แล้วกด Ctrl + V เพื่อวางสำเนาของข้อความ จากนั้นสิ่งที่คุณต้องทำคือเปลี่ยนสองตำแหน่งที่ระบุว่า“ .bash_aliases” เป็น“ .bash_functions”

การเพิ่ม bash_functions ในไฟล์. bashrc

เราสามารถบันทึกการเปลี่ยนแปลงเหล่านั้นและปิด gedit



ตอนนี้เราจะสร้างและแก้ไขไฟล์“ .bash_functions” และใส่คำจำกัดความของฟังก์ชันลงไป

สัมผัส. bash_functions gedit .bash_functions

การสร้างและแก้ไข. bash_functions

เพื่อเปิดไฟล์“ .bash_functions” ที่ว่างเปล่าใน gedit

เราจะเพิ่มฟังก์ชันง่ายๆที่เรียกว่า up จะใช้พารามิเตอร์บรรทัดคำสั่งเดียวซึ่งเป็นตัวเลข ขึ้นจะเรียก cd .. จำนวนครั้งนั้น ดังนั้นหากคุณใช้คำสั่ง

ขึ้น 2

ขึ้นจะเรียก cd .. สองครั้งและจะเลื่อนขึ้นสองระดับในแผนผังไดเรกทอรี

มีหลายวิธีในการกำหนดฟังก์ชัน นี่คือหนึ่ง:

function up () {

ฟังก์ชันคำเป็นทางเลือก หากคุณเป็นนักอนุรักษ์นิยมให้ใช้หากคุณไม่สามารถพิมพ์ลงไปได้ก็ไม่ต้องกังวลให้ปล่อยทิ้งไว้

นี่คือฟังก์ชั่นทั้งหมดของเราใน gedit:

การแก้ไขไฟล์. bash_functions

function up () {

นี่คือจุดเริ่มต้นของนิยามฟังก์ชันของเราและตั้งชื่อฟังก์ชันขึ้นมา

ระดับ = $ 1

สิ่งนี้จะสร้างตัวแปรที่เรียกว่า ระดับ และตั้งค่าเป็นค่าของพารามิเตอร์แรก พารามิเตอร์นี้จะเป็นตัวเลขที่ผู้ใช้ให้มาเมื่อพวกเขาเรียกใช้ฟังก์ชัน $ 1 หมายถึง 'พารามิเตอร์บรรทัดคำสั่งแรก'

ในขณะที่ ['$ levels' -gt '0']; ทำ

จากนั้นเราจะเข้าสู่ลูปซึ่งจะแปลเป็น 'เมื่อ' มูลค่า ” ของ“ ระดับ 'เป็นบวกหรือมากกว่าศูนย์ทำสิ่งที่มีอยู่ในเนื้อความของลูป'

ภายในร่างกายของลูปเรามีสองคำสั่ง พวกเขาเป็น:

ซีดี ..

เลื่อนระดับในแผนผังไดเรกทอรี

ระดับ = $ (($ ระดับ - 1))

ตั้งค่าระดับเป็นค่าใหม่ซึ่งน้อยกว่าค่าปัจจุบันหนึ่งค่า

จากนั้นเรากลับไปที่ด้านบนสุดของลูปการเปรียบเทียบระหว่างค่าของระดับและศูนย์จะถูกสร้างขึ้นอีกครั้ง ถ้า 'ระดับ' มากกว่าศูนย์เนื้อหาของลูปจะดำเนินการอีกครั้ง ถ้ามันไม่เป็นบวกหรือมากกว่าศูนย์การวนซ้ำจะเสร็จสิ้นและเราเลื่อนไปที่คำสั่ง done และฟังก์ชันจะสิ้นสุดลง

บันทึก การเปลี่ยนแปลงเหล่านี้และปิด gedit .

เราจะอ่านและดำเนินการคำสั่งใน“ .bashrc” ซึ่งควรอ่านและดำเนินการคำสั่งในไฟล์“ .bash_functions” ของเรา

. .bashrc

โทร .. bashrc

เราสามารถทดสอบฟังก์ชันได้โดยการย้ายไปยังตำแหน่งบางตำแหน่งในแผนผังไดเร็กทอรีและใช้ขึ้นเพื่อย้ายกลับไปยังจุดที่ 'สูงกว่า' ในแผนผังไดเร็กทอรี

cd ./work/backup/ ขึ้น 2

ฟังก์ชั่นขึ้น

ฟังก์ชันใช้งานได้ เราได้ย้ายไดเรกทอรีสองระดับในแผนภูมิให้สูงขึ้น

ติดตามด้วยประเภท

เมื่อคุณสร้างชุดนามแฝงและไลบรารีของฟังก์ชันการจำคำสั่งนั้นอาจเป็นนามแฝงหรือฟังก์ชันได้ยาก คุณสามารถใช้ปุ่ม“ ประเภท” คำสั่งเพื่อเตือนคุณ สิ่งที่น่าสนใจคือคุณยังได้เห็นคำจำกัดความ

มาใช้ประเภทในไฟล์ FTC นามแฝงและฟังก์ชันขึ้นของเรา

พิมพ์ ftc พิมพ์ขึ้น

การใช้ประเภท

เราได้รับคำเตือนที่เป็นประโยชน์มากว่าคำสั่งแต่ละประเภทคืออะไรพร้อมคำจำกัดความ

เริ่มรวบรวม

นามแฝงและฟังก์ชันสามารถเพิ่มความเร็วในการใช้บรรทัดคำสั่งของคุณได้อย่างมาก พวกเขาสามารถย่อลำดับคำสั่งและช่วยให้คุณสามารถอบตัวเลือกที่คุณใช้กับคำสั่งมาตรฐานได้เสมอ ทุกครั้งที่คุณเห็นหนึ่งซับหรือฟังก์ชันที่มีประโยชน์คุณสามารถปรับเปลี่ยนและปรับแต่งได้จากนั้นเพิ่มลงในไฟล์“ .bash_aliases” หรือ“ .bash_functions” ของคุณ การใช้สิ่งเหล่านี้อย่างกว้างขวางสามารถช่วยให้เวลาของคุณสนุกขึ้นและไม่ซับซ้อน

อย่าลืมระวังการกำหนดคำสั่งที่มีอยู่ใหม่ด้วยพฤติกรรมที่อาจทำลายล้าง แม้แต่การทำสิ่งที่ตรงกันข้ามและการใส่นามแฝงคำสั่งไปยังตัวแปรที่ปลอดภัยกว่า (เช่นขอให้ยืนยันก่อนที่จะลบซ้ำเสมอ) ก็สามารถกลับมากัดคุณได้ในครั้งแรกที่คุณอยู่ในระบบโดยที่คุณไม่ต้องพึ่งพามัน . หากต้องการค้นหาผู้สมัครที่สามารถสร้างนามแฝงได้ดีคุณควรค้นหาประวัติของคุณเพื่อหาคำสั่งที่คุณใช้บ่อยที่สุด

อ่าน 12 นาที