Linux編程基礎(chǔ)-課件_第1頁
Linux編程基礎(chǔ)-課件_第2頁
Linux編程基礎(chǔ)-課件_第3頁
Linux編程基礎(chǔ)-課件_第4頁
Linux編程基礎(chǔ)-課件_第5頁
已閱讀5頁,還剩89頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

Linux編程基礎(chǔ)周純葆中國科學(xué)院計(jì)算機(jī)網(wǎng)絡(luò)信息中心超級(jí)計(jì)算中心zhoucb@Linux編程基礎(chǔ)周純葆提綱Linux基本操作Linux編程基礎(chǔ)集群使用提綱Linux基本操作Linux簡介什么是Linux?Linux就是一類可供人們使用的操作系統(tǒng)。和Windows或MacOS一樣,讓人與計(jì)算機(jī)進(jìn)行溝通。Fedora、SuSE、Redhat、Ubuntu等Linux能用來干什么?辦公、編程、上網(wǎng)、聽歌、看電影、玩游戲Linux簡介什么是Linux?Linux目錄和文件的屬性基本屬性名字文件大小所屬用戶所屬組創(chuàng)建、修改和訪問的時(shí)間-rwxrwx 1 文件、目錄或鏈接文件(-,d,l)

2-4 文件所有者權(quán)限

5-7 同用戶組的權(quán)限

8-10 其他非本用戶組的權(quán)限基本權(quán)限讀寫可執(zhí)行Linux目錄和文件的屬性基本屬性-rwxrwx基本權(quán)命令結(jié)構(gòu)命令[選項(xiàng)]參數(shù) 例如:

[選項(xiàng)](通常有減號(hào)前置)ls-alfile

命令參數(shù)(通常是文件名或目錄)注意:所有字符區(qū)分大小寫!命令結(jié)構(gòu)命令[選項(xiàng)]參數(shù)目錄和文件操作改變當(dāng)前目錄cd[目錄名]不加參數(shù)將回到用戶主目錄相對路徑 (./)dirname./ 當(dāng)前目錄../ 上一層目錄絕對路徑 /home/user/dirname創(chuàng)建目錄mkdir<dirname>目錄和文件操作改變當(dāng)前目錄目錄和文件操作刪除空目錄rmdir<dirname> (rmdir不能刪除非空目錄)顯示當(dāng)前所在目錄Pwd輸出文件列表ls[參數(shù)][目錄或文件名]不加目錄或文件名表示列表當(dāng)前目錄下的文件常用參數(shù)-l 詳細(xì)文件詳細(xì)信息-a 顯示所有文件

-t/-S(-r) 按時(shí)間/大小排序(逆排序)目錄和文件操作刪除空目錄目錄和文件操作判斷文件類型file<文件名>復(fù)制文件cp[參數(shù)]<源文件><目標(biāo)文件或路徑>-r 遞歸復(fù)制所有子文件夾和其中的文件-a 保留源文件的屬性文件或目錄移動(dòng)mv<源文件或目錄><目標(biāo)文件或路徑>常用來對文件和目錄進(jìn)行重命名目錄和文件操作判斷文件類型目錄和文件操作刪除文件或目錄rm[參數(shù)]<文件名>-r 遞歸刪除-f 強(qiáng)制刪除輸出文件全部內(nèi)容cat<文件名>輸出文件開頭部分內(nèi)容head[-n行數(shù)]<文件名> 特別提示:覆蓋和刪除操作,系統(tǒng)默認(rèn)不會(huì)進(jìn)行提示并確認(rèn)

