我有一個虛擬機,我有一個檔案夾A,其中包含doc1.txt doc2.txt king1.so 和 king2.so
。
我試圖用ssh從另一個虛擬機中列出一個特定擴展的檔案。
VAR_PATH="/predefined/path/to/A"。
echo $VAR_PATH
for file_path in `ssh [email protected] "find $VAR_PATH -iname "*.so"`"
do
echo $file_path
done
這不作業,給我的錯誤為
查找:路徑必須在運算式之前:sample.so 用法:find [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec] [path...] [expression]/p>
當我在find命令中hardcoding the path時,同樣的命令也能作業
for file_path in `ssh [email protected] "find /predefined/path/to/A -iname"/span>*. so""`.
do>
echo $file_path。
done
我如何在這個for回圈中的ssh命令中傳遞路徑變數
uj5u.com熱心網友回復:試試這個。(centos 8 test passed)
D=/tmp/test/&& for i in `ssh xxx@xxxxx "find $D -name '*. so'"`;do echo $i;done
uj5u.com熱心網友回復:
最好不要使用for-loop,并將輸出存盤在一個陣列中,然后你可以回圈或任何你想要的東西。
array_result=(`ssh [email protected] "find ${VAR_PATH} -iname *.so"/span>`)
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/309916.html
標籤:
上一篇:從txt檔案中提取文本
下一篇:URL中的@符號是什么意思?
