0
我需要在嵌入在rcp
調用中的反引號表達式中使用變量。在rcp命令中使用嵌入變量的反引號表達式
我的初步嘗試:
#!/bin/sh
release=1
rcp myserver.foo.com:'`ls -t /path/to/my/${release} | head -n 1`' .
我想,因爲正在上myserver.foo.com
執行回剔表達不具有release
變量,這是失敗的,所以參數我ls
命令只是/path/to/my/
。
I read通常eval
命令可用於(我認爲)預處理反標值表達式。當我嘗試這種方法:
#!/bin/sh
release=1
rcp myserver.foo.com:'`ls -t /path/to/my/eval ${release} | head -n 1`' .
...反引號表達只是執行爲/path/to/my/eval
。
如何在此上下文中使用我的反引號表達式中的變量?
要明確:我試圖在遠程服務器上運行,而不是在本地反單引號的代碼(但我需要${release}
被前手本地解析)
謝謝,但第一個'''需要轉義('\ $')嗎?它在我逃脫之後起作用了...... –
第一個'$'不應該被轉義。 –
看來您發佈的解決方案導致以前的反標命令在本地運行,而不是在'myserver.foo.com'上運行。但是如果我逃避了'$'這個角色的話,那麼......非常感謝!你讓我度過了我的障礙! –