-i確認(rèn)后進(jìn)行覆蓋和刪除操作目錄和文件操作刪除文件或目錄 特別提示:覆蓋和刪除操作,系統(tǒng)目錄和文件操作輸出文件末尾部分內(nèi)容tail[-n行數(shù)]<文件名>分屏查看文件內(nèi)容more<文件名>less<文件名>搜索符合條件的文件find<路徑>[參數(shù)]find<路徑>-name“<文件名>”目錄和文件操作輸出文件末尾部分內(nèi)容目錄和文件操作從文件中搜索匹配字符串grep[參數(shù)]“<字符串>”<文件>常用參數(shù):-i 忽略大小寫-r 子目錄遞歸搜索-v 反匹配模式更改文件權(quán)限chmod目錄和文件操作從文件中搜索匹配字符串目錄和文件操作重定向>命令輸出重定向(創(chuàng)建新文件或覆蓋已存在文件)>>命令輸出重定向(追加)<命令輸入重定向(從文件)例如:合并多個(gè)文件 catseq1seq2>seq目錄和文件操作重定向目錄和文件操作管道command1|command2|…一個(gè)命令的輸出作為下一個(gè)命令的輸入例如:ls-al|more分屏查看ls的輸出其他命令history 顯示最近使用過的命令!string 重復(fù)命令(其開頭為string)上/下鍵通過上下鍵來翻閱最近使用的命令左/右鍵編輯當(dāng)前行命令Control-A跳到行開頭Control-E 跳到行結(jié)尾tab 補(bǔ)全當(dāng)前的命令,文件名,或目錄,或者顯示可能的補(bǔ)全目錄和文件操作管道文件打包和解包工具tar打包工具解包:.tar: tarxvf<壓縮包>.tar.gz/.tgz:gzip壓縮包 tarzxvf<壓縮包>.tar.Z:compress壓縮包 tarZxvf<壓縮包>.tar.bz2:bzip2壓縮包 tarjxvf<壓縮包>亦可使用相應(yīng)解壓工具先解壓成tar再用xvf命令解壓打包:tarcvf/zcvf/Zcvf/jcvf<目標(biāo)文件><源文件或路徑>文件打包和解包工具tar打包工具環(huán)境變量在系統(tǒng)中存在著若干環(huán)境變量,這些變量和變量的值反映了系統(tǒng)和用戶的狀態(tài),并影響用戶對系統(tǒng)的使用。一些常用的環(huán)境變量:HOME 用戶主目錄的全路徑名PATH 查找命令的目錄列表PWD 當(dāng)前工作目錄的絕對路徑SHELL 當(dāng)前使用的ShellTERM 當(dāng)前終端類型如果要使用環(huán)境變量的值,必須在變量名之前加上一個(gè)“$”符號(hào),不能直接使用變量名。環(huán)境變量在系統(tǒng)中存在著若干環(huán)境變量,這些變量和變量的值反映了環(huán)境變量的基本操作定義環(huán)境變量export<變量名=值>查看環(huán)境變量exportenv取消環(huán)境變量unset<變量名>環(huán)境變量的基本操作定義環(huán)境變量網(wǎng)絡(luò)和文件轉(zhuǎn)輸工具ssh遠(yuǎn)程登錄工具ssh<主機(jī)名|IP地址>[-l用戶名][-p端口號(hào)][命令或程序名]scp遠(yuǎn)程文件復(fù)制工具scp<參數(shù)><源文件或路徑><目標(biāo)文件或路徑>文件或路徑可以是本地,也可以是遠(yuǎn)程。如果是遠(yuǎn)程文件或路徑,格式為:[用戶名@]<主機(jī)名|IP地址>:目錄或文件名常用參數(shù)-r遞歸復(fù)制-p保留源文件屬性網(wǎng)絡(luò)和文件轉(zhuǎn)輸工具ssh遠(yuǎn)程登錄工具命令幫助和軟件文檔命令簡單用法command-help命令詳細(xì)說明man[-a]commandinfocommand軟件詳細(xì)文檔/usr/share/docgoogle/baidu命令幫助和軟件文檔命令簡單用法提綱Linux基本操作Linux編程基礎(chǔ)集群使用提綱Linux基本操作文本編輯打開vim編輯器vim[文件名1,2...n]vim的模式一般模式編輯模式命令行模式可視模式文本編輯打開vim編輯器文本編輯移動(dòng)命令h/Leftj/Downk/Upl/Right 光標(biāo)上下左右移動(dòng)Ctrl+f/PageUp 向前翻頁Ctlr+b/PageDown 向后翻頁0/^/Home 移至行首$/End 移至行末n+Space 向右移動(dòng)n個(gè)字符H 移至屏幕最上一行M 移至屏幕正中一行L 移至屏幕最下一行g(shù)g 移至文件第一行G 移至文件的最后一行nG 移至文件的第n行n+Enter 光標(biāo)向下移動(dòng)n行注:命令通常在一般模式下輸入才能生效文本編輯移動(dòng)命令注:命令通常在一般模式下輸入才能生效文本編輯編輯命令x/Del 刪除當(dāng)前字符r+c 用輸入的字符c替換光標(biāo)所在字符i/R 以插入/替換狀態(tài)進(jìn)入編輯模式o/O 前行之前/之后插入新行,并進(jìn)入編輯模式u 逐級(jí)撤銷之前的操作Ctrl+r 逐級(jí)恢復(fù)被撤消的操作. 重復(fù)上一次的操作d$/y$ 光標(biāo)至行尾的內(nèi)容刪除/不刪除存入緩沖區(qū)dd/yy 刪除/不刪除當(dāng)前行并存入緩沖區(qū)n+dd/n+yy 刪除/不刪除當(dāng)前行往下n行并存于緩沖區(qū)p/P 在光標(biāo)位置后/前插入緩沖區(qū)的內(nèi)容/string 向后搜索第一個(gè)為string的字符串n/N 向后/向前繼續(xù)搜索上次搜索的字符串注:命令通常在一般模式下輸入才能生效文本編輯編輯命令注:命令通常在一般模式下輸入才能生效文本編輯文件操作命令:efilename 關(guān)閉當(dāng)前文件并打開另一個(gè)文件:n 多文件編輯時(shí)跳至下一個(gè)文件:N 多文件編輯時(shí)跳至上一個(gè)文件:w 保存當(dāng)前文件:wfilename 另存為其它文件:q 退出:wq 存盤并退出:q! 不存盤退出注:命令通常在一般模式下輸入才能生效文本編輯文件操作命令注:命令通常在一般模式下輸入才能生效編譯運(yùn)行1.下載或用編輯器編寫程序代碼文件。vimhello.c2.用編譯器進(jìn)行編譯,生成可執(zhí)行文件。gcc-ohellohello.c3.執(zhí)行程序。./hello執(zhí)行程序時(shí)注意加上程序路徑,或設(shè)置環(huán)境變量

