2017-05-25 56 views
1

我有一幢建築物(有些笨拙)系統和服務器的遠程控制:空行從發行的Makefile通過ssh幾個命令時

SSH = ssh -t [email protected] '$(1)' 

SEPARATOR = \n\n\n 

do_something: 
    $(call SSH, $(CMD1); $(SEPARATOR); $(CMD2)) 

之間$(CMD1)$(CMD2),我想在控制檯上看到可見的分隔符以提高可讀性。正如你所看到的,我嘗試了一些非常明顯的東西,但它不能按預期工作。不需要看起來很完美的東西。

我完全知道一般情況下可能會有更好的方法,但目前系統正常工作,所以我不想僅僅因爲諸如$(SEPARATOR)之類的小事情而完全重新設計它。

+0

它不工作對我來說:'的Makefile:6:***未終止通話的功能「來電」:缺少「 )」。 Stop.'。修復之後,再添加一個:'Makefile:6:*** unterminated call to function'call':missing')'。 Stop.'。 – Jakuje

+0

@Jakuje:似乎在簡單舉例時刪除了括號。從SO直接複製到文本編輯器時,可能無法正常工作,因爲在$(call ....)之前的選項卡與空白區域相比較。但顯然,這並不是真正意義上的一個工作示例,而是爲了說明我正在嘗試做什麼;-) – Michael

回答

1

那麼......顯然只是寫一個「\ n」轉義將不適合你。如果你想有它寫在你的成績單,你需要打印出來,如

$(call SSH, $(CMD1); printf "$(SEPARATOR)"; $(CMD2))