Câu hỏi được gắn thẻ «variable-substitution»

1
Thay thế bằng dấu chấm than trong bash
Tôi có các dòng sau trong tệp tập lệnh bash .cfg của mình DDF_SOURCE="siebel_DATA_DATE_FORMAT" DATA_DATE_FORMAT=${!DDF_SOURCE} làm thế nào là ${!DDF_SOURCE} đánh giá? Nó sẽ là !siebel_DATA_DATE_FORMAT, điều đó không có ý nghĩa với tôi.



2
$ {PATH: +: $ {PATH}} nghĩa là gì?
Gần đây tôi đã nhận thấy những điều sau đây trong hồ sơ cygwin của tôi, chính xác hơn: /usr/local/bin:/usr/bin${PATH:+:${PATH}} Nó có nghĩa là gì? Tại sao không chỉ là $ PATH? Đây có phải là 'nếu $ PATH tồn tại thì thêm: $ PATH'? Mục đích của tôi là …

7
Thay thế gấp đôi và gấp ba trong bash và zsh
Theo dõi phần nền trong câu hỏi này . Trong bashtôi có thể sử dụng ${!FOO}để thay thế kép, trong zsh ${(P)FOO}. Trong cả hai, trường học cũ (hack-y) eval \$$FOOhoạt động. Vì vậy, điều thông minh và hợp lý nhất đối với tôi sẽ là ${${FOO}}, ${${${FOO}}}…thay thế gấp …



3
Có bash hỗ trợ tham chiếu trở lại trong việc mở rộng tham số?
Tôi có một biến có tên descrmà có thể chứa một chuỗi Blah: -> r1-ae0-2 / [123], -> s7-Gi0-0-1:1-US / Foovv Tôi muốn nhận được -> r1-ae0-2, -> s7-Gi0-0-1:1-USmột phần từ chuỗi. Hiện tại tôi sử dụng descr=$(grep -oP '\->\s*\S+' <<< "$descr"cho việc này. Có cách nào tốt hơn để …



4
$ {! FOO} và zsh
${!FOO}thực hiện thay thế kép bash, nghĩa là nó lấy giá trị (chuỗi) của FOO và sử dụng nó làm tên biến. zshkhông hỗ trợ tính năng này. Có cách nào để làm cho công việc này giống nhau trong bashvà zshkhông? Lý lịch: Tôi đã có một danh sách …

3
Cú pháp hợp lệ của $ $ PS1-} có phải là cú pháp hợp lệ không và nó khác với cú pháp đơn giản $ PS1 USD như thế nào?
Tôi đang xem một kịch bản có: if [ "${PS1-}" ]; then Điều đó -gây khó khăn cho tôi một chút bởi vì nó dường như không theo cú pháp chuẩn của Posix hoặc Bash. Đây là một số cú pháp phức tạp đã tồn tại mãi mãi, hoặc nó …

1
Xem việc mở rộng các biến Bash để gỡ lỗi?
Có bất kỳ công cụ / thủ thuật nào có sẵn để mở rộng các biến để làm cho mã bash dễ đọc hơn không? Ví dụ, nó sẽ chuyển đổi như sau: DIR=/var/tmp FILE=${DIR}/file SCRIPT_ROOT=/opt/root TOOL=${SCRIPT_ROOT}/tool.sh ${TOOL} ${FILE} đến: DIR=/var/tmp FILE=/var/tmp/file SCRIPT_ROOT=/opt/root TOOL=/opt/root/tool.sh /opt/root/tool.sh /var/tmp/file Tôi đang chuyển đổi …

3
Tên biến đổi nối liền
Tôi có thể làm điều này, nhưng nó đòi hỏi phải tạo ra một chuỗi biến sau đó hủy bỏ nó. Có cách nào để rút ngắn nó thành một tuyên bố đơn giản hơn? #!/bin/bash FRUITS="BANANA APPLE ORANGE" BANANA_COLOUR="Yellow" APPLE_COLOUR="Green or Red" ORANGE_COLOUR="Blue" for fruit in $( echo $FRUITS …


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.