2012-01-09 90 views
0
ssh [email protected]_system " echo $dateVar; date=$dateVar" 

我試圖從shell腳本,我相信工作正常內通過dateVar到遠程系統,然後嘗試在遠程服務器上的日期設置爲的dateVar變量,但沒有成功。有人可以幫忙嗎?SSH - 遠程傳遞和設置變量

問候!

+1

我看到你設置了一個名爲'date'變量。你期望這會有什麼效果? – ugoren 2012-01-09 21:31:46

+2

「回聲」是否打印正確的值?而且你知道你需要調用'date'命令而不用'=',否則你只是創建一個名爲'date'的新變量而不使用它? – DarkDust 2012-01-09 21:33:34

+1

您可以使用類似date -s「20012.01.07-22:46 + 0000」的方式來設置日期,您的方法只是定義了一個新變量。 – Mithrandir 2012-01-09 21:37:29

回答

1

date man page開始,使用date命令設置日期,您應該執行date --set=$dateVar。因此,爲了改變遠程系統上的日期,執行以下就足夠了:

+0

謝謝。這應該工作,雖然如下所述,我需要與sudoers文件玩一下。 – user1139654 2012-01-10 14:44:45

+0

以下命令起作用:ssh xxsi675 sudo date --set =「'$ dateVar'」 – user1139654 2012-01-10 20:15:06

+0

@ user1139654:如果該命令適用於您,您是否可以通過點擊旁邊的勾號將其設置爲正確答案以綠色顯示?此外,不要忘記對DarkDust的回答進行投票,就像他建議使用'sudo'一樣。 – gsbabil 2012-01-11 01:30:18

0

假定日期格式是正確的,你需要刪除=,因爲它創建/設置一個變量命名date而不是調用命令date的:

ssh [email protected]_system "date $dateVar" 

您的用戶xxx可能沒有必要權利,所以你可能會成立sudo(谷歌之類的東西sudo/etc/sudoers),這樣你可以這樣做:

ssh [email protected]_system "sudo date $dateVar" 
+0

謝謝!我會試一試。 – user1139654 2012-01-10 05:35:05

+0

以下命令起作用: ssh xxsi675 sudo date --set =「'$ dateVar'」 – user1139654 2012-01-10 20:14:42