(exportPATH=dir:$PATH)編譯運(yùn)行1.下載或用編輯器編寫程序代碼文件。調(diào)試GDB(GNUDebugger)一般來說,GDB主要幫助你完成下面四個(gè)方面的功能:1、啟動(dòng)你的程序,按照你的自定義的要求隨心所欲的運(yùn)行程序。2、可讓被調(diào)試的程序在你所指定的調(diào)置的斷點(diǎn)處停住。(斷點(diǎn)可以是條件表達(dá)式)3、當(dāng)程序被停住時(shí),可以檢查此時(shí)你的程序中所發(fā)生的事。4、動(dòng)態(tài)的改變你程序的執(zhí)行環(huán)境。調(diào)試GDB(GNUDebugger)調(diào)試在使用gdb前,必須先載入可執(zhí)行文件,因?yàn)橐M(jìn)行調(diào)試,文件中就必須包含調(diào)試信息,所以在用gcc或cc編譯時(shí)就需要用-g參數(shù)來打開程序的調(diào)試選項(xiàng)。例如: gcc-g-ohellohello.c調(diào)試在使用gdb前,必須先載入可執(zhí)行文件,因?yàn)橐M(jìn)行調(diào)試,文調(diào)試調(diào)試開始時(shí),必須先載入要進(jìn)行調(diào)試的程序,可以用以下兩種方式:在啟動(dòng)gdb后執(zhí)行以下命令:

gdb file可執(zhí)行文件在gdb啟動(dòng)時(shí)就載入程序: gdb可執(zhí)行文件調(diào)試調(diào)試開始時(shí),必須先載入要進(jìn)行調(diào)試的程序,可以用以下兩種方調(diào)試list:顯示程序中的代碼,常用使用格式有:list輸出從上次調(diào)用list命令開始往后的10行程序代碼。list-輸出從上次調(diào)用list命令開始往前的10行程序代碼。listn輸出第n行附近的10行程序代碼。listfunction輸出函數(shù)function前后的10行程序代碼。調(diào)試list:顯示程序中的代碼,常用使用格式有:調(diào)試break在程序中設(shè)置斷點(diǎn),當(dāng)程序運(yùn)行到指定行上時(shí),會(huì)暫停執(zhí)行。break要設(shè)置斷點(diǎn)的行號(hào)tbreak設(shè)置臨時(shí)斷點(diǎn),在設(shè)置之后只起作用一次。tbreak要設(shè)置臨時(shí)斷點(diǎn)的行號(hào)clear和break相反,clear用于清除斷點(diǎn)。clear要清除的斷點(diǎn)所在的行號(hào)run啟動(dòng)程序,在run后面帶上參數(shù)可以傳遞給正在調(diào)試的程序。調(diào)試break調(diào)試delete清除斷點(diǎn)或自動(dòng)顯示的表達(dá)式。delete斷點(diǎn)號(hào)disable讓指定斷點(diǎn)失效。disable斷點(diǎn)號(hào)列表

注意:斷點(diǎn)號(hào)之間用空格間隔開。enable和disable相反,恢復(fù)失效的斷點(diǎn)。enable斷點(diǎn)編號(hào)列表ignore忽略斷點(diǎn)。ignore斷點(diǎn)號(hào)忽略次數(shù)調(diào)試delete調(diào)試cont/continue使程序在暫停在斷點(diǎn)之后繼續(xù)運(yùn)行。cont

跳過當(dāng)前斷點(diǎn)繼續(xù)運(yùn)行。contn

跳過n次斷點(diǎn),繼續(xù)運(yùn)行。當(dāng)n為1時(shí),cont1即為cont。next繼續(xù)執(zhí)行語句,但是跳過子程序的調(diào)用。next

執(zhí)行一條語句nextn

