Tôi phải thiết lập các EC2_HOME và JAVA_HOME biến trước khi chạy một lệnh (EC2-mô tả vùng)Làm thế nào thiết lập nhiều biến env cho một lệnh bash
Làm thế nào để làm điều đó trong một đi?
Tôi phải thiết lập các EC2_HOME và JAVA_HOME biến trước khi chạy một lệnh (EC2-mô tả vùng)Làm thế nào thiết lập nhiều biến env cho một lệnh bash
Làm thế nào để làm điều đó trong một đi?
Bạn có thể một thời điểm định sẵn vars cho một lệnh duy nhất bằng cách đặt chúng trên dòng lệnh trước lệnh:
$ EC2_HOME=/path/to/dir JAVA_HOME=/other/path ec2-describe-regions
Cách khác, bạn có thể xuất chúng trong môi trường, trong trường hợp này họ sẽ có đặt cho tất cả các lệnh trong tương lai:
$ export EC2_HOME=/path/to/dir
$ export JAVA_HOME=/other/path
$ ec2-describe-regions
Là hệ thống * nix khác, bạn có thể thêm chức năng như sau trong tệp .bashrc của bạn trong thư mục HOME của bạn.
function startec2(){
EC2_HOME=/path/to/dir
JAVA_HOME=/other/path
ec2-describe-regions
}
Bây giờ, bạn có thể bắt đầu chương trình của bạn bằng lệnh sau:
startec2
Theo như tôi biết, điều này tạo ra chỉ bash biến và sẽ không hoạt động. – TNW
Lưu ý rằng, mặc dù nó có vẻ phổ biến, bạn cũng có thể viết 'EC2_HOME xuất khẩu =/path JAVA_HOME =/path'. –
Tùy chọn một lần khá hữu ích trong tập lệnh. Chỉ cần một lưu ý cho bất kỳ ai cần thực hiện lệnh dưới quyền root hoặc một người dùng khác, các biến sẽ đến * sau * sudo hoặc người dùng. Ví dụ 'sudo -u ai đó CVSROOT =: ext: [email protected]:/usr/local/ncvs CVS_RSH = ssh cvs co my/dir/ancient-file.py' – Nagev