2016-12-25 77 views
0

我對Linux很新,所以如果我用錯誤的措辭引用某些內容,請告訴我!如何打開一個新的終端並從一個已經運行的shell文件運行命令

我已經創建了下面的shell文件,它完美的作品:

#!/bin/bash 

cd ~/Desktop/folder/ 
cd companion && npm start 

The lines I want to add below:  

Opens New Terminal with the following: 
cd ~/Desktop/folder/ 
cd javaclient && mvn exec:exec 

當我執行這個shell文件,它工作正常,運行我的應用程序,但是,我想添加一些線在那裏,將打開新的終端窗口('lxterminal'適用於我)並運行一些可以開始運行其他應用程序的命令。有誰知道我能做到這一點?任何幫助/建議將非常感謝!

P.S.整個想法是在2個獨立的終端窗口中運行2個應用程序,只執行1個shell文件。

+1

你是否真的需要一個終端與這兩個程序進行交互?除非你這樣做,否則請考慮在後臺啓動一個或兩個應用程序,使用&符號(&),可能會重定向輸出並在最後添加「等待」。 – NVRAM

+0

是的,我很害怕...我只是設置了alexa示例項目https://github.com/alexa/alexa-avs-sample-app/wiki/Raspberry-Pi,並且我試圖自動執行所需的命令啓動alexa。 – asleniovas

+0

@asleniovas:你可以嘗試使用我的解決方案,並用你打算運行的命令替換腳本,或添加你想在腳本中運行的命令? – Inian

回答

1

您可以使用內置的編程lxterminal作爲,

lxterminal\ 
    --title="MyScriptWindow" \ 
    -e "bash -c ./somescript.sh;bash"\ 

bash手動觸發末,以防止關閉終端,命令或腳本完成後。

+1

好,但一般情況下,如果您省略「-c」,它會搜索當前目錄,然後是$ PATH。我通常以類似如下結束:* read -p「按ENTER鍵關閉終端」* – NVRAM

+1

實際上,您可以使用任何終端仿真程序,例如, 'xterm'或'gnome-terminal'或'xfce4-terminal'或'x-terminal-emulator'而不是'lxterminal' –

相關問題