執(zhí)行n條語句調(diào)試cont/continue調(diào)試step與next類似,但是它會(huì)跟蹤到子程序的內(nèi)部,而且會(huì)顯示子程序內(nèi)部的執(zhí)行情況。print打印變量或表達(dá)式的值。print變量或表達(dá)式kill結(jié)束當(dāng)前程序的調(diào)試。

quit退出gdb。調(diào)試step提綱Linux基本操作Linux編程基礎(chǔ)集群使用提綱Linux基本操作登錄http://www.putty.nl/download.html

登錄http://www.putty.nl/download登錄登錄登錄當(dāng)前用量實(shí)際限額最大限額登錄當(dāng)前用量實(shí)際限額最大限額數(shù)據(jù)上傳和下載/eng/download.php

數(shù)據(jù)上傳和下載/eng/d數(shù)據(jù)上傳和下載數(shù)據(jù)上傳和下載作業(yè)什么是作業(yè)(Job)用戶按照要求在系統(tǒng)中每運(yùn)行一次應(yīng)用程序的全過程就是一個(gè)作業(yè)。什么是作業(yè)管理系統(tǒng)存在于操作系統(tǒng)和用戶之間,能夠接收并處理用戶作業(yè)的系統(tǒng)軟件。元通過JHUniScheduler作業(yè)管理系統(tǒng)接受、調(diào)度和運(yùn)行所有的用戶作業(yè)。什么是隊(duì)列(Queue)在超級(jí)計(jì)算機(jī)(集群)中通過作業(yè)管理系統(tǒng)人為的劃分出的用來接收不同類型作業(yè)(按作業(yè)時(shí)長、規(guī)模、用戶組等屬性區(qū)分)的邏輯分區(qū)。作業(yè)什么是作業(yè)(Job)作業(yè)生命周期1、提交作業(yè)–用戶提交作業(yè),得到作業(yè)號(hào),作業(yè)在隊(duì)列中等待執(zhí)行2、作業(yè)調(diào)度–主服務(wù)器向調(diào)度器發(fā)調(diào)度請求,調(diào)度器選擇最適合節(jié)點(diǎn)運(yùn)行作業(yè)3、分發(fā)作業(yè)–主服務(wù)器收到調(diào)度器提供的節(jié)點(diǎn)列表,將作業(yè)分發(fā)至這些節(jié)點(diǎn)4、作業(yè)運(yùn)行–計(jì)算節(jié)點(diǎn)收到主服務(wù)器的指令,創(chuàng)建運(yùn)行環(huán)境,執(zhí)行作業(yè)5、結(jié)果返回–作業(yè)完成,計(jì)算節(jié)點(diǎn)將輸出和運(yùn)行信息發(fā)回給主服務(wù)器6、作業(yè)報(bào)告–主服務(wù)器向用戶返回作業(yè)輸出、退出信息作業(yè)生命周期查看隊(duì)列信息bqueues[參數(shù)][隊(duì)列名]不加任何參數(shù)顯示當(dāng)前用戶全部可用隊(duì)列基本信息-lqueuename 顯示指定隊(duì)列詳細(xì)信息隊(duì)列名隊(duì)列優(yōu)先級(jí)接收作業(yè)狀態(tài)調(diào)度作業(yè)狀態(tài)全部作業(yè)處理器核數(shù)運(yùn)行中作業(yè)處理器核數(shù)排隊(duì)中作業(yè)處理器核數(shù)查看隊(duì)列信息bqueues[參數(shù)][隊(duì)列名]隊(duì)列名隊(duì)列優(yōu)隊(duì)列詳細(xì)信息隊(duì)列簡單描述隊(duì)列中作業(yè)時(shí)長限制隊(duì)列中作業(yè)規(guī)模限制允許使用隊(duì)列的用戶作業(yè)節(jié)點(diǎn)配置隊(duì)列詳細(xì)信息隊(duì)列簡單描述隊(duì)列中作業(yè)時(shí)長限制隊(duì)列中作業(yè)規(guī)模限制作業(yè)提交串行作業(yè)bsub-W3:0-n1-qcpu-ooutfile-eerrfile./helloMPI并行作業(yè)bsub-W6:0-n120-qcpu-R"span[ptile=20]"-oout-eerrelmpi./helloMPI+OpenMP并行作業(yè)exportOMP_NUM_THREADS=20bsub-W6:0-n120-qcpu-R"span[ptile=20]"-oout-eerrelmpi./hello作業(yè)提交串行作業(yè)LSF作業(yè)狀態(tài)每個(gè)作業(yè)在提交成功到運(yùn)行結(jié)束,在任一時(shí)刻都擁有唯一的作業(yè)狀態(tài),該狀態(tài)表明這個(gè)作業(yè)在該時(shí)刻的基本情況。常見的LSF作業(yè)狀態(tài)有以下幾種:PEND 作業(yè)在隊(duì)列中等待調(diào)度運(yùn)行RUN 作業(yè)正在運(yùn)行DONE 作業(yè)“正?!蓖顺觯ㄍ顺龃a為零)EXITED 作業(yè)“異?!蓖顺觯ㄍ顺龃a非零)PSUSP 作業(yè)在隊(duì)列中等待調(diào)度時(shí)被其所有者或管理員掛USUSP 作業(yè)在運(yùn)行時(shí)被其所有者或管理員掛起SSUSP 作業(yè)被LSF系統(tǒng)掛起LSF作業(yè)狀態(tài)每個(gè)作業(yè)在提交成功到運(yùn)行結(jié)束,在任一時(shí)刻都擁有查看作業(yè)狀態(tài)命令格式bjobs[參數(shù)][JobID]

