『壹』 多個shell腳本串聯執行並且每個腳本打開一個窗口
不明白你說的新窗口是什麼意思? 事實上, 對於這種子shell的調用父shell都會開一個新的進程來處理. 三個子shell script會相應開3個子進程.
所以你實現順序調用你只要把它們放在一個script中,按照次序調用就可以了,比如說run.sh:
sh run1.sh
sh run2.sh
sh rn3.sh
『貳』 linux桌面新建啟動器,如何新開一個窗口執行shell交互腳本
創建一個Terminal 終端來彈出一個窗口,
提示輸入運行這個腳本:
urxvt -e sh file.sh
xterm -e sh file.sh
『叄』 如何在shell命令里開一個新窗口
可以用sh命令,exit退出
或者打開一個新的終端,linux好像支持最多6個終端,
圖形界面到命令符界面:Ctrl+Alt+F1(或者F2,一直到F6都可以)
命令符界面之間切換:Alt+Fn(n=1,2,...6)
命令符界面到圖形界面:Alt+F7
『肆』 ubuntu怎麼通過shell命令打開一個新終端,並在其打開的新終端運行的命令
輸入代碼:gnome-terminal -x bash -c "./test.sh" 即可。
『伍』 如何運行linux shell程序
如何運行shell程序,如何在shell程序以及後續腳本中使用同一個變數,這些在工作中經常用到, 我找到如下的文章,再加深復習一下。
1 source命令用法:
source FileName
作用:在當前bash環境下讀取並執行FileName中的命令。該filename文件可以無"執行許可權"
註:該命令通常用命令「.」來替代。
如:source .bash_profile
. .bash_profile兩者等效。
source(或點)命令通常用於重新執行剛修改的初始化文檔。
source命令(從 C Shell 而來)是bash shell的內置命令。
點命令,就是個點符號,(從Bourne Shell而來)。
source的程序主體是bash,腳本中的$0變數的值是bash,而且由於作用於當前bash環境,腳本中set的變數將直接起效
2 sh, bash的命令用法:
sh/bash FileName
作用:打開一個子shell來讀取並執行FileName中命令。該filename文件可以無"執行許可權"
註:運行一個shell腳本時會啟動另一個命令解釋器.
每個shell腳本有效地運行在父shell(parent shell)的一個子進程里.
這個父shell是指在一個控制終端或在一個xterm窗口中給你命令指示符的進程.
shell腳本也可以啟動他自已的子進程.
這些子shell(即子進程)使腳本並行地,有效率地地同時運行腳本內的多個子任務.
在ubuntu中sh只是bash的一個鏈接。
由於是在子shell中執行,腳本設置的變數不會影響當前shell。
3 ./的命令用法:
./FileName
作用:打開一個子shell來讀取並執行FileName中命令。該filename文件需要"執行許可權"
註:運行一個shell腳本時會啟動另一個命令解釋器.
每個shell腳本有效地運行在父shell(parent shell)的一個子進程里.
這個父shell是指在一個控制終端或在一個xterm窗口中給你命令指示符的進程.
shell腳本也可以啟動他自已的子進程.
這些子shell(即子進程)使腳本並行地,有效率地地同時運行腳本內的多個子任務.
由於是在子shell中執行,腳本設置的變數不會影響當前shell。
4 export:
一個變數創建時,它不會自動地為在它之後創建的shell進程所知。而命令export可以向後面的shell傳遞變數的值。當一個shell腳本調用並執行時,它不會自動得到原為腳本(調用者)里定義的變數的訪問權,除非這些變數已經被顯式地設置為可用。export命令可以用於傳遞一個或多個變數的值到任何後繼腳本
5. 舉例
比如您在一個腳本里export $KKK=111 ,假如您用./a.sh執行該腳本,執行完畢後,您運行 echo $KKK ,發現沒有值,假如您用source來執行 ,然後再echo ,就會發現KKK=111。因為調用./a.sh來執行shell是在一個子shell里運行的,所以執行後,結構並沒有反應到父shell里,但是 source不同他就是在本shell中執行的,所以能夠看到結果.
小測試
1 建立test.sh
#!/bin/bash
export s=/home/jboss/
2 執行命令: source test.sh
echo $s
結果輸出: /home/jboss/
3 新開個shell
執行命令: ./test.sh
echo $s
結果: 沒有輸出s值
結論:
1、執行腳本時是在一個子shell環境運行的,腳本執行完後該子shell自動退出。
2、一個shell中的系統環境變數才會被復制到子shell中(用export定義的變數);
3、一個shell中的系統環境變數只對該shell或者它的子shell有效,該shell結束時變數消失(並不能返回到父shell中)。3、不用 export定義的變數只對該shell有效,對子shell也是無效的。
直接執行一個腳本文件是在一個子shell中運行的,而source則是在當前shell環境中運行的。
source可以讓腳本影響它們的父shell環境,這和export去影響子shell環境相反.
『陸』 Mac下怎麼通過shell腳本新開另一個終端並執行命令
把要用的shell腳本寫在test.sh中
然後在終端執行命令open -a Terminal.app test.sh,shell腳本就會運行在新開的Terminal終端
『柒』 Ubuntu 設置程序雙擊啟動和sh腳本開機自啟動的另一種方法
系統 : Ubuntu16.04 LTS
在ubuntu下面開發的Qt程序,進行動態發布之後有兩個問題:
在home中搜索Terminal,找到後拖到桌面上。
在Terminal圖標上郵件——Properties,然後在Command那一欄中填入以下指令:
例如:
還可以順便給它換個圖標,點擊哪個圖標就可以更換了,支持png格式圖片,可以去 阿里巴巴矢量圖庫 找一個.
然後關掉窗口,雙擊圖標就可以運行腳本了。記得提前賦予腳本可執行許可權。
之前一篇的自啟動方法有點問題,下面的方法實測沒有問題。
在home搜索: start
打開它:
點擊add,中間那一欄填上面的那個指令,另外兩欄隨便填:
保存就可以了。
重啟電腦,就會自動運行,不能運行來找我,我幫你再網路網路……嘿嘿嘿