cuốn sách gpt4 ai đã làm

linux - lệnh mong đợi trong tập lệnh bash

In lại Tác giả: Taklimakan Thời gian cập nhật: 2023-11-03 00:57:38 26 4
mua khóa gpt4 Nike

Tôi gặp sự cố khi thực hiện lệnh mong đợi bằng biến bash. Tôi có các tham số tập lệnh được cung cấp cho vị trí và tôi cần sử dụng nó trong lệnh gửi thông qua Expect -c. Nhưng tôi cần phải cung cấp nó bằng ", vì vậy thực sự việc gửi lệnh có vẻ như tôi đã nhập xong và nhận ra phần còn lại của lệnh là các ký tự phụ sau khi đóng dấu ngoặc kép. Những thứ như:

#!/bin/bash

ĐĂNG KÝ=ppp

mong đợi -cd 'spawn ssh user@host
mong đợi "Mật khẩu:"
gửi -- "vượt qua\r"
mong đợi "*~>"
gửi -- "find /local/"$SIGN"/ -maxdeep 1 -type d -mtime +30 |xargs rm -rfv\r"
mong đợi "*~>"
gửi -- "thoát\r"'

Bạn có ý tưởng nào về cách gửi biến từ bash tới mong đợi mà không cần sử dụng dấu ngoặc kép không? BTW - Tôi không thể sử dụng phím ssh

câu trả lời hay nhất

Bạn có thể trốn thoát như thế này '"$SIGN"':

Ví dụ:

#!/bin/bash

ĐĂNG KÝ=ppp

mong đợi -c 'sinh sản ssh tiago@localhost
mong đợi "mật khẩu:"
gửi -- "mypass\r"
mong đợi "~"
gửi -- "echo '"$SIGN"'\r"
mong đợi "^ppp"
gửi -- "thoát\r"'

Về linux - các lệnh mong đợi trong tập lệnh bash, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/24327383/

26 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress