Hướng dẫn sử dụng lệnh cd Linux cho người mới bắt đầu (8 ví dụ)

theanh

Administrator
Nhân viên
Lệnh cd là một trong những lệnh được sử dụng thường xuyên nhất trong Linux, vì nó được dùng để thay đổi thư mục (một trong những thao tác dòng lệnh cơ bản nhất) và để điều hướng trong hệ thống tệp. Trong khi hầu hết người dùng chỉ giới hạn bản thân ở cách sử dụng cơ bản cd, thì công cụ này còn cung cấp nhiều tính năng khác.

Trong hướng dẫn này, chúng ta sẽ thảo luận về lệnh cd chi tiết hơn một chút. Lưu ý rằng tất cả các ví dụ và hướng dẫn được đề cập ở đây đều đã được thử nghiệm trên Ubuntu 22.04.

1. Làm thế nào để thay đổi thư mục hiện tại của bạn?​

Bạn có thể dễ dàng thay đổi thư mục làm việc hiện tại của mình bằng cách chỉ định thư mục mới làm đối số cho lệnh cd:
Mã:
$ cd [directory-name]
Tùy thuộc vào vị trí của bạn và thư mục bạn muốn chuyển đến, bạn có thể phải chỉ định đường dẫn tuyệt đối đến thư mục sau cùng với tên của nó.

Ví dụ, giả sử bạn đang ở trong thư mục home của mình và bạn muốn chuyển sang thư mục Desktop (thường nằm bên trong thư mục home), thì đây là lệnh bạn cần chạy:
Mã:
$ cd Desktop

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22288%22%20height=%22112%22%3E%3C/svg%3E


Như bạn có thể thấy trong ảnh chụp màn hình ở trên, lệnh đầu tiên hiển thị thư mục home là thư mục làm việc hiện tại. Sau đó, lệnh cd được sử dụng để chuyển sang Desktop. Sự thay đổi trong thư mục đã được xác minh bằng lệnh pwd. Để chuyển đến thư mục cha, hãy sử dụng lệnh này:
Mã:
cd ..

2. Cách chuyển nhanh đến thư mục home bằng lệnh cd​

Công cụ này cho phép bạn chuyển nhanh đến thư mục home, bất kể vị trí hiện tại của bạn (hoặc thư mục làm việc hiện tại). Bạn có thể thực hiện việc này bằng cách sử dụng dấu ngã (~) với lệnh cd.
Mã:
$ cd ~

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22500%22%20height=%2276%22%3E%3C/svg%3E


Như bạn có thể thấy trong ảnh chụp màn hình ở trên, người dùng đã ở trong một trong thư mục con của thư mục Downloads. Nhưng sau khi sử dụng lệnh 'cd ~', thư mục home đã trở thành thư mục làm việc hiện tại.

Lưu ý rằng nếu biến môi trường $HOME được đặt thành đường dẫn thư mục home của bạn, thì chỉ cần chạy lệnh cd (không có bất kỳ đối số nào) cũng sẽ đưa bạn đến thư mục home của bạn.

3. Cách chuyển nhanh đến thư mục trước đó​

Công cụ này cũng cho phép bạn chuyển nhanh đến thư mục làm việc trước đó. Có thể truy cập tính năng này bằng lệnh cd –.
Mã:
$ cd -
Ví dụ: Giả sử bạn thường xuyên chuyển đổi giữa hai thư mục, chẳng hạn như Desktop và một thư mục con trong thư mục Downloads.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22500%22%20height=%2286%22%3E%3C/svg%3E


Sau đó thay vì đề cập đến đường dẫn thư mục tuyệt đối hoặc tương đối mỗi lần khi chuyển đổi thư mục, bạn có thể sử dụng lệnh cd – để trực tiếp đưa bạn đến thư mục làm việc trước đó.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22500%22%20height=%2283%22%3E%3C/svg%3E

4. Cách làm cho cd không theo liên kết tượng trưng​

Theo mặc định, lệnh cd theo liên_kết_tượng_báu. Ví dụ, như bạn có thể thấy bên dưới trong ảnh chụp màn hình, chúng ta có một liên kết tượng trưng có tên là symlink trỏ đến thư mục symbolic.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22500%22%20height=%2252%22%3E%3C/svg%3E


Bây giờ, khi bạn chạy lệnh cd, theo mặc định, nó sẽ theo liên kết tượng trưng.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22312%22%20height=%2280%22%3E%3C/svg%3E


Nhưng nếu bạn muốn cd di chuyển bạn đến vị trí vật lý của liên kết tượng trưng, bạn sẽ phải sử dụng dòng lệnh -P tùy chọn.
Mã:
$ cd -P [symbolic link-name]
Ví dụ:
Mã:
$ cd -P symlink

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22304%22%20height=%2288%22%3E%3C/svg%3E


Như bạn có thể thấy trong ảnh chụp màn hình ở trên, khi sử dụng tùy chọn -P, chúng tôi đã di chuyển đến vị trí vật lý của symlink.

5. CDPATH là gì và cách sử dụng nó​

Biến môi trường CDPATH có thể được sử dụng để xác định thư mục gốc cho lệnh cd.

