0
有一個我正在運行的腳本,我無法在遠程機器上安裝。等待通過ssh遠程運行的腳本的輸入
clear && printf '\e[3J'
read -p "Please enter device: " pattern
read -p "Enter date: (YYYY-MM-DD): " date
pfix=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 5 | head -n 1)
mkdir /home/user/logCollectRes/"${pfix}"
ssh xxx.xxx.xxx.xxx 'bash -s' < /usr/local/bin/SearchAdvanced.sh ${pattern} ${date} ${pfix}
在該腳本中,我希望能夠使用read。
ls -g *"${pattern}"*
read -p "Select one of these? [y/n] " "found";
我試過在讀取上加上-n以及在ssh上加上-t -t選項。正如您所看到的,該腳本提供的信息僅在腳本啓動後纔會顯示,因此我無法在本地計算機上使用該讀取。
編輯:讓我們說服務器B存儲5K計算機的系統日誌。文件名是通過使用設備的內部IP和結尾的日期給出的。
/var/log/remotes/192.168.1.500201505050736.gz
/var/log/remotes/192.168.1.500201505050936.gz
/var/log/remotes/192.168.1.500201505051136.gz
/var/log/remotes/192.168.1.600201505050836.gz
/var/log/remotes/192.168.1.600201505051036.gz
/var/log/remotes/192.168.1.600201505051236.gz
我希望能夠選擇從主腳本的IP地址,列出所有匹配該IP地址的文件,然後選擇我要scp將我的本地機器。
我不認爲我明白你正試圖在這裏做。更具體的是什麼'$ {pattern}'/ etc。應該在這個位置做的變量? (它們不是'SearchAdvanced.sh'腳本的參數,因爲它不在本地運行,它們不是遠程'bash'的參數,因爲它們在錯誤的位置等等) –