- 統(tǒng)計(jì)每個(gè)單詞出現(xiàn)的個(gè)數(shù)
cat $1|tr -s ' ' '\n'|sort|uniq -c|sort|awk '{print $2" "$1}'
- 輸入7的倍數(shù)
for num in {0..500..7};
do
echo $num
done
for((i=0;i<=500;i=i+7));
do
echo $i
done
- 統(tǒng)計(jì)文件的行數(shù)
wc -l txt
num=0
while read line
do
num=$((num+1))
done < txt
echo $num
- 打印空行的行號(hào)
grep -n '^$' txt | cut -d ':' -f 1
num=1
while read line
do
if [ -z $line ];
then
echo $num
fi
num=$[num+1]
done < txt
5.去掉空行
grep -v -E '^$' txt
- awk num++
awk -F ':' '{sum+=$1}END{print sum}'
- 查看進(jìn)程的地址
ps -ef|grep 進(jìn)程A
ll /proc/pid/cwd
- sed修改文本內(nèi)容
sed -i 's/a/b/g' txt
- 查看目錄下文本大于1g的
find ./ -type f -size +1G
大于50m,小于100m
find ./ -size +50M -size -100M
- curl
curl www.baidu.com
curl -X POST -d "user=hy&pwd=123" url
- 寫(xiě)腳本實(shí)現(xiàn),可以用shell具壮、perl等家凯。在目錄/tmp下找到100個(gè)以abc開(kāi)頭的文件拆吆,然后把這些文件的第一行保存到文件new中
for filename in `find /tmp -type f -name "abc*"|head -n 100`
do
sed -n '1p' $filename >> new
done
find /tmp -type f -name "abc*" | head -n 100 | xargs head -q -n 1 >> new
- 文件b中有的悔橄,但是文件a中沒(méi)有的所有行,保存為文件c, 并統(tǒng)計(jì)c的行數(shù)
grep -vxFf a b | tee c | wc -l
- 獲取變量長(zhǎng)度
${#variable}
截纫鹛:最后5個(gè)字符
${variable: -5}
- 整數(shù)相加
c=$((a+b))
c=`expr $a+$b`
c=`echo "$a+$b"|bc`
15.數(shù)組
array=('a','b','c')
echo ${array[0]}
echo ${array[@]} #打印所有元素
echo ${!array[@]} #輸出索引
unset array[0] #移除元素