Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม BASH

การสอน Unix Bash Alias ​​– จัดการคำสั่ง Alias ​​เช่น Jennifer Garner

การสอน Unix Bash Alias ​​– จัดการคำสั่ง Alias ​​เช่น Jennifer Garner

เอื้อเฟื้อภาพ:pchow98

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

คำสั่งนามแฝง เป็นการแทนที่สตริงอย่างง่ายของข้อความหนึ่งเป็นอีกข้อความหนึ่ง เมื่อถูกใช้เป็นคำแรกของคำสั่งอย่างง่าย

ในบทความนี้ให้เราตรวจสอบวิธีตั้งค่า / ยกเลิกการตั้งค่า bash alias อย่างถาวรและชั่วคราว ให้เราตรวจสอบตัวอย่างนามแฝง bash ที่มีประโยชน์ซึ่งคุณสามารถใช้ในไฟล์เริ่มต้น bash ของคุณ

บทความนี้เป็นส่วนหนึ่งของชุดบทแนะนำ bash ที่กำลังดำเนินอยู่ อ้างถึงบทช่วยสอนก่อนหน้าของเราเกี่ยวกับการแนะนำ bash และสถานะการออก bash

วิธีตั้งค่านามแฝง

สามารถกำหนดนามแฝงบนบรรทัดคำสั่ง ใน .bash_profile หรือใน .bashrc โดยใช้ไวยากรณ์ต่อไปนี้:

$ alias name='unix command with options'
  • นามแฝง – เป็นเชลล์ในตัว
  • ชื่อ – ชื่อง่าย ๆ ที่ผู้ใช้กำหนดสำหรับนามแฝง
  • command – คำสั่ง unix ใด ๆ ที่อาจมีตัวเลือก

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

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

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

นามแฝงต่อไปนี้อาจมีประโยชน์ คุณสามารถตั้งค่านามแฝงเหล่านี้ในไฟล์ ~/.bashrc

ตัวอย่างนามแฝงที่พบบ่อยที่สุด

นามแฝงต่อไปนี้พร้อมให้คุณใช้งานได้ทันที นามแฝงที่คุณชื่นชอบคืออะไร

เปิดไฟล์ที่แก้ไขล่าสุดเป็นกลุ่ม

alias Vim="vim `ls -t | head -1`"

ค้นหาไฟล์ขนาดใหญ่ 5 อันดับแรก

alias findbig="find . -type f -exec ls -s {} \; | sort -n -r | head -5"

Grep สำหรับกระบวนการทุบตี

alias psg="ps -aux ¦ grep bash"

รายการรวมถึงไฟล์ที่ซ่อนอยู่พร้อมตัวบ่งชี้และสี

alias ls='ls -aF --color=always'

รายการในรูปแบบยาว

alias ll='ls -l'

เพื่อล้างประวัติและหน้าจอทั้งหมด

alias hcl='history -c; clear'

สร้างคำสั่งพื้นฐานแบบโต้ตอบและแบบละเอียด

alias cp="cp -iv" # interactive, verbose
alias rm="rm -i" # interactive
alias mv="mv -iv" # interactive, verbose
alias grep="grep -i" # ignore case

นามแฝงที่ใช้งานง่ายสำหรับคำสั่งที่ใช้บ่อย

alias x="exit"

ล้างหน้าจอและไฟล์รายการ

alias cls='clear;ls'

การใช้พื้นที่ดิสก์ของระบบไฟล์

alias dus='df -h'

เพื่อไปยังไดเร็กทอรีต่างๆ

alias ..='cd ..'
alias ...='cd ../..'

อ้างถึงบทความนี้สำหรับนามแฝงคำสั่ง cd เพิ่มเติม

ตัวอย่างนามแฝงที่ควรแก้ไขสำหรับสภาพแวดล้อมของคุณ

ตัวอย่างนามแฝงที่ให้ไว้ในส่วนนี้ควรได้รับการแก้ไขตามสภาพแวดล้อมของคุณก่อนใช้งาน

ลบล็อค firefox

alias rm_fire_lock='/bin/rm .mozilla/firefox/NAME.default/.parentlock' # edit NAME

การเข้าสู่ระบบเครื่องระยะไกลผ่าน ssh ด้วยชื่อล็อกอิน

alias server_name='ssh 192.168.1.1 -l tom' # change the ip & user name
alias ser2='ssh www.dbserver.com -l kgf' # create as many alias as required.

การเข้าสู่ระบบเซิร์ฟเวอร์ cvs ระยะไกล

export CVS_RSH=/usr/local/bin/ssh
alias cvl='cvs -d :ext:[email protected]:/usr/local/cvsroot' # change required.

ถอนการติดตั้ง cdrom

alias umnt='umount /mnt/cdrom' # cdrom / thumb drive.

วิธีการดูนามแฝงทั้งหมด

เรียกใช้นามแฝงโดยไม่มีอาร์กิวเมนต์เพื่อดูรายการนามแฝงที่ตั้งค่าไว้ในเชลล์

$ alias
alias ..='cd ..'
alias ...='cd ../..'
alias mnt='mount /mnt/cdrom'
alias umnt='umount /mnt/cdrom'
alias dus='df -h'

หากต้องการดูนามแฝงเฉพาะ ให้ป้อนคำสั่งในรูปแบบ “นามแฝง aliasname” ดังที่แสดงด้านล่าง

$ alias dus
alias dus='df -h'

วิธีหยุดใช้นามแฝงชั่วคราว

เมื่อคุณต้องการเรียกใช้คำสั่งแทนนามแฝง คุณต้องหลีกหนีและเรียก

$ \aliasname

ตัวอย่างเช่น นามแฝง cp=”cp -iv” จะขอให้คุณยืนยันว่าคุณกำลังจะเขียนทับไฟล์หรือไม่ สิ่งนี้อาจสร้างความรำคาญได้เมื่อคุณคัดลอกไฟล์จำนวนมากที่คุณรู้อยู่แล้วว่ากำลังจะเขียนทับ คุณอาจต้องการใช้คำสั่ง cp ปกติแทน cp-alias ชั่วคราว

ดังนั้น หากมีนามแฝง cp อยู่ แต่คุณต้องการใช้คำสั่ง cp แทน ให้หลีกเลี่ยงนามแฝงชั่วคราวดังที่แสดงด้านล่าง:

\cp * /backup/files/

วิธีการลบนามแฝง

unalias เป็นเชลล์ในตัวเพื่อลบนามแฝง วิธีลบนามแฝงเฉพาะ:

$ unalias hcl
 where unalias is a shell built-in.
 mnt is an alias name.
$ hcl
-bash: hcl: command not found

วิธีการลบนามแฝงทั้งหมด

unalias พร้อมตัวเลือก -a ลบนามแฝงทั้งหมด

$ unalias -a
$ alias

หมายเหตุ :ฟังก์ชั่นเชลล์เร็วขึ้น นามแฝงจะถูกค้นหาหลังจากฟังก์ชันต่างๆ และทำให้การแก้ไขช้าลง แม้ว่านามแฝงจะเข้าใจได้ง่ายกว่า แต่ควรใช้ฟังก์ชันเชลล์มากกว่านามแฝงในเกือบทุกวัตถุประสงค์ คุณควรระมัดระวังอย่างมากในการแทนที่คำสั่งมาตรฐานด้วยนามแฝงหรือฟังก์ชัน

นามแฝงที่แสดงในบทความนี้มีอยู่ในไฟล์นามแฝง bash ตัวอย่างนี้ ซึ่งคุณสามารถคัดลอก/วางและใช้กับไฟล์เริ่มต้น bash ของคุณได้

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