不加參數(shù)執(zhí)行會(huì)得到當(dāng)前用戶未完成的作業(yè)列表。常用參數(shù)-a查看包括未完成的作業(yè)和剛結(jié)束不久的作業(yè)的信息。-u看查指定用戶的作業(yè)信息。-q查看指定隊(duì)列中的作業(yè)信息。-l查看作業(yè)的詳細(xì)信息。作業(yè)運(yùn)行的節(jié)點(diǎn)作業(yè)提交時(shí)間作業(yè)號(hào)用戶名作業(yè)狀態(tài)所在隊(duì)列查看作業(yè)狀態(tài)命令格式作業(yè)運(yùn)行的節(jié)點(diǎn)作業(yè)提交時(shí)間作業(yè)號(hào)用戶名作查看作業(yè)詳細(xì)信息最大運(yùn)行時(shí)長作業(yè)執(zhí)行的命令標(biāo)準(zhǔn)輸出和錯(cuò)誤輸出文件提交時(shí)的路徑作業(yè)開始運(yùn)行時(shí)間查看作業(yè)詳細(xì)信息最大運(yùn)行時(shí)長作業(yè)執(zhí)行的命令標(biāo)準(zhǔn)輸出和錯(cuò)誤輸出LSF作業(yè)其他操作查看運(yùn)行中作業(yè)的輸出(bpeek)bpeek[jobID]

不加jobID顯示當(dāng)前用戶最近提交的作業(yè)輸出刪除作業(yè)(bkill)bkilljobID查看歷史作業(yè)信息(bhist)bhist[參數(shù)][jobID]-a 顯示近期所有作業(yè)狀態(tài),包括已完成的-u 顯示指定用戶作業(yè)的歷史信息-l 顯示歷史作業(yè)詳細(xì)信息-nN 顯示最近N天內(nèi)結(jié)束的作業(yè)信息LSF作業(yè)其他操作查看運(yùn)行中作業(yè)的輸出(bpeek)Linux編程基礎(chǔ)周純葆中國科學(xué)院計(jì)算機(jī)網(wǎng)絡(luò)信息中心超級(jí)計(jì)算中心zhoucb@Linux編程基礎(chǔ)周純葆提綱Linux基本操作Linux編程基礎(chǔ)集群使用提綱Linux基本操作Linux簡介什么是Linux?Linux就是一類可供人們使用的操作系統(tǒng)。和Windows或MacOS一樣,讓人與計(jì)算機(jī)進(jìn)行溝通。Fedora、SuSE、Redhat、Ubuntu等Linux能用來干什么?辦公、編程、上網(wǎng)、聽歌、看電影、玩游戲Linux簡介什么是Linux?Linux目錄和文件的屬性基本屬性名字文件大小所屬用戶所屬組創(chuàng)建、修改和訪問的時(shí)間-rwxrwx 1 文件、目錄或鏈接文件(-,d,l)

2-4 文件所有者權(quán)限

5-7 同用戶組的權(quán)限

8-10 其他非本用戶組的權(quán)限基本權(quán)限讀寫可執(zhí)行Linux目錄和文件的屬性基本屬性-rwxrwx基本權(quán)命令結(jié)構(gòu)命令[選項(xiàng)]參數(shù) 例如:

[選項(xiàng)](通常有減號(hào)前置)ls-alfile

命令參數(shù)(通常是文件名或目錄)注意:所有字符區(qū)分大小寫!命令結(jié)構(gòu)命令[選項(xiàng)]參數(shù)目錄和文件操作改變當(dāng)前目錄cd[目錄名]不加參數(shù)將回到用戶主目錄相對路徑 (./)dirname./ 當(dāng)前目錄../ 上一層目錄絕對路徑 /home/user/dirname創(chuàng)建目錄mkdir<dirname>目錄和文件操作改變當(dāng)前目錄目錄和文件操作刪除空目錄rmdir<dirname> (rmdir不能刪除非空目錄)顯示當(dāng)前所在目錄Pwd輸出文件列表ls[參數(shù)][目錄或文件名]不加目錄或文件名表示列表當(dāng)前目錄下的文件常用參數(shù)-l 詳細(xì)文件詳細(xì)信息-a 顯示所有文件

