vim /etc/resolve.conf 查看dns
6.shell腳本命令
1.diff
diff file file 比較兩個文件的不同
-c 顯示周圍的行
-u 按照一格式統(tǒng)一輸出生成補丁
-r 比較兩個目錄中文件的不同
pattch file file.path 打補丁
-b 備份原文件
2.grep
grep 關(guān)鍵字符 文件|目錄 在文件或目錄中查找含有關(guān)鍵字的行
grep -i 忽略大小寫
-n 顯示關(guān)鍵字所在行
-c 顯示過濾結(jié)果的行數(shù)
-v 反向過濾
-E “關(guān)鍵字1|關(guān)鍵字2” 過濾多個關(guān)鍵字
-r 目錄 在目錄中查找含有關(guān)鍵字的文件
注意:^關(guān)鍵字 以關(guān)鍵字開頭
關(guān)鍵字$ 以關(guān)鍵字結(jié)尾
^root 以root開頭
root$ 以root結(jié)尾
3.cut
cut 截取字符
cut -d 分隔符 指定分隔符
cut -f 1,7 顯示指定的列
cut -c 顯示指定字符
cut -d " " -f 10 截取空格后第十列到下一個分隔符空格之間的內(nèi)容
4.sort 排序
sort
-n 純數(shù)字排序
-u 去掉重復的
|uniq -c去掉重復并統(tǒng)計重復個數(shù)
-t 指定分隔符
-k 指定列
sort -t : -k 2 file -nu
5.uniq
sort file | uniq -c 去掉多余并統(tǒng)計重復次數(shù)
-d 顯示多余行
-u 顯示唯一的行
6.tr
tr 'a-z' 'A-Z' file
sed 's/原字符/替換字符/g' file
sed -e '策略1 ' -e '策略2 'file 多個策略用-e
sed -i file 把轉(zhuǎn)入后的文件輸出到指定文件
sed '3,5s/原字符/替換字符/' file
sed xd 屏蔽指定行
sed xp 復制指定行
sed -n xp 只顯示指定行
腳本
#!/bin/bash
MAX=$( wc- l $1 | cut -d " " -f 1)
for NUM in $( seq $MAX )
do
USERNAME=$(sed -n ${NUM}p$1)
PASSWD=$(sed in ${NUM}p $2)
useradd $USERNAME
echo $PASSWD | passwd --stdin$USERNAMR
done
7.awk 數(shù)據(jù)處理工具,將一行分成數(shù)個段進行處理,以字段為最小的處理單位
awk '條件類型1{動作1} 條件類型2{動作2}...' filename
[root@taxing ~]# last -n 5
kiosk pts/0 :0 Wed Nov 9 19:46 still logged in
kiosk pts/0 :0 Wed Nov 9 18:57 - 19:46 (00:48)
kiosk :0 :0 Wed Nov 9 18:57 still logged in
reboot system boot 3.10.0-327.el7.x Thu Nov 10 02:56 -19:59 (-6:-57)
kiosk :0 :0 Wed Nov 9 17:55 - 17:55 (00:00)
wtmp begins Wed Sep 28 00:38:05 2016
[root@taxing ~]# last -n 5 | awk '{print $1 "\t" $3}'
kiosk :0
kiosk :0
kiosk :0
reboot boot
kiosk :0
$0 代表一整行的數(shù)據(jù)
內(nèi)置變量
NF 每一行($0)擁有的字段總數(shù)
NR 目前awk處理的是第幾行的數(shù)據(jù)
FS 目前的分隔字符,默認是空格鍵
[root@taxing ~]# last -n 5 | awk '{print $1 "lines:" NR "\tcolumes: "NF}'
kiosklines:1 columes: 10
kiosklines:2 columes: 10
kiosklines:3 columes: 10
rebootlines:4 columes: 11
kiosklines:5 columes: 10
lines:6 columes: 0
wtmplines:7 columes: 7
條件類型
[root@taxing ~]# cat /etc/passwd | awk '{FS=":"} $3<10 {print $1"\t" $3}'
root:x:0:0:root:/root:/bin/bash
bin 1
daemon 2
adm 3
lp 4
sync 5
shutdown 6
halt 7
mail 8
第一行還是默認的以空格鍵為分隔符,想要從第一行開始就在分隔符 {FS=":"} 前加 BEGIN 關(guān)鍵字 除此之外還有END
[root@taxing ~]# cat /etc/passwd | awk 'BEGIN{FS=":"} $3<10 {print$1 "\t" $3}'
root 0
bin 1
daemon 2
adm 3
lp 4
sync 5
shutdown 6
halt 7
mail 8
awk命令進行計算
name 1st 2nd 3th
zed 12321 34123 41234
timo 23413 34124 35213
lol 34223 12441 22341
cat file | awk 'NR==1{printf "%10s%10s %10s %10s %10s\n",$1,$2,$3,$4,"TOTAL"}NR>=2{TOTAL=$2+$3+$4 printf"%10d %10d %10d %10d%10.2f\n,$1,$2,$3,$4,TOTAL}'
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。