Bài 8. Các thao tác tìm kiếm tệp tin và các lệnh đường ống

Ở bài trước thì chúng ta đã tìm hiểu về các thao tác liên kết, đồng bộ và nén tệp tin, thư mục.

Trong bài viết này, chúng ta sẽ tìm hiểu về các thao tác tìm kiếm tệp tin, thư mục và các lệnh đường ống.

Mục lục:

  1. Chuẩn bị.
  2. Tìm hiểu về các thao tác tìm kiếm tệp tin và lệnh đường ống.
  3. Lời kết.

1. Chuẩn bị

  • Đã cài đặt máy ảo Ubuntu trên Oracle VM VirtualBox
  • Đã thực hiện thiết lập SSH tới máy chủ Ubuntu, sẵn sàng nhập lệnh

2. Tìm hiểu về các thao tác tìm kiếm tệp tin và lệnh đường ống

- Đầu tiên là các bạn khởi động máy chủ Ubuntu và kết nối với máy chủ thông qua SSH Key như bài trước, ví dụ:

ssh -i ~/.ssh/xboxuser_rsa xboxuser@127.0.0.120

2.1: Tìm kiếm thư mục hoặc tệp tin trong 1 thư mục

Cú pháp: find <thư-mục> -type <f hoặc d> -name <tên tệp tin cần tìm>

mkdir -p docs/parent/child
echo "Hello world" > docs/parent/child/example.txt
find docs/parent/child -type f -name "example.txt"
find docs -type d -name child

Note:

-type: loại tìm kiếm là file (f) hay directory (d)

-name: tên tệp cần tìm

-p: tạo toàn bộ cây thư mục cùng lúc một cách tự động mà không cần phải tạo thư mục con trước.

2.2 Tìm kiếm thư mục hoặc tệp tin bằng lệnh đường ống

Lệnh đường ống giúp chúng ta có thể thực hiện một lệnh sau lệnh trước đó, nó được thực hiện thông qua kí tự "|"

- Tìm kiếm list các tệp tin, thư mục và lọc ra tệp tin có đuôi ".txt".

mkdir -p docs/parent/child
echo "Hello world" > docs/parent/child/example.txt
ls –ahl | grep ".txt"

- Tìm kiếm nội dung trong tệp tin bằng đường ống "grep".

cat docs/parent/child/example.txt | grep "Hello"

- Cách viết khác của đường ống "grep".

grep "Hello" docs/parent/child/example.txt

- Lệnh "sed": tìm kiếm về thay thế.

Cú pháp: cat <tệp tin> | sed 's/từ_cần_tìm/từ_thay_thế/g'

cat docs/parent/child/example.txt | sed 's/Hello/Hi/g'

- Lệnh "sort": tìm kiếm và sắp xếp.

Cú pháp: find /đường-dẫn -name <tệp tin> | sort

echo "Hello" > docs/parent/child/example.txt
echo "Hello" > docs/parent/child/example1.txt
echo "Hello" > docs/parent/child/example2.txt
echo "Hello" > docs/parent/child/example0.txt
find docs/parent/child -name "*.txt" | sort

3. Lời kết

- Bài hôm nay chúng ta đã tìm hiểu về các thao tác tìm kiếm tệp tin và lệnh đường ống.

- Bài học tiếp theo chúng ta sẽ tìm hiểu vào các lệnh thao tác với "user".


Tác giả: Đỗ Thiên Giang

Chú ý: Tất cả các bài viết trên TEDU.COM.VN đều thuộc bản quyền TEDU, yêu cầu dẫn nguồn khi trích lại trên website khác.

Lên trên