Ví dụ, trong một trong các tùy chọn trước đó, chúng tôi đã thảo luận về lệnh 'cd ~' đưa bạn nhanh chóng đến thư mục gốc từ bất kỳ vị trí nào trong hệ thống của bạn. Tương tự như vậy, nếu bạn muốn nhanh chóng chuyển sang bất kỳ thư mục cụ thể nào khác bất kể vị trí hiện tại của bạn, bạn có thể thực hiện việc này bằng cách xác định thư mục gốc bằng cách sử dụng biến môi trường CDPATH.

Giả sử bạn chủ yếu làm việc trong một thư mục cụ thể (ví dụ như Desktop), nhưng thường xuyên chuyển đổi giữa nhiều thư mục. Bạn có thể sử dụng cd .., cd ~ hoặc đường dẫn tuyệt đối, v.v. để chuyển đổi thư mục. Mặc dù cách tiếp cận này không sai, nhưng bạn có thể thực hiện nhiệm vụ (trở về Desktop) dễ dàng hơn bằng cách sử dụng biến môi trường CDPATH - trong trường hợp đó, bạn chỉ cần chạy 'cd Desktop'.

Đối với lệnh này, bạn phải đặt /home/howtoforge làm thư mục gốc của mình:
Mã:
$ export CDPATH =/home/howtoforge
Bây giờ, bạn có thể dễ dàng và nhanh chóng chuyển sang các thư mục nằm trong /home/howtoforge, bao gồm cả Desktop. Đây là một ví dụ:


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22464%22%20height=%2288%22%3E%3C/svg%3E


Như bạn có thể thấy trong ảnh chụp màn hình ở trên, lệnh đầu tiên cho thấy người dùng đang cư trú trong một trong các thư mục con của thư mục Downloads. Nhưng bằng cách sử dụng lệnh 'cd Desktop', người dùng sẽ chuyển trực tiếp đến thư mục Desktop chuẩn (nằm bên trong thư mục home).

6. Cách đặt biệt danh cho đường dẫn​

Công cụ này cũng cho phép bạn đặt biệt danh cho đường dẫn, giúp bạn dễ dàng truy cập đường dẫn đó trên dòng lệnh. Có thể thực hiện điều này bằng cách sử dụng biến cdable_vars. Nếu biến này được đặt, đối số cho lệnh cdkhông phải là thư mục được coi là tên của một biến có giá trị là thư mục cần thay đổi.

Để sử dụng tính năng này, trước tiên chúng ta phải đặt ‘cdable_vars’ bằng cách chạy lệnh sau trên thiết bị đầu cuối:
Mã:
$ shopt -s cdable_vars
Để kiểm tra xem cdable_vars đã được đặt hay chưa, hãy chạy lệnh sau lệnh:
Mã:
$ shopt
Bây giờ, bạn có thể định nghĩa một biến chứa đường dẫn mà bạn muốn đặt biệt danh
Mã:
$ [variable-name] = [path-to-destination-directory]
Đây là một lệnh đang hoạt động Ví dụ:
Mã:
$ htf= /home/howtoforge/Downloads/screencasting-tools

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22500%22%20height=%2297%22%3E%3C/svg%3E


Giả sử bạn đang làm việc trên một dự án và dự án đó có các thư mục con ở mỗi cấp độ và bạn thường xuyên cần phải chuyển đổi giữa các thư mục đó nhiều lần. Bây giờ, việc chuyển đổi trở lại thư mục gốc từ các vị trí thư mục con, hết lần này đến lần khác, có thể tốn một chút thời gian. Đây là một trong những tình huống mà 'cdable_vars' sẽ giải cứu bạn.

7. Cách tạo thư mục và chuyển đến thư mục đó bằng một lệnh duy nhất​

Nếu muốn, bạn có thể tạo thư mục và cũng có thể di chuyển đến thư mục đó bằng một lệnh duy nhất. Để thực hiện việc này, hãy chạy lệnh sau:
Mã:
$ mkdir [dir-name] && cd $_
Ví dụ:
Mã:
$ mkdir howtoforge && cd $_

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22336%22%20height=%22104%22%3E%3C/svg%3E


Như bạn có thể đã biết, toán tử && được sử dụng để thực thi nhiều lệnh và $_ mở rộng thành đối số cuối cùng của lệnh trước đó.

8. Cách tạo thư mục có tên ‘-’ và chuyển sang thư mục đó​

Như chúng ta đã thảo luận trước đó trong hướng dẫn này, ký hiệu ‘-’ khi được sử dụng với lệnh cd sẽ đưa bạn đến thư mục làm việc trước đó. Nhưng nếu bạn muốn chuyển sang một thư mục có tên là '-' thì sao?. Đừng lo lắng, bạn có thể thực hiện việc này bằng cách sử dụng đường dẫn tương đối:
Mã:
$ cd ./-

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22248%22%20height=%22144%22%3E%3C/svg%3E



Kết luận​

Trong hướng dẫn này, chúng tôi đã cố gắng đề cập đến hầu hết các tính năng mà lệnh cd cung cấp. Vì vậy, nếu bạn thử tất cả các ví dụ mà chúng tôi đã giải thích ở đây, bạn sẽ có được ý tưởng hay về công cụ này. Để biết các tính năng và thông tin chi tiết khác, hãy truy cập trang hướng dẫn của công cụ (hoặc chạy lệnh 'info cd' hoặc 'help cd').
 
Back
Bên trên