0
此命令運行一個命令時遇到不按預期工作:與通過ssh
ssh [email protected]<machineIP> -- sh -c "echo \$\(cat /tmp/testfile\) > /testfile"
我的意圖是到/ tmp/testfile的內容複製到/ testfile的。真的很簡單。但是我發現/ testfile沒有任何內容。該文件被創建(如果它不存在)。
如果從遠程服務器上的命令行運行,echo命令正常工作(減去轉義)。但在通過ssh運行時不起作用。本來我實際上有一個更復雜的命令與'sed',但簡化了什麼不工作。
遠程和本地服務器都是CentOS7。我發現我不得不逃脫$和()。這是否導致我的問題?運行此命令的方式不正確嗎?
是的,這個*是一個更好的東西的替身。我把它縮小到這塊,並且很好奇,看看它是否會起作用,並且發現它沒有。你的建議確實奏效!但我不記得爲什麼我改用「 - sh -c」。無論如何感謝您的快速反應(和正確的答案)。 –