-t/-S(-r) 按時(shí)間/大小排序(逆排序)目錄和文件操作刪除空目錄目錄和文件操作判斷文件類型file<文件名>復(fù)制文件cp[參數(shù)]<源文件><目標(biāo)文件或路徑>-r 遞歸復(fù)制所有子文件夾和其中的文件-a 保留源文件的屬性文件或目錄移動(dòng)mv<源文件或目錄><目標(biāo)文件或路徑>常用來對文件和目錄進(jìn)行重命名目錄和文件操作判斷文件類型目錄和文件操作刪除文件或目錄rm[參數(shù)]<文件名>-r 遞歸刪除-f 強(qiáng)制刪除輸出文件全部內(nèi)容cat<文件名>輸出文件開頭部分內(nèi)容head[-n行數(shù)]<文件名> 特別提示:覆蓋和刪除操作,系統(tǒng)默認(rèn)不會(huì)進(jìn)行提示并確認(rèn)

-i確認(rèn)后進(jìn)行覆蓋和刪除操作目錄和文件操作刪除文件或目錄 特別提示:覆蓋和刪除操作,系統(tǒng)目錄和文件操作輸出文件末尾部分內(nèi)容tail[-n行數(shù)]<文件名>分屏查看文件內(nèi)容more<文件名>less<文件名>搜索符合條件的文件find<路徑>[參數(shù)]find<路徑>-name“<文件名>”目錄和文件操作輸出文件末尾部分內(nèi)容目錄和文件操作從文件中搜索匹配字符串grep[參數(shù)]“<字符串>”<文件>常用參數(shù):-i 忽略大小寫-r 子目錄遞歸搜索-v 反匹配模式更改文件權(quán)限chmod目錄和文件操作從文件中搜索匹配字符串目錄和文件操作重定向>命令輸出重定向(創(chuàng)建新文件或覆蓋已存在文件)>>命令輸出重定向(追加)<命令輸入重定向(從文件)例如:合并多個(gè)文件 catseq1seq2>seq目錄和文件操作重定向目錄和文件操作管道command1|command2|…一個(gè)命令的輸出作為下一個(gè)命令的輸入例如:ls-al|more分屏查看ls的輸出其他命令history 顯示最近使用過的命令!string 重復(fù)命令(其開頭為string)上/下鍵通過上下鍵來翻閱最近使用的命令左/右鍵編輯當(dāng)前行命令Control-A跳到行開頭Control-E 跳到行結(jié)尾tab 補(bǔ)全當(dāng)前的命令,文件名,或目錄,或者顯示可能的補(bǔ)全目錄和文件操作管道文件打包和解包工具tar打包工具解包:.tar: tarxvf<壓縮包>.tar.gz/.tgz:gzip壓縮包 tarzxvf<壓縮包>.tar.Z:compress壓縮包 tarZxvf<壓縮包>.tar.bz2:bzip2壓縮包 tarjxvf<壓縮包>亦可使用相應(yīng)解壓工具先解壓成tar再用xvf命令解壓打包:tarcvf/zcvf/Zcvf/jcvf<目標(biāo)文件><源文件或路徑>文件打包和解包工具tar打包工具環(huán)境變量在系統(tǒng)中存在著若干環(huán)境變量,這些變量和變量的值反映了系統(tǒng)和用戶的狀態(tài),并影響用戶對系統(tǒng)的使用。一些常用的環(huán)境變量:HOME 用戶主目錄的全路徑名PATH 查找命令的目錄列表PWD 當(dāng)前工作目錄的絕對路徑SHELL 當(dāng)前使用的ShellTERM 當(dāng)前終端類型如果要使用環(huán)境變量的值,必須在變量名之前加上一個(gè)“$”符號(hào),不能直接使用變量名。環(huán)境變量在系統(tǒng)中存在著若干環(huán)境變量,這些變量和變量的值反映了環(huán)境變量的基本操作定義環(huán)境變量export<變量名=值>查看環(huán)境變量exportenv取消環(huán)境變量unset<變量名>環(huán)境變量的基本操作定義環(huán)境變量網(wǎng)絡(luò)和文件轉(zhuǎn)輸工具ssh遠(yuǎn)程登錄工具ssh<主機(jī)名|IP地址>[-l用戶名][-p端口號(hào)][命令或程序名]scp遠(yuǎn)程文件復(fù)制工具scp<參數(shù)><源文件或路徑><目標(biāo)文件或路徑>文件或路徑可以是本地,也可以是遠(yuǎn)程。如果是遠(yuǎn)程文件或路徑,格式為:[用戶名@]<主機(jī)名|IP地址>:目錄或文件名常用參數(shù)-r遞歸復(fù)制-p保留源文件屬性網(wǎng)絡(luò)和文件轉(zhuǎn)輸工具ssh遠(yuǎn)程登錄工具命令幫助和軟件文檔命令簡單用法command-help命令詳細(xì)說明man[-a]commandinfocommand軟件詳細(xì)文檔/usr/share/docgoogle/baidu命令幫助和軟件文檔命令簡單用法提綱Linux基本操作Linux編程基礎(chǔ)集群使用提綱Linux基本操作文本編輯打開vim編輯器vim[文件名1,2...n]vim的模式一般模式編輯模式命令行模式可視模式文本編輯打開vim編輯器文本編輯移動(dòng)命令h/Leftj/Downk/Upl/Right 光標(biāo)上下左右移動(dòng)Ctrl+f/PageUp 向前翻頁Ctlr+b/PageDown 向后翻頁0/^/Home 移至行首$/End 移至行末n+Space 向右移動(dòng)n個(gè)字符H 移至屏幕最上一行M 移至屏幕正中一行L 移至屏幕最下一行g(shù)g 移至文件第一行G 移至文件的最后一行nG 移至文件的第n行n+Enter 光標(biāo)向下移動(dòng)n行注:命令通常在一般模式下輸入才能生效文本編輯移動(dòng)命令注:命令通常在一般模式下輸入才能生效文本編輯編輯命令x/Del 刪除當(dāng)前字符r+c 用輸入的字符c替換光標(biāo)所在字符i/R 以插入/替換狀態(tài)進(jìn)入編輯模式o/O 前行之前/之后插入新行,并進(jìn)入編輯模式u 逐級(jí)撤銷之前的操作Ctrl+r 逐級(jí)恢復(fù)被撤消的操作. 重復(fù)上一次的操作d$/y$ 光標(biāo)至行尾的內(nèi)容刪除/不刪除存入緩沖區(qū)dd/yy 刪除/不刪除當(dāng)前行并存入緩沖區(qū)n+dd/n+yy 刪除/不刪除當(dāng)前行往下n行并存于緩沖區(qū)p/P 在光標(biāo)位置后/前插入緩沖區(qū)的內(nèi)容/string 向后搜索第一個(gè)為string的字符串n/N 向后/向前繼續(xù)搜索上次搜索的字符串注:命令通常在一般模式下輸入才能生效文本編輯編輯命令注:命令通常在一般模式下輸入才能生效文本編輯文件操作命令:efilename 關(guān)閉當(dāng)前文件并打開另一個(gè)文件:n 多文件編輯時(shí)跳至下一個(gè)文件:N 多文件編輯時(shí)跳至上一個(gè)文件:w 保存當(dāng)前文件:wfilename 另存為其它文件:q 退出:wq 存盤并退出:q! 不存盤退出注:命令通常在一般模式下輸入才能生效文本編輯文件操作命令注:命令通常在一般模式下輸入才能生效編譯運(yùn)行1.下載或用編輯器編寫程序代碼文件。vimhello.c2.用編譯器進(jìn)行編譯,生成可執(zhí)行文件。gcc-ohellohello.c3.執(zhí)行程序。./hello執(zhí)行程序時(shí)注意加上程序路徑,或設(shè)置環(huán)境變量

