Tôi có một tập lệnh đơn giản trong đó đối số đầu tiên được dành riêng cho tên tệp và tất cả các đối số tùy chọn khác sẽ được chuyển đến các phần khác của tập lệnh.
Sử dụng Google tôi đã tìm thấy wiki này , nhưng nó cung cấp một ví dụ theo nghĩa đen:
echo "${@: -1}"
Tôi không thể làm gì khác để làm việc, như:
echo "${@:2}"
hoặc là
echo "${@:2,1}"
Tôi nhận được "Thay thế xấu" từ thiết bị đầu cuối.
Vấn đề là gì và làm cách nào tôi có thể xử lý tất cả ngoại trừ đối số đầu tiên được chuyển sang tập lệnh bash?
"{@:2}"
không hoạt động, đó là lý do tại sao câu trả lời chính xác phù hợp ở trên.