Làm sao chỉ định nhiều tệp cùng lúc?
Hầu hết các lệnh shell sẽ chạy trên nhiều tệp nếu bạn đưa cho chúng nhiều tên tệp. Ví dụ, bạn có thể lấy cột đầu tiên từ tất cả các tệp dữ liệu theo mùa cùng lúc như sau:
cut -d , -f 1 seasonal/winter.csv seasonal/spring.csv seasonal/summer.csv seasonal/autumn.csv
Nhưng việc gõ lặp đi lặp lại nhiều tên tệp là một ý tưởng tệ:
vừa tốn thời gian,
và sớm muộn gì bạn cũng sẽ bỏ sót một tệp hoặc lặp lại tên tệp.
Để giúp bạn làm việc hiệu quả hơn,
shell cho phép dùng wildcard để chỉ định một danh sách tệp bằng một biểu thức duy nhất.
Wildcard phổ biến nhất là *,
nghĩa là "khớp không hoặc nhiều ký tự".
Dùng ký tự này,
chúng ta có thể rút gọn lệnh cut ở trên thành:
cut -d , -f 1 seasonal/*
hoặc:
cut -d , -f 1 seasonal/*.csv
Bài tập này là một phần của khóa học
Nhập môn Shell
Hướng dẫn bài tập
Viết một lệnh duy nhất dùng head để lấy ba dòng đầu tiên từ cả seasonal/spring.csv và seasonal/summer.csv, tổng cộng sáu dòng dữ liệu, nhưng không lấy từ các tệp dữ liệu autumn hoặc winter.
Hãy dùng wildcard thay vì gõ đầy đủ tên các tệp.
Bài tập tương tác thực hành
Biến lý thuyết thành hành động với một trong các bài tập tương tác của chúng tôi
Bắt đầu bài tập