循序漸進(jìn)學(xué)習(xí)LINUX之LINUX編程
一文本編輯
LINUX系統(tǒng)標(biāo)準(zhǔn)的文本編輯程序是vi它提供了編寫命令程序的環(huán)境可見vi與編程息息相關(guān)因此很有必要在此次先介紹vi的運(yùn)用
vi有命令及文本輸入模式通過按 來切換
()在命令模式下
i在光標(biāo)前添加文本與按 相同
a在光標(biāo)后添加文本
r替換文本與按兩次 相同
x刪除光標(biāo)處初的字符
u取消最后一次操作
wq/x/ZZ保存文本退出
q!防棄修改退出
w將緩沖區(qū)寫入文件
w filename將緩沖區(qū)寫入filename(相當(dāng)于另存為filename)
w!Filename強(qiáng)迫vi重寫名為filename的文件j移動(dòng)光標(biāo)到下一行當(dāng)前位置與k相反
h將光標(biāo)左移至下一字符與l相反
dd刪除一行 dd刪除n行
dw刪除一個(gè)詞 dw刪除n個(gè)詞
o在當(dāng)前行下添加一行與O相反^行首$行尾%d全部刪除文件內(nèi)容
/string在緩沖區(qū)向前查找字符串string與?String相反按 表示繼續(xù)查找下一個(gè)
set number顯示行號便于查找錯(cuò)誤
(二)在文本輸入模式下主要進(jìn)行文本的輸入 +x可刪除光標(biāo)前的一個(gè)字符還可以通過鼠標(biāo)進(jìn)行快捷的拷貝
LINUX的文本編輯環(huán)境還有emacsex等與vi相似
二SHELL編程
bash shell有一組可以從鍵盤使用的強(qiáng)有力的交互功能輸入/輸出重定向作業(yè)控制歷史命令表以及命令行編輯另外shell還提供完整的程序語言節(jié)是程序及讀取和執(zhí)行用戶自己編寫的shell的手段這些shell程序成為shell script編寫shell程序能配置自己的登錄環(huán)境進(jìn)行交互輸入編輯和別名shell命令控制流程等
由于筆者對LINUX操作系統(tǒng)的學(xué)習(xí)還不夠所以暫時(shí)不能進(jìn)行深層次的編程只是了解SHELL的語法結(jié)構(gòu)if命令test命令while命令for循環(huán)until命令case選擇況且筆者的學(xué)習(xí)目的并不在于此因而沒有花太多的時(shí)間而是應(yīng)能熟練的運(yùn)用SHELL命令
三高級語言編程在LINUX上編寫以上程序用到glibc/c++jdk步驟如下
# vi xxxc(/cpp/java)進(jìn)入vi編輯界面進(jìn)行編輯
編譯過程
()對于C程序
# cc o exefilename(可執(zhí)行文件名)xxxc
# /exefilename
()對于C++程序
# c++ o exefilename xxxcpp
# /exefilename
()對于JAVA程序
# javac xxxjava
# java xxx
可以用gdb來調(diào)試程序gdb exefilename其命令通過help來查看
此外進(jìn)行系統(tǒng)程序設(shè)計(jì)時(shí)使用C語言并調(diào)用內(nèi)部函數(shù)例如用fork創(chuàng)建進(jìn)程等。