Tôi cố gắng để sử dụng systemd's EnvironmentFilevà thêm tùy chọn vào lệnh khi nó được thiết lập trong file. Tôi có các mục sau trong tập tin đơn vị:
ExecStart=/usr/bin/bash -c "echo ${PORT:+port is $PORT}"
mà không lặp lại bất cứ điều gì khi tôi bắt đầu dịch vụ.
Các công việc sau đây như mong đợi:
ExecStart=/usr/bin/bash -c "echo port is $PORT"
có nghĩa là các tập tin được đọc chính xác.
Thay thế tham số cũng hoạt động trên dòng lệnh:
$ PORT=1234 bash -c 'echo ${PORT:+port is $PORT}'
port is 1234
Tôi đang thiếu gì?