Mỗi khi tôi chạy một tập lệnh bằng bash scriptname.shdòng lệnh trong Debian, tôi nhận được Command Not foundvà sau đó là kết quả của tập lệnh.
Tập lệnh hoạt động nhưng luôn có một Command Not Foundcâu lệnh được in trên màn hình cho mỗi dòng trống. Mỗi dòng trống dẫn đến một lệnh không được tìm thấy.
Tôi đang chạy tập lệnh từ /varthư mục.
Đây là kịch bản:
#!/bin/bash
echo Hello World
Tôi chạy nó bằng cách gõ như sau:
bash testscript.sh
Tại sao điều này xảy ra?
bash -x scriptname.shđể theo dõi lỗi. - Trong trường hợp của tôi, đó là một tệp sh được lưu trong Windows với VSCode và kết thúc dòng là "CRLF". Trong VSCode ở góc dưới cùng bên phải, bạn có thể thay đổi dấu kết thúc dòng từ "CRLF" thành "LF". Đã tải lên tệp này và cuối cùng có thể thực thi nó với bash scriptname.sh.