我試圖SSH入服務器,並檢查是否存在id_rsa.pub。如果它不存在,我想運行ssh-keygen,否則我不想做任何事情。期望/ Bash:運行一個bash if語句預期
我可以運行簡單的命令,如「貓」或「RM」使用的Tcl /預計發送,但是當我嘗試做這樣的事情它不工作:
send "if [ ! -f $USER_SSH_PATH/id_rsa.pub ]; then CREATE_FILE=true; fi\r"
expect "# " { }
send "if $CREATE_FILE; then; ssh-keygen -t rsa -C $USER -f $USER_SSH_PATH/id_rsa\r"
...
我得到以下錯誤消息: #無效的命令名稱「!」 在執行 「!-f /root/.ssh/id_rsa.pub」 從內
是否可以調用運行這樣的命令嗎?
這是實際處理問題的唯一答案。 –
謝謝!這實際上是我需要的,你解決了我的問題!非常感謝! – user1777907