คำถามติดแท็ก alias

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

4
aliasing cd to pushd - เป็นความคิดที่ดีหรือไม่?
ควรใช้นามแฝงต่อไปนี้หรือไม่: cd() { pushd $1; } ในทุบตี? ฉันคิดว่ามันจะมีประโยชน์มากเพราะฉันสามารถใช้ชุดข้อมูลpopdแทนที่จะเป็นเพียงcd -ครั้งเดียว มีกรณีใดบ้างที่สิ่งนี้อาจเป็นปัญหาหรือไม่?

2
นามแฝงเทียบกับการส่งออกสำหรับคำสั่งง่ายๆ
สำหรับคำสั่งง่ายๆเช่นlessจะดีกว่าไหมถ้าจะสร้าง alias หรือส่งออกตัวเลือก? มีประโยชน์อย่างใดอย่างหนึ่งมากกว่าอีก? ตัวอย่างเช่นหากฉันต้องการlessใช้-Rตัวเลือกเพื่อแสดงอักขระดิบเสมอโซลูชันทั้งสองนี้ทำงาน: export LESS='-R' alias less='less -R' สำหรับกรณีง่าย ๆ แบบนี้มีประโยชน์อย่างใดอย่างหนึ่งต่ออีกหรือไม่ สถานการณ์ใดที่หนึ่งจะทำให้เกิดปัญหาและอื่น ๆ จะไม่? ผมเคยอ่านผ่านหลายinfoและmanหน้าเช่นเดียวกับ Googling มัน แต่ฉันยังคงติดอยู่กับเรื่องนี้
33 bash  zsh  alias 