(exportPATH=dir:$PATH)編譯運(yùn)行1.下載或用編輯器編寫程序代碼文件。調(diào)試GDB(GNUDebugger)一般來說,GDB主要幫助你完成下面四個(gè)方面的功能:1、啟動(dòng)你的程序,按照你的自定義的要求隨心所欲的運(yùn)行程序。2、可讓被調(diào)試的程序在你所指定的調(diào)置的斷點(diǎn)處停住。(斷點(diǎn)可以是條件表達(dá)式)3、當(dāng)程序被停住時(shí),可以檢查此時(shí)你的程序中所發(fā)生的事。4、動(dòng)態(tài)的改變你程序的執(zhí)行環(huán)境。調(diào)試GDB(GNUDebugger)調(diào)試在使用gdb前,必須先載入可執(zhí)行文件,因?yàn)橐M(jìn)行調(diào)試,文件中就必須包含調(diào)試信息,所以在用gcc或cc編譯時(shí)就需要用-g參數(shù)來打開程序的調(diào)試選項(xiàng)。例如: gcc-g-ohellohello.c調(diào)試在使用gdb前,必須先載入可執(zhí)行文件,因?yàn)橐M(jìn)行調(diào)試,文調(diào)試調(diào)試開始時(shí),必須先載入要進(jìn)行調(diào)試的程序,可以用以下兩種方式:在啟動(dòng)gdb后執(zhí)行以下命令:

