Sửa lỗi cho tôi nếu tôi sai:
- tập lệnh "sh"! = "bash"
- Kịch bản Linux được viết bằng Bash
- Kịch bản Bash thường
#!/bin/sh - Trong GNU / Linux,
/bin/shlà Bash - Trong FreeBSD,
/bin/shkhông phải là bash, đó là sự thậtsh
Vì vậy, nếu tôi muốn sử dụng tập lệnh Linux trong FreeBSD và tôi chạy ./script.shtrong trình bao, nó sẽ chạy tập lệnh Bash trong "sh" chứ không phải Bash, vì /bin/shtrong FreeBSD không phải là Bash.
Có cách nào tôi có thể chạy các tập lệnh Bash đó mà không sửa đổi nó không? Vì vậy, không có sửa đổi cho các #!/bin/shtuyên bố trong tập tin kịch bản để chỉ ra một nơi khác?
Tôi muốn chạy Bash script máng Zsh, nếu có thể. Không muốn cài đặt Bash và vì Zsh có thể chạy các tập lệnh Bash ...
bashtập lệnh mà không cần cài đặt bash" tương đương với câu "Tôi muốn chạy tập lệnh Python mà không cần cài đặt Python". Nếu đó là một bashtập lệnh, nó sẽ được thực thi bằng bashtrình thông dịch.