2.4 命令行下“存活”下來的基本技能
- 通過前面的操作我們已經(jīng)有了自己的云服務(wù)器养匈,并能上下傳文件厢绝,那么接下來我們需要通過各種命令來操作和管理這個云服務(wù)器剑肯。
- 下面會對命令行有一個初步介紹莲绰,并提供最實用的操作和管理命令欺旧,讓你從枯燥的命令行交互中找到成就感并堅持下來。
- 不得不承認(rèn)學(xué)習(xí)后端開發(fā)不像B端或者C端口的開發(fā)那樣很快有反饋并有成就感钉蒲,希望大家能堅持下來切端。
2.4.1 初識命令行
- Linux下最方便的操作就是命令行而且功能強(qiáng)大,剛開始接觸可能會不習(xí)慣顷啼,但是只要堅持下來多操作幾天也就習(xí)慣了
- Linux下的很多命令都有help選項用于輸出命令使用方法踏枣,假設(shè)有一個命令是“cmdtest”,但你不知道這個命令有那些功能的時候可以試著執(zhí)行"cmdtest -h"或者"cmdtest --help"钙蒙,其中"-h"是短選項茵瀑,"--help"是對應(yīng)的長選項,如果這里不是很理解不用著急躬厌,后續(xù)的文章會有代碼實例教大家如何編碼實現(xiàn)支持命令選項的程序
- 正常一個命令是由三個部分組成
command [-options] param1 param2 ...
|部分 |必選 |含義 |
|--------------------|--------------------|
|命令|是|你要執(zhí)行的命令名或者可執(zhí)行程序的名稱|
|選項|否|設(shè)置命令執(zhí)行指定功能马昨,視不同的命令而不同|
|參數(shù)|否|執(zhí)行命令需要的輸入?yún)?shù)|
2.4.2 基本的命令操作
- 手冊命令
當(dāng)遇到不熟悉的命令時可以使用man命令來查看對應(yīng)命令的使用手冊man即“Manual”的縮寫竞帽,如執(zhí)行
man clear
注意執(zhí)行man命令后會進(jìn)入man命令的命令行模式,這個時候只有按q就可以退出man命令
- 清屏操作
當(dāng)當(dāng)前的命令終端輸出已經(jīng)快滿一屏?xí)r可以使用clear命令還清空當(dāng)前命令終端的輸出鸿捧,如執(zhí)行
clear
- 回顯操作
echo "acb0y"
- 目錄文件操作
- 查看當(dāng)前當(dāng)前工作目錄屹篓,pwd命令即“print work directory”,如執(zhí)行
pwd
- 查看當(dāng)前目錄下的內(nèi)容匙奴,ls命令即“l(fā)ist directory contents”堆巧,如執(zhí)行
ls -lrt
- 切換目錄,cd命令即“change directory”泼菌,如執(zhí)行
cd dst
- 拷貝文件或者目錄谍肤,cp命令即“copy”,如執(zhí)行
cp -f src det
- 刪除文件或者目錄哗伯,rm命令即“remove”荒揣,如執(zhí)行
rm filename
- 創(chuàng)建一個空文件,touch命令焊刹,如執(zhí)行
touch file
- 創(chuàng)建目錄系任,mkdir命令即“make directories”,如執(zhí)行
mkdir test test1 test2
- 查看文件內(nèi)容虐块,cat命令即“concatenate files and print on the standard output”赋除,如執(zhí)行
cat file1
- 輸出文件的頭行,head命令即“output the first part of files”非凌,如輸出文件filename的頭10行執(zhí)行
head -10 filename
- 輸出文件的尾行,tail命令即“output the last part of files”荆针,如輸出文件filename的尾10行執(zhí)行
tail -10 flename
- 進(jìn)程操作
- 查看當(dāng)前所有運行的進(jìn)程
ps -ef
- 查看某個運行進(jìn)程的pid
pidof program
- 殺某個程序的所有進(jìn)程
killall program
- 網(wǎng)絡(luò)操作
- 查看網(wǎng)絡(luò)配置
ifconfig
- 查看當(dāng)前服務(wù)器開啟了那些網(wǎng)絡(luò)監(jiān)聽
netstat -anpt | grep LISTEN
- 查看內(nèi)存概括
free -h
- 查看磁盤使用情況
df -h
- 查看系統(tǒng)運行進(jìn)程的動態(tài)列表敞嗡,進(jìn)入之后按q退出
top
2.4.3 組合命令操作
命令行的強(qiáng)大在于它提供了管道功能把多個命令組合起來,把前面一個命令的輸出作為后一個命令的輸入航背,從而實現(xiàn)強(qiáng)大的功能喉悴,管道命令通過"|"來實現(xiàn),下面舉幾個栗子
- 統(tǒng)計指定文件的行數(shù)
cat install.log | wc -l
- 在當(dāng)前運行的進(jìn)程名中過濾包含指定字符的進(jìn)程
ps -ef | grep keyword | grep -v grep
- 查看當(dāng)前服務(wù)器上建立好的TCP連接
netstat -anpt | grep ESTABLISHED
2.4.4 輸入輸出重定向
我們可以把命令的輸出進(jìn)行重定向玖媚,而不只是輸出到命令行終端
- 覆蓋寫重定向到文件
echo "test" > test.txt
- 追加寫重定向到文件
echo "test" >> test.txt
- 忽略輸出箕肃,即重定向到/dev/null,這里的/dev/null相當(dāng)于window的垃圾站
ls > /dev/null
- 即輸出到終端又輸出到文件
cat 1.txt | tee 3.txt
2.4.5 vi編輯器
這里不介紹vim今魔,因為學(xué)習(xí)曲線太過陡了勺像,不準(zhǔn)備把vim當(dāng)作IDE來使用的沒必要花精力去學(xué)習(xí),如果大家有精力或者有極客追求的可以去網(wǎng)絡(luò)上搜索相關(guān)教程错森,coolshell上的教程就有很好吟宦,大家可以去看看。這里只會介紹vi編輯器最實用的功能涩维,vi是Linux下最常見使用廣泛的命令行編輯器殃姓,剛開始使用vi可能會不習(xí)慣,需要堅持多操作幾次。
- vi的兩種模式
vi編輯器在命令行下有兩種模式:命令模式和編輯模式蜗侈,默認(rèn)情況下執(zhí)行vi命令后進(jìn)入的是命令模式篷牌。 - 最實用操作
- vi后面帶一個文件名,這個文件名可以是存在的文件這時是修改文件踏幻,如果不存在則是創(chuàng)建新的文件
- 按"esc"強(qiáng)制進(jìn)入命令模式枷颊,可以按多次效果一樣
- 在命令模式下按"i"進(jìn)入插入模式,這時候可以輸入你要寫入的內(nèi)容
- 在命令模式下按"shift + a"進(jìn)入插入模式叫倍,這時候在當(dāng)前行尾輸入內(nèi)容
- 在命令模式下按"x"偷卧,刪當(dāng)前光標(biāo)所在的一個字符
- 在命令模式下按"0",當(dāng)前輸入光標(biāo)跳到行首
- 在命令模式下按"$"吆倦,當(dāng)前輸入光標(biāo)跳到行尾
- 在命令模式下使用h(up)听诸,l(down),k(left)蚕泽,j(right)來移動輸入點光標(biāo)
- 在命令模式下輸入":"和一個數(shù)字晌梨,輸入光標(biāo)會快速定位到指定數(shù)字所在的行數(shù)
- 在命令模式下輸入"gg",輸入光標(biāo)會快速定位到第一行
- 在命令模式下輸入"G"须妻,輸入光標(biāo)會快速定位到第最后一行
- 在命令模式下輸入"uu"仔蝌,則撤銷上一次在插入模式的做的所有修改
- 在命令模式下輸入"dd",則刪除當(dāng)前光標(biāo)所在的行
- 在命令模式下輸入":w"荒吏,則保存當(dāng)前的修改寫入文件中
- 在命令模式下輸入":q!"敛惊,則退出vi并撤銷所有的修改
- 在命令模式下輸入":wq",則保存你的修改并退出vi
- 在命令模式下輸入":help <command>"绰更,顯示相關(guān)命令的幫助
上一節(jié) : 后端研發(fā)菜鳥成長記 第一章 入門 之 云服務(wù)器
未完待續(xù)...
后續(xù)內(nèi)容預(yù)告: 小試牛刀瞧挤,編寫性能測試工具