Tôi không thể biết mình đã ước bao nhiêu lần cho một lệnh vừa tạo thư mục vừa chuyển đến thư mục đó. Về cơ bản, tôi muốn tương đương như sau:
mkdir -p /arbitrarily/long/path; cd /arbitrarily/long/path
nhưng chỉ phải gõ /arbitrarily/long/path
một lần, đại loại như:
mk-cd /arbitrarily/long/path
Tôi đã thử tạo một tập lệnh để làm điều này, nhưng nó chỉ thay đổi thư mục trong tập lệnh. Tôi muốn thư mục trong shell cũng đã thay đổi.
#!/bin/bash
mkdir $1
cd $1
export PWD=$PWD
Làm thế nào tôi có thể làm cho công việc này?
cd
thông tin có liên quan cực kỳ thú vị (quay lại thư mục trước bằng cách sử dụng cd -
, sử dụng pushd
và popd
để duy trì "ngăn xếp" thư mục): superuser.com/questions/324512/
mkdir -p /very/long/path
, sau đó sử dụng cd
, khoảng trắng, rồi nhấn Alt + .
để lặp lại đối số cuối cùng, tức là tên thư mục.
mkdir -p /very/long/path; cd !#:2
. Chuỗi !#:2
sẽ mở rộng để đối số nr. 2 (nghĩa là đối số thứ ba /very/long/path
, khi đếm bắt đầu bằng 0).
!$
. Tôi sử dụng thủ thuật đặc biệt này mọi lúc, mặc dù bạn có thể làm nhiều hơn nữa với việc mở rộng lịch sử .
cd
, bạn đã chọn một trường hợp đặc biệt ngay từ đầu. : D