Ssh
繼續嘗試列印命令 LP 直到成功
我希望繼續發送列印機列印命令,直到列印成功。如果列印成功,則應刪除該文件。
下面是我的腳本。
until ssh root@45.76.162.227 'lp -d Brother_HL_L2350DW_series $FILE' do echo "Deleting $FILE" rm $FILE; done
rm $FILE;
問題是即使列印命令lp -d Brother_HL_L2350DW_series $FILE
失敗,它也會刪除文件。下面是一個失敗的列印命令範例。
ssh root@remotehost 'lp -d Brother_HL_L2350DW_series /home/system/test8.pdf' lp: Transport endpoint is not connected [system@live send4print]$ echo $? 1
你能建議我如何滿足我的要求嗎?
您不了解迭代的工作原理。
你的腳本說:
Until successful: print stuff, and delete files
until ssh root@45.76.162.227 'lp -d Brother_HL_L2350DW_series $FILE' do echo "trying again" done echo "Deleting $FILE" rm $FILE;
似乎還有一些其他問題:
- FILE 大寫(潛在錯誤:保留大寫字母,不應使用)。
- 報價問題
$FILE
不會展開。- 給油門打分是個好主意,放一個
sleep
。