How to use eclipse+basheclipse+ShellEd construct a environment for graphic debugging bash shell script .
寫在前面:
我打算同樣的標題,寫兩遍內容。
第一遍從純技術角度描述內容,第二遍剖析如何從系統哲學的角度客觀地,機械化地分析這個過程。
多年來我主要的工作,是在windows平臺開,開發C++,MFC,VB,dotnet等等的開發工作,特別是人機界面啊,自動化等等。
Linux下開發的經驗當然也有,但沒這麼專業搞過。
最近需要研究一個相對複雜的腳本,對我來說還是相當有難度。
所以,想單步跟一下,看看究竟。
所以,到網上找了一些資料。
https://unix.stackexchange.com/questions/131491/is-there-a-gui-debugger-for-shell-scripts
文章寫得很詳細。
最重要的幾個坑,這裏我列一下:
(一)basheclipse+ShellEd這是兩個不同的插件。一個是爲了與bash聯繫用的。一個是用來語法高亮的。而且,這兩個插件的安裝方法不同。一個是解壓後,拷到plugins裏面即可。另一個是Help -> Install new software -> Add -> Archive。
(二)basheclipse有十幾年沒有人維護了。所以,eclipse4.0 以上,不能用。我從網上下了3.8的可以的。
鏈接過後我補上。
(三)bash的版本需要在4.0以上。bash -version .我的本機是 ubuntu18.04,是這個版本以上。不過,ubuntu 18.04 不太好用,不建議大家安裝。經過這段時間接觸,看來還是老牌子的Cent OS更靠譜。當然,有錢還是Redhat更好了。
(四)這是一個比較大的坑,需要在eclipse中,將默認的dash換也bash。
上面的鏈接裏面有。
(五)然後就是建工程,填加腳本。注意將這句,放到最開始:. _DEBUG.sh (注意點後有空格,等價於source,類似C語言裏的include)。然後,是啓動的過程。這個過程,eclipse的菜單裏沒有,需要右鍵要調試的shell script文件。
Then click Debug
. Open Debug
perspective.
Go to Window -> Preferences -> Shell script -> Interpreters
and ensure that interpreter is /bin/bash
. For me the default was /bin/dash
下斷點也是個小坑,實際上雙擊下斷也可。eclipse其本上就是個將就用的貨,你知道,而且關鍵是他不確定性很強。和野比康夫他們家那個時空抽屜差不了多少:它想讓你去哪,你就去哪。
Set a breakpoint in the script. For some reason the right click menu does not show the option to set the breakpoint but Ctrl+Shift+B
should work.
明天我把圖貼上。