Tại sao shell script rất khó phát triển? Trong NodeJS tôi chỉ có thể làm:
require('./script')
và nó sẽ luôn yêu cầu tập lệnh liên quan đến tập lệnh hiện tại. Nhưng nếu tôi thử trong shell / bash:
./script.sh
nó sẽ tìm tập lệnh liên quan đến cwd
( pwd
). Có vẻ dấu chấm có nghĩa là cwd
( pwd
) chứ không phải thư mục chứa tập lệnh hiện tại như tôi mong đợi.
line 8: ./script.sh: No such file or directory
Làm thế nào để thực thi tập lệnh liên quan đến thư mục nơi tập lệnh thực thi hiện tại được đặt?
Tôi đã thử
/bin/bash script.sh
nhưng nhận được lỗi:
/bin/bash: script.sh: No such file or directory
Sau đó đã thử
script.sh
Có lỗi này
line 8: script.sh: command not found
Chỉ có giải pháp sau hoạt động tốt, nhưng vấn đề là nó không thể đọc được:
$("$(dirname "$(realpath "$0")")/script.sh")