Tôi đang làm một số kịch bản bash và bây giờ tôi có một cuộc gọi biến source
và một mảng gọi samples
, như thế này:bash scripting: nếu đối số là tương đương với chuỗi này, định nghĩa một biến như chuỗi này
source='country'
samples=(US Canada Mexico...)
vì tôi muốn mở rộng số lượng nguồn (và mỗi nguồn có các mẫu riêng của nó), tôi đã cố gắng thêm một số đối số để làm điều này. Tôi đã thử điều này:
source=""
samples=("")
if [ $1="country" ]; then
source="country"
samples="US Canada Mexico..."
else
echo "try again"
fi
nhưng khi tôi chạy tập lệnh source countries.sh country
nó không hoạt động. Tôi đang làm gì sai?
nó hoạt động như thế nào? Khi bạn chạy nó, bạn nhận được một lỗi, hoặc nó nói "thử lại", hoặc cái gì khác? –
có, bạn có thể nghĩ 'câu hỏi rất đơn giản'. nhưng bạn đã suy nghĩ về điều này một thời gian. Vui lòng xem xét chỉnh sửa câu hỏi của bạn để bao gồm các kết quả đầu ra bắt buộc và bất kỳ thông báo lỗi nào bạn nhận được. 1 để thực sự thử một cái gì đó và định dạng tốt của câu hỏi. chúc may mắn. – shellter
Tại sao mã này giống với giải pháp được đề xuất và được chấp nhận? Đó là khó hiểu ... Tôi đoán câu hỏi ban đầu không có không gian ngay sau khi mở khung và trước khi đóng khung của câu nếu? – Stef