Re: [問題] shell script??
※ 引述《peple.bbs@ptt.cc (阿德)》之銘言:
: 初碰linux不久...還請見諒...>"<
: 問題1.Linux跟Uinx(freeBSD)的shell script是不是不一樣阿?
: (傻傻分不太清楚...>"<)
: google了一下,發覺光for的架構就不同了
: linux unix
: for...do...done foreach....end
: if...else...fi if...else...endif
這是預設的shell不同所致。
linux一般而言預設都是sh/bash,unix則常用csh/tcsh,
例如你看到的語法,確實左邊是bash,右邊則是csh的語法。
當然你也可以在linux下用csh,在unix下使用bash
不過需注意版本問題,
我的bash在MacOSX上面跑就跑不出來@@
: 問題2.
: 我有一個tool的環境設定檔,但設定檔的架構似乎主要是依unix的架構為主
: 我的linux系統無法辨別,造成可能要改寫設定檔的情況
: 其中有一行 if [${?LM_LICENSE_FILE} == 0]; then
這是使用變數代換bash的語法:
${SHELL:='bash'}
更多變數代換的語法請參考
http://maxubuntu.blogspot.com/2009/10/variables-substitution.html
或是鳥哥學長的網頁上,有非常多的範例
: 在linux執行時說 ${?LM_LICENSE_FILE}: bad substitution
: 不知是否有高手可以指點我...讓我知道這行的變數該怎麼改呢?
: 謝謝...>"<
其實你只要熟一種語法就好,其餘的shell的語法你看了也會懂他的意義。
當然建議是用bash,除了他的功能變得越來越強大之外,
他的參考文件也是最多的。
像我們作純科學研究的,很多老科學家都只會csh跟fortran,
導致學生也只會csh跟程度更弱的fortran,
想寫個更好一點的script還很難找到豐富的教學跟範例,
網路農夫是我看過最用心撰寫unix系統常用的工具,
http://netlab.cse.yzu.edu.tw/~statue/freebsd/docs/csh/
因此想學csh的朋友也可以參考這篇。
至於bash,只是平時用用的話可以參考鳥哥的網頁教學就夠用了;
如果是要用bash來替你作routine的工作的話,
我建議兩本bash的好書:
1. Linux Shell 程式設計實務, 作者:臥龍小三
2. Shell programming即學活用, 陳清豪、廖家鋒譯
兩本風格完全不同,切入點也不太相同,兩作者的獨門絕招也不同,
對shell script癡狂的夥伴可以參考看看。
--
我不是風 但我想飛
--
◢█◣▏◤█◣ ◆未來最舊小棧 Oldest Future Object
█●▇█▁˙█ ◆通訊頻率 OfO.twbbs.org
◥█◢▉◥█◤ ◆來源座標 140.109.80.232
討論串 (同標題文章)
Linux 近期熱門文章
21
56
PTT數位生活區 即時熱門文章