gdb file可執(zhí)行文件在gdb啟動(dòng)時(shí)就載入程序: gdb可執(zhí)行文件調(diào)試調(diào)試開始時(shí),必須先載入要進(jìn)行調(diào)試的程序,可以用以下兩種方調(diào)試list:顯示程序中的代碼,常用使用格式有:list輸出從上次調(diào)用list命令開始往后的10行程序代碼。list-輸出從上次調(diào)用list命令開始往前的10行程序代碼。listn輸出第n行附近的10行程序代碼。listfunction輸出函數(shù)function前后的10行程序代碼。調(diào)試list:顯示程序中的代碼,常用使用格式有:調(diào)試break在程序中設(shè)置斷點(diǎn),當(dāng)程序運(yùn)行到指定行上時(shí),會(huì)暫停執(zhí)行。break要設(shè)置斷點(diǎn)的行號(hào)tbreak設(shè)置臨時(shí)斷點(diǎn),在設(shè)置之后只起作用一次。tbreak要設(shè)置臨時(shí)斷點(diǎn)的行號(hào)clear和break相反,clear用于清除斷點(diǎn)。clear要清除的斷點(diǎn)所在的行號(hào)run啟動(dòng)程序,在run后面帶上參數(shù)可以傳遞給正在調(diào)試的程序。調(diào)試break調(diào)試delete清除斷點(diǎn)或自動(dòng)顯示的表達(dá)式。delete斷點(diǎn)號(hào)disable讓指定斷點(diǎn)失效。disable斷點(diǎn)號(hào)列表

注意:斷點(diǎn)號(hào)之間用空格間隔開。enable和disable相反,恢復(fù)失效的斷點(diǎn)。enable斷點(diǎn)編號(hào)列表ignore忽略斷點(diǎn)。ignore斷點(diǎn)號(hào)忽略次數(shù)調(diào)試delete調(diào)試cont/continue使程序在暫停在斷點(diǎn)之后繼續(xù)運(yùn)行。cont

跳過當(dāng)前斷點(diǎn)繼續(xù)運(yùn)行。contn

跳過n次斷點(diǎn),繼續(xù)運(yùn)行。當(dāng)n為1時(shí),cont1即為cont。next繼續(xù)執(zhí)行語句,但是跳過子程序的調(diào)用。next

執(zhí)行一條語句nextn

執(zhí)行n條語句調(diào)試cont/continue調(diào)試step與next類似,但是它會(huì)跟蹤到子程序的內(nèi)部,而且會(huì)顯示子程序內(nèi)部的執(zhí)行情況。print打印變量或表達(dá)式的值。print變量或表達(dá)式kill結(jié)束當(dāng)前程序的調(diào)試。

quit退出gdb。調(diào)試step提綱Linux基本操作Linux編程基礎(chǔ)集群使用提綱Linux基本操作登錄http://www.putty.nl/download.html

登錄http://www.putty.nl/download登錄登錄登錄當(dāng)前用量實(shí)際限額最大限額登錄當(dāng)前用量實(shí)際限額最大限額數(shù)據(jù)上傳和下載/eng/download.php

數(shù)據(jù)上傳和下載/eng/d數(shù)據(jù)上傳和下載數(shù)據(jù)上傳和下載作業(yè)什么是作業(yè)(Job)用戶按照要求在系統(tǒng)中每運(yùn)行一次應(yīng)用程序的全過程就是一個(gè)作業(yè)。什么是作業(yè)管理系統(tǒng)存在于操作系統(tǒng)和用戶之間,能夠接收并處理用戶作業(yè)的系統(tǒng)軟件。元通過JHUniScheduler作業(yè)管理系統(tǒng)接受、調(diào)度和運(yùn)行所有的用戶作業(yè)。什么是隊(duì)列(Queue)在超級(jí)計(jì)算機(jī)(集群)中通過作業(yè)管理系統(tǒng)人為的劃分出的用來接收不同類型作業(yè)(按作業(yè)時(shí)長、規(guī)模、用戶組等屬性區(qū)分)的邏輯分區(qū)。作業(yè)什么是作業(yè)(Job)作業(yè)生命周期1、提交作業(yè)–用戶提交作業(yè),得到作業(yè)號(hào),作業(yè)在隊(duì)列中等待執(zhí)行2、作業(yè)調(diào)度–主服務(wù)器向調(diào)度器發(fā)調(diào)度請求,調(diào)度器選擇最適合節(jié)點(diǎn)運(yùn)行作業(yè)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論