nl /etc/passwd | sed ‘2a aaaaaa………\
bbbbbbbbbbb’
nl /etc/passwd | sed ‘2,5c No 2-5 number’
nl /etc/passwd | sed -n ‘5,7p’
-n 安静模式,否则5-7 会重复输出
ifconfig eth0 | grep ‘inet addr:’|sed ‘s/^[^0-9]*://g | set ‘s/ .*$//g’
cat /etc/profile|sed ‘s/#.*$//g’|sed ‘/^$/d’
cat /etc/profile|egrep -v "^$|^#"
sed -i ‘ ‘ filename
sed -i ‘$a juzi’ filename (发现无法操作有attr权限的文件)
egrep ‘g(la|oo)d’
egrep ‘A(xyz)+C’
sed ‘N;s/\n/=/g’ filename
sedN.txt
1
a
2
b
3
c
4
d
5
e
sed 'N;s/\n/=/g' sedN.txt
1=a
2=b
…
www.txt
1 http://www.etiantian.org/index.html
2 http://www.etiantian.orf/1.html
3 http://post.etiantian.org/index.html
4 http://mp3.etiantian.org/index.html
5 http://www.etiantian.org/3.html
6 http://post.etiantian.org/2.html
1、awk -F "/+" '{printf $2}'|sort|uniq -c
2、awk -F "/+" '{name[$2]++}END{for(domain in name) print domain "\t" name[domain] }' www.txt
3、cut -d "/" -f3 www.txt|sort|uniq -c
4、sed -e "s/^.*\/\///g;s/\/.*$//g" www.txt |sort|uniq -c
统计计算
数组计算
[ $(expr 0.1 \< 1.0 ) -eq 1 ] && echo "yes" || echo "no"
思考一下这里‘ ‘ 号的作用
有空格或者特殊符号就要加引号。
sort 排序范围的选择
不管k指定的范围如何,其他字段也会排序
sort -n -t. -k3,3 -k4.1,4.3 arp.txt
位置参数$@与$* 的区别:
不带双引号是都一样。。。
(())可用于数值计算和数值比较
$(())判断成立时为1
if(())
判断输入是否为整数:
expr $a + 10 &>/dev/null
[ $? -eq 0 ]
“%m.nf”
对root来说,只要文件的所有者,所属组,其他人中有一个有X权限,root就可以执行该文件。
sed如何加入多行
renice 还可以这样玩:
usermod 和 gpasswd -a
找出/etc/passwd文件中的一位数或两位数
grep '\<[0-9]\{1,2\}\>' /etc/passwd
grep -E ‘\<[0-9][0-9]?\>’ /etc/passwd
- 显示/boot/grub/grub.conf中以至少一个空白字符开头的行;
grep “^[[:space:]]\+” /boot/grub/grub.conf
cat /boot/grub/grub.conf |grep -E '^[[:space:]]+'
- 添加用户bash, testbash, basher, nologin (此一个用户的shell为/sbin/nologin),而后找出当前系统上其用户名和默认shell相同的用户的信息;
useradd bash
useradd testbash
useradd basher
useradd -s /sbin/nologin nologin
grep -E “^(\w+): .*\1$” /etc/passwd