ทุกคนสามารถแนะนำฉันให้สร้างคำสั่งที่กำหนดเองใน Unix / Linux
ทุกคนสามารถแนะนำฉันให้สร้างคำสั่งที่กำหนดเองใน Unix / Linux
คำตอบ:
สร้างสคริปต์ทุบตีในโฟลเดอร์ / usr / bin ของคุณซึ่งควรมีลักษณะดังนี้
#!/bin/bash
Whatever combination of commands you want to run when you type this thing.
มันง่ายมากจริงๆ
เพียงตั้งชื่อสคริปต์ทุบตีสิ่งที่คุณต้องการพิมพ์ลงในเทอร์มินัลและทำให้มันยอดเยี่ยม: chmod +x filename
และคุณทำได้ดี!
./filename
อัพเดตตัวแปรพา ธ ของคุณเพื่อรวมไดเรกทอรีถังขยะนี้ ใส่นี้ใน.profile
หรือ.bash_profle
ไฟล์ที่จะทำให้มันถาวร
export PATH=$PATH":$HOME/bin"
สร้างสคริปต์ว่า "hello" และเก็บไว้ในไดเรกทอรี bin ของคุณ $ chmod +x hello
ให้ผู้ได้รับอนุญาตไปยังสคริปต์สวัสดีโดย
#!/bin/bash
echo My first program
โหลดซ้ำ.profile
หรือ.bash_profle
:
$ . ~/.bash_profile
จากไดเรกทอรีใด ๆ คุณเพียงพิมพ์:
$ hello
My first program
bin
โฟลเดอร์ด้วยคำตอบมากมายที่นี่ มีปัญหาอะไรไหมถ้าเป็น.bin
แทนที่จะเป็นbin
. ฉันจู้จี้จุกจิกเกี่ยวกับhome
รูปลักษณ์ของฉันและฉันไม่ต้องการโฟลเดอร์พิเศษเพียงเพราะ
zsh
ติดตั้งหรือ$PATH
แต่มันก็จบลงด้วยการที่ไม่ได้ทำงานไม่ไม่ทุนchmod -x hello
-X
ฉันพยายามแทนchmod 755 hello
, ในขณะที่ฉันไม่แน่ใจเกี่ยวกับความเสี่ยงด้านความปลอดภัยเกี่ยวกับคำสั่งนี้, จริง ๆ แล้วให้ฉันเรียกใช้hello
. ใครบ้างมีคำอธิบายสำหรับเรื่องนี้? ฉันคิดว่ามันเป็นปัญหาเกี่ยวกับอายุ?
chmod +x hello
เพื่อเพิ่มสิทธิ์ 'Run' ให้กับสคริปต์ chmod -x hello
จะตรงกันข้าม - ลบสิทธิ์ 'เรียกใช้' (สังเกตเห็นความแตกต่างของเครื่องหมายบวก / ลบในคำตอบและในความคิดเห็นของคุณ)
ง่ายสร้างนามแฝง
สมมติว่าคุณต้องการเขียนคำสั่งลงซีดีในไดเรกทอรีดาวน์โหลดของคุณ และคุณต้องการเรียกมันว่า cdd
alias cdd='cd ~/Downloads'
คุณสามารถสร้างคำสั่งใด ๆ ที่คุณต้องการ
นี่คือข้อมูลเพิ่มเติม:
http://www.mediacollege.com/linux/command/alias.html
ส่วนใหญ่ถ้าไม่ใช่ทั้งหมดตอนนี้ลีนุกซ์รุ่นลีนุกซ์จะมีสคริปเล็ก ๆ ใน ~ / .bashrcที่มีลักษณะเกือบจะเหมือนกัน:
if [ -e ~/.bash_aliases ]
then
. ~/.bash_aliases
fi
นี่หมายถึงคุณสามารถสร้างคำสั่งของคุณเอง (หรือที่เรียกว่า ' aliases
' โดยปกติแล้วจะอ้างถึงคำสั่งที่มีอยู่พร้อมด้วยอาร์กิวเมนต์บางอย่างที่คุณต้องใช้เสมอหรือรายการคำสั่งที่ต้องดำเนินการตามลำดับ)
การกระจาย Linux ของคุณส่วนใหญ่จะไม่มีไฟล์. bash_aliases สร้างขึ้นในบ้านของคุณเว้นแต่ว่าคุณได้ทำด้วยตนเองแล้ว ดังนั้นในการสร้างไฟล์ให้พิมพ์คำสั่งต่อไปนี้:
touch ~/.bash_aliases
ตอนนี้ไฟล์ดังกล่าวจะถูกเรียกใช้งานโดยอัตโนมัติทุกครั้งที่คุณปิดสถานีใหม่
สิ่งที่คุณสามารถทำได้คือสร้างรายการชื่อแทนและเพิ่มไปยังไฟล์นั้นเพื่อใช้ในภายหลัง ตัวอย่างเช่นrm
คำสั่ง (ลบ) โดยค่าเริ่มต้นจะไม่ขอให้คุณยืนยันคำขอของคุณเมื่อคุณบอกให้ลบไฟล์ / ไดเรกทอรี อย่างไรก็ตามมีข้อโต้แย้งที่บอกrm
ให้ขอให้คุณยืนยันคำขอของคุณ, -i
. ดังนั้นrm -i filePath
จะแสดงข้อความถามว่าคุณแน่ใจหรือไม่ว่าต้องการลบไฟล์ที่ระบุ ตอนนี้ถ้าคุณลบไฟล์โดยไม่ตั้งใจคุณอาจจะลืมใส่-i
ตัวเลือกและนั่นคือสิ่งที่alias
เป็นประโยชน์อย่างมาก พิมพ์คำสั่งต่อไปนี้
echo "alias rm='\rm -i'" >> ~/.bash_aliases
จะบอกBash
ว่าทุกครั้งที่คุณร้องขอให้ลบไฟล์ข้อความยืนยันจะปรากฏขึ้นให้คุณ แน่นอนว่ามีอะไรอีกมากมายที่คุณสามารถทำได้ - นี่เป็นเพียงพื้นฐาน
หากคุณต้องการที่จะเรียนรู้วิธีการใช้คำสั่งพื้นฐานบางอย่าง (เช่นcd
, touch
, rm
, mkdir
, pushd
, popd
, ฯลฯ ) และ / หรือคนที่มีความซับซ้อนมากขึ้นผมอยากแนะนำให้เป็นหนังสือที่ดีมากที่คุณสามารถมีบนชั้นวางหนังสือของคุณเป็นข้อมูลอ้างอิงที่เรียกว่า
แนวทางปฏิบัติในการคำสั่ง Linux บรรณาธิการและเปลือกเขียนโปรแกรมโดยมาร์ก G โซเบลล์ ไอ: 978-0133085044