6
ฉันจะสร้างนามแฝงสำหรับคำสั่ง git [action] (ซึ่งมีช่องว่าง) ได้อย่างไร
นามแฝงของฉันส่วนใหญ่เป็นของแบบฟอร์มนี้: alias p='pwd' ฉันต้องการนามแฝงgit commitเพื่อที่จะทำgit commit -v แต่การพยายามสร้างนามแฝงที่มีช่องว่างทำให้เกิดข้อผิดพลาด: $ alias 'git commit'='git commit -v' -bash: alias: `git commit': invalid alias name
29 bash  shell  terminal  alias  git 

3
ฉันจะลบ Alias ​​ออกจาก Shell ได้อย่างถาวรได้อย่างไร
เมื่อฉันไม่ได้อยู่ใกล้กับคอมพิวเตอร์ของฉันผู้ชายบางคนได้รับมันและตั้งชื่อแทนสำหรับlsในโฟลเดอร์รากของฉัน 'yes NeverGonnaGiveYouUp'เขาตั้งค่าให้ ตอนนี้เมื่อฉันอยู่ในโฟลเดอร์รูทของฉันแล้วพิมพ์lsฉันจะได้วนวนไม่สิ้นสุดของ NeverGonnaGiveYouUp มันทำให้ฉันบ้าและไม่รู้วิธีกำจัดมัน ผมได้พยายามแล้วunaliasและunalias -aแต่ผู้ที่เพิ่งเอามันออกไปชั่วคราว เมื่อฉันปิดเชลล์และเปิดใหม่อีกครั้งมันจะกลับมา ฉันจะกำจัดอึนี้ได้อย่างไร
28 shell  terminal  alias 

3
l, ls & la - อะไรคือความแตกต่างและมีคำสั่งเหล่านี้อีกหรือไม่
ดังนั้นด้วยการพิมพ์หลาย ๆ คำสั่งฉันพบว่ามันมีไม่เพียงlsแต่lและlaด้วย ดูเหมือนจะไม่มีmanรายการใด ๆบน Ubuntu 12.14 พวกเขาดูเหมือนจะทำสิ่งที่คล้ายกันและมีความแตกต่างเล็กน้อย $ ls app config CONTRIBUTING.md doc Gemfile Guardfile LICENSE MAINTENANCE.md Procfile Rakefile script tmp VERSION CHANGELOG config.ru db features Gemfile.lock lib log PROCESS.md public README.md spec vendor $ la app CHANGELOG config.ru db features Gemfile .git Guardfile LICENSE MAINTENANCE.md Procfile Rakefile .rspec …
25 ubuntu  alias  bashrc 

2
Grep alias - หมายเลขบรรทัดยกเว้นว่าอยู่ในขั้นตอน
ฉันต้องการสร้างนามแฝงทุบตีสำหรับ grep ที่เพิ่มหมายเลขบรรทัด: alias grep='grep -n' แต่แน่นอนว่าจะเพิ่มหมายเลขบรรทัดในท่อเช่นกัน เวลาส่วนใหญ่ (และไม่มีข้อยกเว้นอยู่ในใจ) ฉันไม่ต้องการหมายเลขบรรทัดภายในไพพ์ไลน์ (อย่างน้อยก็ภายในก็น่าจะดีถ้ามันยังอยู่) และฉันไม่ต้องการเพิ่มเซด / awk / ตัดเข้าไป ไปป์ไลน์เพื่อนำออกไป บางทีความต้องการของฉันอาจจะง่ายขึ้น "เพียงเพิ่มหมายเลขบรรทัดหาก grep เป็นคำสั่งเดียวในบรรทัด" มีวิธีการทำเช่นนี้โดยไม่ต้องนามแฝงที่น่าเกลียดโดยเฉพาะอย่างยิ่ง?

1
นามแฝงคำสั่งให้ทำงานในพื้นหลัง
ฉันต้องการแป้นพิมพ์ลัดเพื่อทำงานดังนี้: > e foo.txt เพื่อขยายเป็น > emacs foo.txt & ใช้ง่ายalias e=emacsแต่ฉันจะแทรก&ชื่อไฟล์หลังได้อย่างไร ฉันรู้ว่ามันอาจเป็นไปไม่ได้ที่จะใช้เพียงอย่างเดียวaliasดังนั้นฉันจะยอมรับโซลูชันทุบตีใด ๆ หากจำเป็นต้องใช้เชลล์สคริปต์โปรดอธิบายวิธีการทำงาน
25 bash  alias 

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

2
จะรีเซ็ตสภาพแวดล้อมของเชลล์ได้อย่างไร?
ปัญหานี้บักฉันมาระยะหนึ่งแล้วและถึงแม้ว่าฉันคิดว่าฉันพบคำตอบของฉันผ่านEnvWatcherแต่น่าเสียดายที่มันใช้ได้กับ Bash เท่านั้น และฉันใช้ zsh ฉันต้องการจำลองสิ่งที่ env-watcher ทำในระดับที่น้อยกว่านี้ แต่ฉันต้องรู้ว่ามีคำสั่งที่ฉันสามารถรีเซ็ตเชลล์ให้อยู่ในระดับเริ่มต้นที่สะอาดหรือไม่ ตัวอย่างเช่นฉันต้องการมีเวิร์กโฟลว์ต่อไปนี้ source some-functions alias another-thing export SVN_EDITOR=vim RESET-ZSH # none of the above are valid any more มีความเป็นไปได้ในตัวเช่นนี้หรือฉันกำลังไล่ล่าผีเสื้อ?

2
วิธีทำให้ฟังก์ชัน zsh“ ถูกต้อง” จดจำการตัดสินใจสะกดคำของฉัน
ผมได้เปิดใช้งานการแก้ไข (ฉันจะไม่เรียกว่าการแก้ไขอัตโนมัติเฉพาะเพราะปัญหานี้) ใน zsh โดยการเปิดใช้ในของฉันsetopt correct.zshrc ตอนนี้เมื่อฉันพิมพ์dtaeเทอร์มินัลฉันจะได้รับ: dtae zsh: correct 'dtae' to 'date' [nyae]? y Tue Mar 31 11:39:31 CEST 2015 ณ จุดนี้ฉันต้องการให้ zsh จดจำการตัดสินใจของฉัน ดังนั้นในครั้งต่อไปที่ฉันพิมพ์dtaeควรแก้ไขให้เป็นdate[1] โดยอัตโนมัติ อย่างไรก็ตามสิ่งนี้ไม่ได้เกิดขึ้นและ zsh ถามฉันอีกครั้งว่าจะทำอย่างไร: dtae zsh: correct 'dtae' to 'date' [nyae]? [1] เว้นแต่แน่นอนถ้าในเวลานั้นมีdtaeคำสั่งหรือนามแฝงอยู่จริง ปรับปรุง: ฉันจัดการเพื่อแก้ไขซอร์สโค้ด zsh (ไฟล์utils.c, ฟังก์ชั่นspckword) เพื่อสร้างไฟล์ที่กำหนดเองที่มีชื่อแทนที่สร้างขึ้นโดยอัตโนมัติด้วยการเรียกใช้ฟังก์ชัน "แก้ไข" ของ zsh: เดิม: if …

4
แบ่งปันชื่อแทนและการตั้งค่าเส้นทางระหว่าง zsh และ bash
zshเปลือกที่ผมปกติใช้เป็น ฉันมีนามแฝงหลายสีเพื่อเปิดใช้งานในโปรแกรมบางอย่างเช่นและls grepฉันได้กำหนดเส้นทางที่กำหนดเองเพื่อให้ฉันสามารถเรียกใช้งานโปรแกรมในสถานที่ที่ไม่ได้มาตรฐาน (เช่นใน~/bin/) ฉันจะไม่เปลี่ยนเปลือกรากไปzshแต่ฉันต้องการที่จะแบ่งปันการตั้งค่าเหล่านี้เพื่อให้รากที่สามารถมีได้เช่นกัน ผมพบว่าไม่ได้มีการจัดหาzsh /etc/profileฉันสามารถหามาได้/etc/zsh/zprofileแต่ฉันต้องการวิธีที่เหมาะสมกว่า
24 shell  bash  zsh  path  alias 

4
ทำไม sudo ไม่สนใจชื่อแทน
ฉันใช้ Ubuntu 10.04 และฉันใช้upstartสำหรับการจัดการภูต แอปพลิเคชันองค์กรของฉันทำงานเป็น daemon และต้องทำงานเป็น root เนื่องจากสิทธิ์ต่างๆ เช่น: sudo start my-application-long-ID sudo stop my-application-long-ID etc ฉันอยากจะแนะนำการaliasย่อคำสั่งเหล่านี้เป็นสิ่งที่ต้องการ: alias startapp='sudo start my-application-long-ID' และเรียกใช้เป็นstartappและใช้งานได้ แต่ฉันไม่ต้องการมี sudo ในนามแฝง alias startapp='start my-application-long-ID' เมื่อไม่ได้ทำงานโดยใช้กลับsudo startappsudo: startapp: command not found อย่างไรก็ตามเมื่อฉันเพิ่มนามแฝง: alias sudo='sudo ' sudo startapp ตอนนี้ใช้ได้ แต่ฉันยังสงสัยว่าทำไม sudo ไม่สนใจชื่อแทน
22 shell  sudo  alias 

4
ฉันจะบอกได้อย่างไรว่านามแฝงคำสั่งย่อมาจากอะไร?
llเป็นนามแฝงทั่วไปใน distros Linux จำนวนมาก ฉันจะบอกได้อย่างไรว่าชื่อแทนเป็นอย่างไร ฉันลองตรวจสอบ.bashrcแล้ว แต่ฉันไม่สามารถบอกได้ว่าอะไรที่llเทียบเท่า
22 bash  alias 

4
เป็นไปได้หรือไม่ที่จะรวมไฟล์ไว้ในไฟล์กำหนดค่าของ zsh? อย่างไร?
ฉันต้องการไฟล์เช่น f ที่มีนามแฝง zsh เท่านั้น (เหตุผลความบริสุทธิ์) แล้วฉันต้องการรวมฉแฟ้มในของฉัน.zshrcไฟล์เพื่อให้นามแฝงที่กำหนดไว้ในฉมองเห็นได้ใน.zshrc มันเป็นไปได้? ถ้าเป็นเช่นนั้นฉันสามารถสร้างสคริปต์เช่น my_alias( $my_alias ll 'ls -l') ซึ่งเพิ่มชื่อแทนให้ไฟล์f แน่นอนฉันสามารถทำได้ $echo {alias command} >> ~/.zshrc แต่สิ่งนี้ทำให้. zshrcเป็นระเบียบหนึ่ง นอกจากนี้มันเป็นอย่างไรในทุบตี? UPDATE หากใครบางคนแบ่งปันความคิดของฉันนี่คือวิธีการแก้ขอบคุณ phunehehe: # source aliases ALIASFILE=~/.aliasesrc source $ALIASFILE function add_alias() { if [[ -z $1 || -z $2 || $# -gt 2 ]]; then echo …

1
วิธีค้นหาไฟล์ที่กำหนดนามแฝง
ฉันมีปัญหาฉันไม่แน่ใจว่าจะไปไหนมาไหน บางที่ในระบบของฉันฉันมีชื่อแทนเช่น: alias subl=\''/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl'\' ฉันไม่แน่ใจว่าไฟล์นี้เป็นอะไรและฉันต้องการที่จะเปลี่ยน (หรือลบออกจริง) มัน ฉันสามารถ unalias ได้ใน. zshrc ของฉัน แต่นั่นไม่ใช่วิธีการแก้ปัญหาที่สวยงาม เมื่อฉันวิ่งalias | grep sublมันแสดงนามแฝงแก่ฉัน มีวิธีที่ฉันจะให้มันสะท้อนเส้นทางไปยังไฟล์ที่กำหนดนามแฝงหรือไม่? ขอบคุณ
22 zsh  alias  search  oh-my-zsh 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.