awk '/^$/' filename
awk
'end' filename
if
[ -e /root/temp]
;then
echo
"yes"
;*else* echo
"no"
;fi
sort -n filename
grep -r "123" /root/temp
temp_txt=
`mktemp tempx.***`
cat /dev/urandom | strings -6|
grep
"^[a-za-z0-9]$"
|head -n 20 >
$temp_txt
for(i=1;i<=10;i++)
do name=
`head -n $i $temp_txt |
tail -1`
[! -d ./temp]
&&mkdir -p ./temp
touch
"./temp/$name"
done
filenames=
$(ls /root/temp)
number=1
for name in filenames
do newname=
$"-"
$rename
$$ /root/temp/*
*let number++*
*done*
ulist=
$(cat /root/temp)
for name in ulist
do *useradd $name*
*echo "123456"
|passwd --stdin $name
&> dev/null*
*done*
echo
"dhfsdpads dfsd,dasdfd."
|awk -f "[ ,.]"
'}'
*awk -f "[ ,.]"
'}}end' filename |
sort -rn*
*for i in 192.168.85.*
*do*
*recieve=$(ping $i -c 2 | awk 'nr==6')*
*if [$recieve -gt 0]*
*echo "yes"*
*done*
監控目標主機狀態,監控方法ping
ping通的話,host up。否則,host down
ping的取值的話,我們就選3次,每次1秒。
#!/bin/bash
#mian
for((i=
1;i<
4;i++));
doif
ping -c1 $1
&>/dev/null;
then
export ping_count"$i"
=1 else
export ping_count"$i"
=0 fi
sleep 1
doneif[
"$ping_count1" -eq "$ping_count2"]&&
["$ping_count1" -eq "$ping_count3"]&&
["$ping_count2" -eq 0 ]
;then
echo
"$1 is down"
else
echo
"$1 is up"
fiunset ping_count1
unset ping_count2
unset ping_count3
用ssh連線虛擬機器進行測試,測試結果順利。
虛擬機器ip為 172.16.138.128。echo成功
瞎編乙個ip為172.16.138.120 . echo失敗
測試埠是不是有響應
用telnet 協議
buffer和cache介紹cache(快取),為了調高cpu和記憶體之間資料交換而設計,buffer(緩衝)為了提高記憶體和硬碟(或其他i/o裝置的資料交換而設計)。
cache主要是針對讀操作設計的,不過cache概念可能容易混淆,我理解為cpu本身就有cache,包括一級快取、二級快取、**快取,我們知道cpu所有的指令操作對接的都是記憶體,而cpu的處理能力遠高於記憶體速度,所以為了不讓cpu資源閒置,intel等公司在cpu內部整合了一些cache,但畢竟不能放太多電路在裡面,所以這部分cache並不是很大,主要是用來存放一些常用的指令和常用資料,真正大部分cache的資料應該是占用記憶體的空間來快取請求過的資料,即上面的cached部分(這部分純屬個人理解,正確與否有待考證)。
buffer主要是針對寫操作設計的,更細的說是針對記憶體和硬碟之間的寫操作來設計的,目的是將寫的操作集中起來進行,減少磁碟碎片和硬碟反覆定址過程,提高效能。在linux系統內部有乙個守護程序會定期清空buffer中的內容,將其寫入硬碟內,當手動執行sync命令時也會觸發上述操作。
meminfo指令,使用awk提取出所需要的資料,進行簡單的運算求出使用率
#記憶體申請順序 free-cache-buffer-swap
memory_use(
)nr==2'
` memory_cache=
`head -5 /proc/meminfo |
awk'nr==1nr==5'
` memory_buffer=
`head -4 /proc/meminfo |
awk'nr==1nr==4'
` echo
"memory_used: $memory_used"
echo
"memory_cached: $memory_cache"
echo
"memory_buffer: $menory_buffer"
}memory_use
#!/bin/bash
# 統計系統中前10使用記憶體最多的程序
memory(
)end'
|sort -k 1 -n -r|
head -10
rm -f $temp_file
}#統計系統中前10使用cpu的程序
cpu(
)end'
|sort -k 1 -n -r|
head -10
rm -f $temp_file
}echo
"記憶體前10"
memory
echo
"cpu前10"
shell指令碼之awk
一 什麼是awk awk其實相當於一門可以處理資料文字的語言,這麼說的原因是其具有很多類c語言的語法,如 變數,陣列,函式,流程控制等,其由aho,weinberger,kernighan大約在1977年開發完成,隨後被引入unix linux中。二 awk可以幹什麼 awk是乙個非常強大的資料處理...
shell指令碼 awk的用法
語法格式 awk 選項 指令 操作檔案 常用選項 f 指定分隔符,分隔符用 引起來 v var value在awk程式開始之前指定乙個值valu給變數var,這些變數值用於awk程式的begin快 f 後面跟乙個儲存了awk程式的檔案,代替在命令列指定awk程式 awk 1.txt 逐行讀取檔案1....
shell指令碼之awk 一
2.linux中常用的awk編譯器版本有mawk,gawk。redhat使用的是gawk,ubuntu使用的是mawk.1.逐行掃瞄檔案,尋找匹配你指定模式的行,並在這些行上執行你指定的操作 2.awk 基本結構包括模式匹配 用於找到要處理的行 和處理過程 即處理動作 3.awk 有兩個特殊的模式 ...