หลังจากการเรียกpushd
/ popd
in bash มันจะพิมพ์ออกจากไดเรกทอรีสแต็คปัจจุบัน มีวิธีใดที่จะป้องกันพฤติกรรมนี้ได้ เสียงรบกวนในคำสั่งนี้เป็นเรื่องแปลกในเครื่องมือยูนิกซ์
หลังจากการเรียกpushd
/ popd
in bash มันจะพิมพ์ออกจากไดเรกทอรีสแต็คปัจจุบัน มีวิธีใดที่จะป้องกันพฤติกรรมนี้ได้ เสียงรบกวนในคำสั่งนี้เป็นเรื่องแปลกในเครื่องมือยูนิกซ์
คำตอบ:
ฉันคิดว่า "เสียง" ประเภทนี้ไม่ใช่เรื่องแปลกนั่นคือเหตุผลที่คุณมักจะทำสิ่งนี้:
pushd > /dev/null
pushd
สามารถรับได้หลายอาร์กิวเมนต์คุณอาจต้องการให้เป็นpushd() { builtin pushd "$@" > /dev/null; }
และอัญประกาศจัดการชื่อไดเรกทอรีด้วยช่องว่าง
pushd &> /dev/null
บางคนทำ ฉันว่าอย่าทำอย่างนั้นเพราะ&
หมายถึงเปลี่ยนเส้นทางทั้ง stdout และ stderr โดยปกติคุณต้องการเปลี่ยนเส้นทาง stdout เท่านั้น
popd
สร้างเอาต์พุตคอนโซลดังนั้นให้พิจารณาปิดเสียงด้วยวิธีเดียวกัน
.bashrc
เช่น:pushd() { builtin pushd $1 > /dev/null; }