Devops

Script shell linux để đọc danh sách các file và folder từ một file.txt và sau đó xoá chúng

#!/bin/bash

# Đường dẫn đến file.txt chứa danh sách các file và folder
FILE_LIST="file.txt"

# Đọc từng dòng trong file.txt và xoá file hoặc folder tương ứng
while read FILE_PATH; do
  # Xoá file hoặc folder nếu tồn tại
  if [ -e "$FILE_PATH" ]; then
    echo "Đang xoá $FILE_PATH"
    rm -rf "$FILE_PATH"
  else
    echo "Không tìm thấy $FILE_PATH"
  fi
done < "$FILE_LIST"

Đầu tiên, đường dẫn đến file.txt chứa danh sách các file và folder được lưu vào biến FILE_LIST.

Tiếp theo, đoạn script sử dụng vòng lặp while để đọc từng dòng trong file.txt. Trong mỗi lần lặp, đoạn script sẽ kiểm tra xem file hoặc folder tương ứng có tồn tại hay không bằng lệnh [ -e "$FILE_PATH" ].

Nếu file hoặc folder tồn tại, đoạn script sẽ sử dụng lệnh rm -rf "$FILE_PATH" để xoá chúng và hiển thị thông báo đã xoá file hoặc folder đó. Nếu không tìm thấy file hoặc folder tương ứng, đoạn script sẽ hiển thị thông báo không tìm thấy.

#!/bin/bash được gọi là "shebang" và nó là một cách để khai báo trình thông dịch script sẽ được sử dụng để chạy đoạn script đó. Trong trường hợp này, #!/bin/bash cho biết đoạn script sẽ được chạy bằng trình thông dịch Bash.

Khi bạn thực thi một file script, hệ thống sẽ sử dụng shebang để xác định trình thông dịch phù hợp để thực thi file script đó. Nếu không có shebang, hệ thống sẽ không biết phải sử dụng trình thông dịch nào để thực thi đoạn script đó.

Vì vậy, để đảm bảo rằng đoạn script được thực thi bằng trình thông dịch đúng, bạn nên khai báo shebang phù hợp trên đầu đoạn script của mình.

Bài viết liên quan

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Back to top button
Close