เคล็ดลับที่มีประโยชน์อย่างยิ่งหากคุณใช้เทอร์มินัล (Unite command CD with LS ... และอื่น ๆ อีกมากมาย)

ฉันเป็นคนหนึ่งที่ใช้เวลามาก สถานีปลายทาง (คอนโซลทุบตีเชลล์สิ่งที่คุณต้องการเรียกมัน) ด้วยเหตุผล X หรือ Y ฉันต้องเปลี่ยนไดเรกทอรีอยู่ตลอดเวลาและดำเนินการแก้ไข 

ในกรณีส่วนใหญ่การเปลี่ยนไดเรกทอรี (ตัวอย่างเช่น: cd / opt /) และฉันก็อยากรู้ว่ามีอะไรอยู่ในไดเร็กทอรีนั้นเพื่อให้รู้ว่าวินาทีนี้ฉันใช้อะไร ls.

นั่นคือมันจะเป็นดังนี้:

kzkggaara @ geass: ~ $ cd / opt /
kzkggaara @ geass: / opt / $
kzkggaara @ geass: / opt / $ ls
nessus

ฉันเคยพูดหลายครั้งแล้ว…ฉันค่อนข้างขี้เกียจฉันชอบทำขั้นตอนเทอร์มินัลน้อยที่สุดนั่นเป็นเหตุผลว่าทำไมหลังจากทดลองมาหลายครั้งฉันก็ทำได้ในสิ่งที่ฉันต้องการ

ดูสิ่งต่อไปนี้ซึ่งไม่มีอะไรมากไปกว่าที่ฉันป้อน / เลือก / ด้วยคำสั่งง่ายๆ cd / opt /:

อย่างที่คุณเห็นในขั้นตอนเดียว (cd / opt /) ฉันเข้าสู่ไดเร็กทอรีและยังแสดงรายการเนื้อหาของไดเร็กทอรีนั้นด้วย และ... หากยังไม่เพียงพอ มันจะแสดงให้ฉันดูเป็นสี 

นี่คือตัวอย่างของฉันที่เข้าถึง / etc / กับ cd / ฯลฯ/:


สีเข้าใจง่าย:

ไม่มีสี = ไฟล์
สีฟ้า = โฟลเดอร์
สีเขียว = ไฟล์ที่มีสิทธิ์ดำเนินการ

แต่เรามาดูเรื่องหลักกันดีกว่า ... ฉันจะใช้แค่ cd เพื่อแสดงรายการไดเรกทอรีที่ฉันเข้าถึงโดยอัตโนมัติได้อย่างไร

ที่เก็บถาวรของเรา .bashrc (อยู่ในบ้านหรือโฟลเดอร์ส่วนตัวของเรา) จะช่วยให้เราทำสิ่งนี้ก่อนอื่นเราต้องประกาศฟังก์ชันซึ่งเราจะเรียกใช้ ซีดีแอลเอส:

ฟังก์ชั่น cdls {cd "$ 1"; ls –color;}

เราวางเส้นนี้ไว้ที่ด้านใดด้านหนึ่งของ .bashrc ... นี่คือคำสั่งที่ต้องทำ:

echo "" >> $HOME/.bashrc && echo "function cdls { cd "$1"; ls --color;}" >> $HOME/.bashrc

คุณไม่จำเป็นต้องทำด้วยคำสั่งนี้เป้าหมายคือไฟล์ .bashrc มีบรรทัดนี้ดังนั้นเพียงแก้ไขไฟล์นี้ด้วยโปรแกรมแก้ไขข้อความที่คุณต้องการ (mousepad, kate, gedit, nano, vi ฯลฯ) และเพิ่ม
พวกเขาบันทึกการเปลี่ยนแปลงปิดเทอร์มินัลที่เปิดไว้และเปิดใหม่

ในนั้นเราจะเขียนสิ่งต่อไปนี้และกด [ป้อน]:

cdls $HOME

นี่น่าจะเพียงพอสำหรับการเข้าถึงโฟลเดอร์ส่วนตัวของเราในเทอร์มินัลนั้นและจะแสดงรายการเนื้อหาด้วย (พร้อมสีและทุกอย่าง)

ฉันหมายถึงอะไร ซีดีแอลเอส มันทำในสิ่งที่เราต้องการอยู่แล้ว ... ตอนนี้เราทำได้เพียงอย่างเดียว แต่ด้วย cd

สำหรับสิ่งนี้เราเพิ่มในไฟล์ .bashrc บรรทัดต่อไปนี้:

alias cd='cdls'

สิ่งนี้จะทำให้เมื่อเราเขียน cd …การกระทำที่เรากำหนดจะถูกดำเนินการจริง ซีดีแอลเอส

ฉันออกจากคำสั่งที่จะใส่บรรทัดก่อนหน้านี้โดยอัตโนมัติ:

echo "" >> $HOME/.bashrc && echo "alias cd='cdls'" >> $HOME/.bashrc

แต่อย่างที่ฉันได้กล่าวไปก่อนหน้านี้เป้าหมายคือการเพิ่มบรรทัดอื่น ๆ ลงในไฟล์เดียวกันคุณสามารถใช้โปรแกรมแก้ไขข้อความที่คุณเลือกได้

เมื่อเสร็จแล้วให้ปิดเทอร์มินัลแล้วเปิดใหม่ ... ในนั้นเขียนต่อไปนี้แล้วกด [ป้อน]:

cd /etc/

และพวกเขาจะเข้าสู่บิงโก / ฯลฯ/ และเนื้อหาของโฟลเดอร์นี้จะถูกแสดงรายการด้วยและมีสี  (เหมือนกับในรูปภาพที่แล้ว)

มันมีประโยชน์อะไร?

สำหรับคนที่อยากรู้อยากเห็นที่สงสัยว่าฟังก์ชั่นนี้หมายถึงอะไร? …ฉันให้คำอธิบายง่ายๆแก่คุณ:

ฟังก์ชั่น cdls = ที่นี่เรากำหนดว่าเรากำลังสร้างฟังก์ชันใหม่และจะเรียกว่า cdls
cd "$ 1" = และสิ่งที่ฟังก์ชั่นนี้จะทำ (จะทำทุกครั้งที่เราเรียกใช้หรือเรียกใช้งาน) คือการสร้าง cd (enter) ต่อพารามิเตอร์ที่ 1 นั่นคือ ... - »« cd / home / », « $ 1 »หมายถึง«สิ่งที่เราเขียนหลัง cd "ในตัวอย่างนี้พารามิเตอร์ที่ 1 คือ" / home / "
; = ซึ่งหมายความว่าคำสั่งนั้นสิ้นสุดที่นั่นหรือการดำเนินการที่จะดำเนินการ ... แต่ฟังก์ชันสามารถมีการดำเนินการเพิ่มเติมได้และเราจะกำหนดคำสั่งที่สองทันที
ls - สี; = หมายความว่านอกเหนือจากการกระทำใด ๆ ที่ประกาศไว้ก่อนหน้านี้แล้วยังทำให้ "ls" เป็นที่ที่เราอยู่ด้วยและ "ls" จะทำด้วยสี (–color)

สิ่งสุดท้าย ... ที่ฉลาดที่สุดพวกเขาจะรู้ว่าตรรกะนี้ (การใช้ฟังก์ชันและกำหนดค่าให้ดำเนินการหลายอย่าง) มีศักยภาพมากมายเช่น ... ถ้าฉันต้องการเข้าโฟลเดอร์และด้วย ลบอื่นนั่นคือฉันต้องการเข้าสู่ /บ้าน/ และยังลบ / opt / temp / ฟังก์ชั่นนี้จะเป็น:

function asdasd { cd "$1"; rm -Rv "$2"; }

และพิมพ์ในเทอร์มินัล asdasd / home / / opt / test / มันจะเป็นเพราะมันจะเข้าสู่พารามิเตอร์ที่ 1 (/บ้าน/) และลบวินาที (/ opt / temp /).

อย่างไรก็ตามสิ่งนี้มีศักยภาพมากมายฮิฮิมันขึ้นอยู่กับคุณที่จะใช้ประโยชน์จากมันให้มากที่สุด

หากคุณมีข้อสงสัย คำถาม ข้อร้องเรียน หรือข้อเสนอแนะ ฉันยินดีที่จะช่วยเหลือคุณ ฉันไม่ใช่ผู้เชี่ยวชาญจากระยะไกลด้วยซ้ำ แต่อย่างน้อยฉันก็อยากช่วยเหลือ 

ความนับถือ