參與冬季實戰(zhàn)營—Linux操作系統(tǒng)實戰(zhàn)入門
冬季實戰(zhàn)營第二期:Linux操作體系實戰(zhàn)入門
Linux指令入門-文本處理
1. 創(chuàng)立資源
創(chuàng)立資源
- 單擊屏幕右側(cè) 創(chuàng)立資源 ,免費創(chuàng)立當時試驗所需云產(chǎn)品資源。
2. 連接終端
- 資源創(chuàng)立結(jié)束后,點擊右側(cè) Web Terminal連接ECS服務(wù)器。
3. 文本編輯東西Vim
- 文本編輯東西Vim
文本編輯東西Vim
vim的三種操作形式
vim有三種操作形式,分別是指令形式(Command mode)、輸入形式(Insert mode)和底線指令形式(Last line mode)。
三種形式切換快捷鍵:
- 指令形式
在指令形式中控制光標移動和輸入指令,可對文本進行復(fù)制、粘貼、刪去和查找等作業(yè)。
運用指令vim filename后進入編輯器視圖后,默許形式就是指令形式,此時敲擊鍵盤字母會被識別為一個指令,例如在鍵盤上接連敲擊兩次d,就會刪去光標所內(nèi)行。
- 輸入形式
在指令形式下按i或a鍵就進入了輸入形式,在輸入形式下,您能夠正常的運用鍵盤按鍵對文本進行插入和刪去等操作。
- 底線指令形式
在指令形式下按:鍵就進入了底線指令形式,在底線指令形式中能夠輸入單個或多個字符的指令。
4. 文本文件檢查指令
文本文件檢查指令
cat
指令描繪:cat指令用于檢查內(nèi)容較少的純文本文件。
指令格局:cat [選項] [文件]。
指令參數(shù)闡明:
參數(shù) 闡明
-n或--number 顯現(xiàn)行號 -b或--number-nonblank 顯現(xiàn)行號,但是不對空白行進行編號 -s或--squeeze-blank 當遇到有接連兩行以上的空白行,只顯現(xiàn)一行的空白行
指令運用示例:
- 將一個自增序列寫入test.txt文件中。
for i in $(seq 1 10); do echo $i >> test.txt ; done
- 檢查文件內(nèi)容。
cat test.txt
- 將文件內(nèi)容清空。
cat /dev/null > test.txt
- 再次檢查文件內(nèi)容。
cat test.txt
more
指令描繪:more指令從前向后分頁顯現(xiàn)文件內(nèi)容。
如下圖是常用操作指令:
指令運用示例:
從第20行開始分頁檢查體系日志文件/var/log/messages。
more +20 /var/log/messages
less
指令描繪:less指令能夠?qū)ξ募蚱渌敵鲞M行分頁顯現(xiàn),與moe指令相似,但運用 less 能夠隨意瀏覽文件,而 more 僅能向前移動,卻不能向后移動。
指令格局:less [參數(shù)] 文件 。
指令參數(shù)闡明:
參數(shù) 闡明 -e 當文件顯現(xiàn)結(jié)束后,主動脫離 -m 顯現(xiàn)類似more指令的百分比 -N 顯現(xiàn)每行的行號 -s 顯現(xiàn)接連空行為一行
指令常用操作:
指令運用示例:
檢查指令前史運用記錄并經(jīng)過less分頁顯現(xiàn)。
history | less
head
指令描繪:head指令用于檢查文件最初指定行數(shù)的內(nèi)容。
指令格局:head [參數(shù)] [文件]。
指令參數(shù)闡明:
參數(shù) 闡明 -n [行數(shù)] 顯現(xiàn)最初指定行的文件內(nèi)容,默許為10 -c [字符數(shù)] 顯現(xiàn)最初指定個數(shù)的字符數(shù) -q 不顯現(xiàn)文件名字信息,適用于多個文件,多文件時默許會顯現(xiàn)文件名
實例:
head -5 /etc/passwd
tail
指令描繪:tail指令用于檢查文檔的后N行或持續(xù)改寫內(nèi)容。
指令格局:tail [參數(shù)] [文件]。
指令參數(shù)闡明:
參數(shù) 闡明 -f 顯現(xiàn)文件最新追加的內(nèi)容 -q 當有多個文件參數(shù)時,不輸出各個文件名 -v 當有多個文件參數(shù)時,總是輸出各個文件名 -c [字節(jié)數(shù)] 顯現(xiàn)文件的尾部n個字節(jié)內(nèi)容 -n [行數(shù)] 顯現(xiàn)文件的尾部n行內(nèi)容
指令運用示例:
檢查/var/log/messages體系日志文件的最新10行,并保持實時改寫。
tail -f -n 10 /var/log/messages
按ctrl+c鍵退出文本實時檢查界面。
stat
指令描繪:用來顯現(xiàn)文件的詳細信息,包含inode、atime、mtime、ctime等。
指令運用示例:
檢查/etc/passwd文件的詳細信息。
stat /etc/passwd
wc
指令描繪:wc指令用于計算指定文本的行數(shù)、字數(shù)、字節(jié)數(shù)。
指令格局:wc [參數(shù)] [文件]。
指令參數(shù)闡明:
參數(shù) 闡明 -l 只顯現(xiàn)行數(shù) -w 只顯現(xiàn)單詞數(shù) -c 只顯現(xiàn)字節(jié)數(shù)
指令運用示例:
計算/etc/passwd文件的行數(shù)。
wc -l /etc/passwd
file
指令描繪: file指令用于辨識文件類型。
指令格局:file [參數(shù)] [文件]。
指令參數(shù)闡明:
參數(shù) 闡明 -b 列出辨識成果時,不顯現(xiàn)文件稱號 -c 詳細顯現(xiàn)指令履行進程,便于排錯或剖析程序履行的景象 -f [文件] 指定稱號文件,其內(nèi)容有一個或多個文件稱號時,讓file依序辨識這些文件,格局為每列一個文件稱號 -L 直接顯現(xiàn)符號連接所指向的文件類別
指令運用示例:
檢查/var/log/messages文件的文件類型。
file /var/log/messages
5. 文本文件處理指令
文本文件處理指令
grep
指令描繪:grep指令用于查找文件里符合條件的字符串。
grep全稱是Global Regular Expression Print,表明全局正則表達式版本,它能運用正則表達式查找文本,并把匹配的行打印出來。
在Shell腳本中,grep經(jīng)過返回一個狀況值來表明查找的狀況:
0:匹配成功。
1:匹配失敗。
2:查找的文件不存在。
指令格局:grep [參數(shù)] [正則表達式] [文件]。
指令常用參數(shù)闡明:
參數(shù) 闡明
-c或--count 計算符合款式的列數(shù) -d recurse或-r 指定要查找的是目錄而非文件 -e [范本款式] 指定字符串做為查找文件內(nèi)容的款式 -E 或 --extended-regexp 將款式為延伸的正則表達式來運用 -F 或 --fixed-regexp 將款式視為固定字符串的列表 -G 或 --basic-regexp 將款式視為一般的表明法來運用 -i 或 --ignore-case 疏忽字符大小寫的差別 -n 或 --line-number 在顯現(xiàn)符合款式的那一行之前,標示出該行的列數(shù)編號 -v 或 --revert-match 顯現(xiàn)不包含匹配文本的一切行
sed
指令描繪:sed是一種流編輯器,它是文本處理中非常中的東西,能夠完美的合作正則表達式運用。
- 處理時,把當時處理的行存儲在臨時緩沖區(qū)中,稱為形式空間(pattern space)。
- 接著用sed指令處理緩沖區(qū)中的內(nèi)容,處理完結(jié)后,把緩沖區(qū)的內(nèi)容送往屏幕。
- 接著處理下一行,這樣不斷重復(fù),直到文件結(jié)尾。
注意:
sed指令不會修改原文件,例如刪去指令只表明某些行不打印輸出,而不是從原文件中刪去。
假如要改動源文件,需求運用-i選項。
指令格局:sed [參數(shù)] [動作] [文件]。
參數(shù)闡明:
參數(shù) 闡明
-e [script] 履行多個script -f [script文件] 履行指定script文件
-n 僅顯現(xiàn)script處理后的成果
-i 輸出到原文件,靜默履行(修改原文件)
動作闡明:
動作 闡明 a 內(nèi)行后面添加內(nèi)容 c 替換行 d 刪去行 i 內(nèi)行前面插入 p 打印相關(guān)的行 s 替換內(nèi)容
awk
指令描繪:和 sed 指令類似,awk 指令也是逐行掃描文件(從第 1 行到最后一行),尋找含有方針文本的行,假如匹配成功,則會在該行上履行用戶想要的操作;反之,則不對行做任何處理。
指令格局:awk [參數(shù)] [腳本] [文件]。
參數(shù)闡明:
參數(shù) 闡明
-F fs 指定以fs作為輸入行的分隔符,awk 指令默許分隔符為空格或制表符
-f file 讀取awk腳本
-v val=val 在履行處理進程之前,設(shè)置一個變量var,并給其設(shè)置初始值為val
內(nèi)置變量:
變量 用途
FS 字段分隔符
$n 指定分隔的第n個字段,如$1、$3分別表明第1、第三列
$0 當時讀入的整行文本內(nèi)容
NF 記錄當時處理行的字段個數(shù)(列數(shù))
NR 記錄當時已讀入的行數(shù)
FNR 當時行在源文件中的行號
能需求在處理數(shù)據(jù)前運行一些腳本指令,這就需求運用BEGIN關(guān)鍵字,BEGIN會在awsk讀取數(shù)據(jù)前強制履行該關(guān)鍵字后指定的腳本指令。
和BEGIN關(guān)鍵字相對應(yīng),END關(guān)鍵字允許我們指定一些腳本指令,awk會在讀完數(shù)據(jù)后履行它們。
cut
指令描繪:cut指令首要用來切開字符串,能夠?qū)斎氲臄?shù)據(jù)進行切開然后輸出。
指令格局:cut [參數(shù)] [文件]。
參數(shù)闡明:
參數(shù) 闡明 -b 以字節(jié)為單位進行分割 -c 以字符為單位進行分割 -d 自界說分隔符,默許為制表符
tr
指令描繪:tr指令用于對來自標準輸入的字符進行替換、壓縮和刪去。
指令格局:tr [參數(shù)] [文本]。
參數(shù)闡明:
參數(shù) 闡明 -c 反選指定字符 -d 刪去指定字符 -s 將重復(fù)的字符縮減成一個字符 -t [榜首字符集] [第二字符集] 刪去榜首字符集較第二字符集多出的字符,使兩個字符集長度持平
Linux指令入門-體系辦理
1. 創(chuàng)立資源
開始試驗之前,您需求先創(chuàng)立ECS實例資源。
在試驗室頁面,單擊創(chuàng)立資源。
(可選)在試驗室頁面左邊導(dǎo)航欄中,單擊云產(chǎn)品資源列表,可檢查本次試驗資源相關(guān)信息(例如IP地址、用戶信息等)。
闡明:資源創(chuàng)立進程需求1~3分鐘。
2. 常用體系作業(yè)指令
- 常用體系作業(yè)指令
echo
指令描繪:echo指令用于在終端輸出字符串或變量提取后的值。
指令格局:echo [字符串 | $變量]
指令用法示例:
- 顯現(xiàn)一般字符串
- 顯現(xiàn)變量
首先在shell環(huán)境中界說一個臨時變量name。
export name="xxx"
運用echo指令將變量name的值顯現(xiàn)到終端。
echo $name
- 顯現(xiàn)成果定向至文件
以下指令會將文本This is a test text.輸出重定向到文件test.txt中,假如文件已存在,將會覆蓋文件內(nèi)容,假如不存在則創(chuàng)立。其中>符號表明輸出重定向。
echo "This is a test text." > test.txt
假如您希望將文本追加到文件內(nèi)容最后,而不是覆蓋它,請運用>>輸出追加重定向符號。
- 顯現(xiàn)指令履行成果
以下指令將會在終端顯現(xiàn)當時的作業(yè)路徑。
echo `pwd`
運用$(command)形式能夠達到相同效果。
echo $(pwd)
date
指令描繪:date指令用于顯現(xiàn)和設(shè)置體系的時刻和日期。
指令格局:date [選項] [+格局]
- 依照指定格局檢查當時體系時刻
date "+%Y-%m-%d %H:%M:%S"
- 檢查今天是當年中的第幾天
date "+%j"
- 將體系的當時時刻設(shè)置為2020年02月20日20點20分20秒
date -s "20200220 20:20:20"
- 校對體系時刻,與網(wǎng)絡(luò)時刻同步
a. 裝置ntp校時東西
yum -y install ntp
b. 用ntpdate從時刻服務(wù)器更新時刻
ntpdate time.nist.gov
wget
指令描繪:在終端中下載文件。
指令格局:wget [參數(shù)] 下載地址
ps
指令描繪:ps指令用于檢查體系中的進程狀況。
指令格局:ps [參數(shù)]。
top
指令描繪:top指令動態(tài)地監(jiān)視進程活動與體系負載等信息。
pidof
指令描繪:pidof指令用于查詢指定服務(wù)進程的PID值。
指令格局:pidof [服務(wù)稱號]。
示例:
查詢出crond服務(wù)下的一切進程ID。
pidof crond
kill
指令描繪:kill指令用于停止指定PID的服務(wù)進程。
kill可將指定的信息送至程序。預(yù)設(shè)的信息為SIGTERM(15),可將指定程序停止。若仍無法停止該程序,可運用SIGKILL(9)信息測驗強制刪去程序。
指令格局:kill [參數(shù)] [進程PID]。
killall
指令描繪:killall指令用于停止指定稱號的服務(wù)對應(yīng)的全部進程。
指令格局:killall [進程稱號]。
指令運用示例:
- 刪去crond服務(wù)下的一切進程:
killall crond
3. 體系狀況檢測指令
ifconfig
指令描繪:ifconfig指令用于獲取網(wǎng)卡裝備與網(wǎng)絡(luò)狀況等信息。
uname
指令描繪:uname指令用于檢查體系內(nèi)核與體系版本等信息。
指令語法:uname -amnrsv[--version]
uptime
指令描繪:uptime 用于檢查體系的負載信息。
free
指令描繪:free用于顯現(xiàn)當時體系中內(nèi)存的運用量信息。
指令語法:free -bkmotV
who
指令描繪:who 指令顯現(xiàn)關(guān)于當時在本地體系上的一切用戶的信息。
last
指令描繪: last 指令用于顯現(xiàn)用戶最近登錄信息。
history
指令描繪:history指令用于顯現(xiàn)前史履行過的指令。
bash默許記錄1000條履行過的前史指令,被記錄在~/.bash_history文件中。
Linux指令入門-磁盤辦理
1. 開通資源
- 在試驗主頁面,頁面左邊,單擊 云產(chǎn)品資源 下拉列表,檢查本次試驗所需資源。
- 單擊屏幕右側(cè) 創(chuàng)立資源 ,免費創(chuàng)立當時試驗所需云產(chǎn)品資源。
闡明:
資源創(chuàng)立進程需求1~3分鐘。完結(jié)試驗資源的創(chuàng)立后,您能夠在 云產(chǎn)品資源 列表檢查已創(chuàng)立的資源信息,例如:IP地址、子用戶稱號和子用戶暗碼等。
2. 磁盤辦理指令
- df指令
df指令描繪:該指令檢查文件體系的磁盤空間占用狀況。能夠利用該指令來獲取硬盤被占用了多少空間,目前還剩下多少空間等信息。
df指令語法:
df [參數(shù)] [目錄或文件名]
du指令描繪:檢查磁盤運用空間。du與df指令不同點在于,du指令用于檢查文件和目錄磁盤的運用空間。
du指令語法:
du [參數(shù)] [文件或目錄稱號]
- fdisk指令
fdisk指令描繪:該指令用于磁盤分區(qū)。
fdisk指令語法:
fdisk [-l] 裝置稱號
