2012-03-15 97 views
1

這裏是我的/root/.bash_profile爲什麼/root/.bash_profile中的命令啓動兩次?

export DISPLAY=:42 && cd /home/df/SimulatedRpu-ex/bin && ./SimulatedRpu-V1 & 

當我開始我的服務器,我運行ps aux | grep SimulatedRpu,這裏是輸出:

root  2758 0.2 1.0 62316 20416 ?  Sl 14:35 0:00 ./SimulatedRpu-V1 
root  3197 0.5 0.9 61428 19912 pts/0 Sl 14:35 0:00 ./SimulatedRpu-V1 
root  3314 0.0 0.0 5112 716 pts/0 S+ 14:35 0:00 grep SimulatedRpu 

因此,已經使用了大約端口程序打印錯誤消息。 但是爲什麼/root/.bash_profile中的命令啓動兩次? 請幫幫我,謝謝!順便說一句,我使用紅帽企業版5.5

+0

嘗試在不同的行或用;在之間。 – Corbin 2012-03-15 06:44:23

+0

謝謝你的回答!我跟着你說的,我解決了這個問題。祝你好運! – smarthand 2012-03-15 14:27:05

回答

3

的配置文件讀取每次登錄的時間。因此,只要登錄到運行ps aux | grep SimulatedRpu,運行配置文件一次,並由此開始一個新的過程。

你應該把命令到init script代替。

[編輯]你也應該在同一個腳本中運行Xvnc - 這樣,你可以啓動和停止顯示服務器與你的應用程序。

+0

然而,init腳本在你登錄之前就已經運行了,而且看起來他正試圖在桌面屏幕上啓動一個應用程序。 – DipSwitch 2012-03-15 08:18:55

+0

啊......不,他正在Xvnc上運行這個應用程序。 http://stackoverflow.com/questions/9699992/how-to-start-linux-with-gui-without-monitor – 2012-03-15 08:19:36

+0

啊錯過了=) – DipSwitch 2012-03-15 08:22:40

0

嘗試像

if ! ps aux | grep '[S]imulateRpu'; then 
    export DISPLAY=:42 && cd /home/df/SimulatedRpu-ex/bin && ./SimulatedRpu-V1 & 
fi; 

這樣,它首先會檢查,如果應用程序尚未運行。在[]中的S周圍是防止grep的從尋找自身)

+0

謝謝您的快速答覆!我也寫了喜歡你寫字我跑VNCserver.So它不是劑量的work.Finally Qt的程序,我用另一種方式來處理這個問題的一個殼。 – smarthand 2012-03-15 14:19:18

相關問題