เวิร์กสเตชันออนไลน์ของ OnWorks Linux และ Windows

โลโก้

ฟรีโฮสติ้งออนไลน์สำหรับเวิร์กสเตชัน

<ก่อนหน้านี้ | เนื้อหา | ถัดไป>

การสร้างคำสั่งของคุณเองด้วยนามแฝง

สำหรับประสบการณ์การเขียนโปรแกรมครั้งแรกของเรา! เราจะสร้างคำสั่งของเราเองโดยใช้ นามแฝง สั่งการ. แต่ก่อนที่เราจะเริ่ม เราต้องเปิดเผยเคล็ดลับเล็กๆ น้อยๆ เกี่ยวกับบรรทัดคำสั่ง เป็นไปได้ที่จะใส่มากกว่าหนึ่งคำสั่งบนบรรทัดโดยแยกแต่ละคำสั่งด้วยอักขระอัฒภาค มันทำงานเช่นนี้:



คำสั่ง1; คำสั่ง2; คำสั่ง3...

คำสั่ง1; คำสั่ง2; คำสั่ง3...


นี่คือตัวอย่างที่เราจะใช้:


[me@linuxbox ~]$ ซีดี /usr; ลส; ซีดี -

เกม bin kerberos lib64 แชร์ในเครื่อง tmp

[me@linuxbox ~]$ ซีดี /usr; ลส; ซีดี -

เกม bin kerberos lib64 แชร์ในเครื่อง tmp


ฯลฯ รวมถึงlib

/home/me [me@linuxbox ~]$

ลิเบกเซค ซบิน

สิ่งอำนวยความสะดวก

ฯลฯ รวมถึงlib

/home/me [me@linuxbox ~]$


ภาพ

อย่างที่เราเห็น เราได้รวมสามคำสั่งในหนึ่งบรรทัด ก่อนอื่นเราเปลี่ยนไดเร็กทอรีเป็น / usr จากนั้นแสดงรายการไดเร็กทอรีและสุดท้ายกลับไปที่ไดเร็กทอรีเดิม (โดยใช้ 'ซีดี

-') ดังนั้นเราจึงจบลงที่ที่เราเริ่มต้น ตอนนี้ เรามาเปลี่ยนลำดับนี้เป็นคำสั่งใหม่โดยใช้นามแฝง สิ่งแรกที่เราต้องทำคือสร้างชื่อให้กับคำสั่งใหม่ของเรา มาลอง "ทดสอบ" กัน ก่อนที่เราจะทำเช่นนั้น จะเป็นความคิดที่ดีที่จะค้นหาว่าชื่อ "การทดสอบ" ถูกใช้ไปแล้วหรือไม่ หากต้องการทราบ เราสามารถใช้คำสั่ง type อีกครั้ง:


[me@linuxbox ~]$ พิมพ์ทดสอบ

การทดสอบเป็นเปลือกในตัว

[me@linuxbox ~]$ พิมพ์ทดสอบ

การทดสอบเป็นเปลือกในตัว


อ๊ะ! ชื่อ "การทดสอบ" ถูกใช้ไปแล้ว มาลอง “foo”:



[me@linuxbox ~]$ พิมพ์ foo

bash: type: foo: ไม่พบ

[me@linuxbox ~]$ พิมพ์ foo

bash: type: foo: ไม่พบ

การสร้างคำสั่งของคุณเองด้วยนามแฝง


ยอดเยี่ยม! ไม่ใช้ "foo" มาสร้างนามแฝงของเรากันเถอะ:



[me@linuxbox ~]$ นามแฝง foo='ซีดี /usr; ลส; ซีดี -'

[me@linuxbox ~]$ นามแฝง foo='ซีดี /usr; ลส; ซีดี -'


สังเกตโครงสร้างของคำสั่งนี้:



นามแฝง ชื่อ='เชือก'

นามแฝง ชื่อ='เชือก'


หลังจากคำสั่ง "นามแฝง" เราจะตั้งชื่อแทนตามด้วยทันที (ไม่มีการเว้นวรรค) ด้วยเครื่องหมายเท่ากับ ตามด้วยสตริงที่ยกมาซึ่งมีความหมายที่จะกำหนดให้กับชื่อทันที หลังจากที่เรากำหนดนามแฝงของเราแล้ว สามารถใช้ได้ทุกที่ที่เชลล์คาดหวังคำสั่ง ลองดู:


[me@linuxbox ~]$ foo

เกม bin kerberos lib64 แชร์ในเครื่อง tmp

[me@linuxbox ~]$ foo

เกม bin kerberos lib64 แชร์ในเครื่อง tmp


ฯลฯ รวมถึงlib

/home/me [me@linuxbox ~]$

ลิเบกเซค ซบิน

สิ่งอำนวยความสะดวก

ฯลฯ รวมถึงlib

/home/me [me@linuxbox ~]$


ภาพ

เรายังสามารถใช้ไฟล์ ชนิด สั่งอีกครั้งเพื่อดูนามแฝงของเรา:


[me@linuxbox ~]$ พิมพ์ foo

foo มีนามแฝงว่า `cd /usr; ลส; ซีดี -'

[me@linuxbox ~]$ พิมพ์ foo

foo มีนามแฝงว่า `cd /usr; ลส; ซีดี -'


ในการลบนามแฝง the ยูนาเลีย ใช้คำสั่งเช่น:


[me@linuxbox ~]$ นามแฝง foo [me@linuxbox ~]$ พิมพ์ foo bash: type: foo: ไม่พบ

[me@linuxbox ~]$ นามแฝง foo [me@linuxbox ~]$ พิมพ์ foo bash: type: foo: ไม่พบ


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


[me@linuxbox ~]$ พิมพ์ ls

ls มีนามแฝงว่า `ls --color=tty'

[me@linuxbox ~]$ พิมพ์ ls

ls มีนามแฝงว่า `ls --color=tty'


หากต้องการดูนามแฝงทั้งหมดที่กำหนดไว้ในสภาพแวดล้อม ให้ใช้ นามแฝง คำสั่งโดยไม่มีข้อโต้แย้ง ต่อไปนี้คือนามแฝงบางส่วนที่กำหนดโดยค่าเริ่มต้นบนระบบ Fedora ลองและคิดว่าพวกเขาทั้งหมดทำอะไร:



[me@linuxbox ~]$ นามแฝง

นามแฝง l.='ls -d .* --color=tty' นามแฝง ll='ls -l --color=tty' นามแฝง ls='ls --color=tty'

[me@linuxbox ~]$ นามแฝง

นามแฝง l.='ls -d .* --color=tty' นามแฝง ll='ls -l --color=tty' นามแฝง ls='ls --color=tty'


มีปัญหาเล็กๆ อย่างหนึ่งในการกำหนดนามแฝงบนบรรทัดรับคำสั่ง พวกมันจะหายไปเมื่อเซสชั่นเชลล์ของคุณสิ้นสุดลง ในบทต่อๆ ไป เราจะมาดูวิธีการเพิ่มนามแฝงของเราในไฟล์ที่สร้างสภาพแวดล้อมทุกครั้งที่เราเข้าสู่ระบบ แต่สำหรับตอนนี้ ขอให้สนุกไปกับความจริงที่ว่าเราได้ก้าวเข้าสู่โลกของเชลล์เป็นครั้งแรก แม้ว่าจะเล็กน้อย การเขียนโปรแกรม!


ระบบปฏิบัติการคลาวด์คอมพิวติ้งยอดนิยมที่ OnWorks: