ฉันไม่สามารถบอกได้ว่ากี่ครั้งที่ฉันปรารถนาคำสั่งที่จะสร้างไดเรกทอรีและย้ายไปยังไดเรกทอรีนั้น โดยทั่วไปฉันต้องการเทียบเท่าต่อไปนี้:
mkdir -p /arbitrarily/long/path; cd /arbitrarily/long/path
แต่ต้องพิมพ์/arbitrarily/long/path
ครั้งเดียวเท่านั้น:
mk-cd /arbitrarily/long/path
ฉันพยายามสร้างสคริปต์เพื่อทำสิ่งนี้ แต่เปลี่ยนเฉพาะไดเรกทอรีภายในสคริปต์ ฉันต้องการไดเรกทอรีในเปลือกที่มีการเปลี่ยนแปลงเช่นกัน
#!/bin/bash
mkdir $1
cd $1
export PWD=$PWD
ฉันจะทำงานนี้ได้อย่างไร
cd
ข้อมูลที่เกี่ยวข้องสุดยอด(กลับไปยังไดเรกทอรีก่อนหน้าโดยcd -
ใช้ใช้pushd
และpopd
เพื่อรักษา "สแต็ค" ของไดเรกทอรี): superuser.com/questions/324512/ …
mkdir -p /very/long/path
จากนั้นใช้cd
เว้นวรรคแล้วกด Alt + .
เพื่อทำซ้ำอาร์กิวเมนต์สุดท้ายเช่นชื่อ dir
mkdir -p /very/long/path; cd !#:2
คุณยังสามารถใช้ สตริง!#:2
จะขยายเป็นอาร์กิวเมนต์ nr 2 (นั่นคืออาร์กิวเมนต์ที่สาม/very/long/path
เนื่องจากการนับเริ่มต้นด้วยศูนย์)
!$
เพียงง่ายยิ่งขึ้นเนื่องจากเป็นอาร์กิวเมนต์สุดท้ายของคำสั่งสุดท้ายที่คุณสามารถใช้ ผมใช้เคล็ดลับนี้โดยเฉพาะตลอดเวลาแม้ว่าจะมีจำนวนมากเป็นมากกว่าที่คุณสามารถทำอะไรกับการขยายตัวของประวัติศาสตร์
cd
คุณเลือกกรณีพิเศษตั้งแต่เริ่มต้น : D