Tôi cố gắng để chạy một chương trình như thế này:Làm thế nào để buộc bash/zsh để đánh giá tham số như nhiều tranh cãi khi áp dụng cho một lệnh
$CMD $ARGS
nơi $ ARGS là một tập hợp các đối số với không gian. Tuy nhiên, zsh dường như đang chuyển nội dung của $ ARGS thành một đối số duy nhất cho tệp thực thi. Dưới đây là ví dụ cụ thể:
$export ARGS="localhost -p22"
$ssh $ARGS
ssh: Could not resolve hostname localhost -p22: Name or service not known
Có cờ bash hoặc zsh kiểm soát hành vi này không?
Lưu ý rằng khi tôi đặt loại lệnh này trong tập lệnh $!/Bin/sh, nó thực hiện như mong đợi.
Cảm ơn,
SetJmp
Không có nghĩa là zsh không tuân thủ POSIX? – jpalecek
@jpalecek Nó không phải là trừ khi yêu cầu một cách rõ ràng (bằng cách thiết lập một số tùy chọn, bằng cách gọi nó bằng cách sử dụng liên kết tượng trưng '**/sh' ->'/bin/zsh' hoặc bằng cách sử dụng 'mô phỏng sh' (mà lần lượt chỉ đặt một số tùy chọn)). – ZyX