1、定义一个对所有用户都生效的命令别名,例如:iftps='lftp 172.168.0.1/pub'
编辑/etc/bashrc 文件,在最后一行追加内容:iftps='lftp 172.168.0.1/pub'
保存后执行source /bin/bashrc
2、显示/etc/passwd文件中不以/bin/bash结尾的行
grep -v "/bin/bash" /etc/passwd
3、找出/etc/passwd文件中,包含二位数字或三位数的行
grep "<[0-9]{2,3}>" /etc/passwd
4、显示/proc/meminfo文件中以大写或小写S开头的行,用3种方式实现
grep -i "^[sS]" /proc/meminfo
grep "^[sS]" /proc/meminfo
grep -E "^(s|S)" /proc/meminfo
5、使用echo 输出一个绝对路径,使用egrep取出路径名,类型执行dirname /etc/passwd的结果
echo /etc/passwd | egrep -o '^/.+/'
6、找出ifconfig中的ip地址,要求结果只显示ip地址
ifconfig | egrep -o "(([[:digit:]]{1,2}|1[[:digit:]]{2}|2[0-5]{2}).){3}([[:digit:]]{1,2}|1[[:digit:]]{2}|2[0-5]{2})"
7、vim定制自动缩进四个字符
编辑/etc/vimrc,追加如下内容:
Set ai
Set ts=4
8、编写脚本,实现自动添加三个用户,并计算这3个用户的uid之和
! /usr/bin/env bash
sum=0
for uname in user1 user2 user3; do
id uname exists" || useradd (id -u [uid]
done
echo "uid sum = $sum"
9、find用法以常用用法的实例演示
find命令
实时查找工具,通过遍历指定起始路径下文件系统层级结构完成文件查找:
find使用方法:
find [-H] [-L] [-P] [-D debugopts] [-Olevel] [path...] [expression]
find【option】【查找起始路径】【查找条件】【处理动作】
查找起始路径:指定具体搜索目标起始路径,默认为当前目录
查找条件:指定的查找标准,可以根据文件名,大小、类型、从属关系、权限等标准进行,默认为找出指定路径下的所有文件
处理动作:对符合查找条件的文件做出的操作,例如删除等操作,默认为输出至标准输出
1、查找/var 目录下属主为root,且属组为mail的所有文件或目录
[root@gz01-sys-sdn-test01 test2]# find /var -user root -a -group mail
/var/spool/mail
/var/spool/mail/root
[root@gz01-sys-sdn-test01 test2]# find /var -user root -a -group mail -ls
130871 4 drwxrwxr-x 2 root mail 4096 Jan 3 09:09 /var/spool/mail
146011 8 -rw------- 1 root mail 7725 Jan 3 03:27 /var/spool/mail/root
2、查找/var/目录下不属于root, bin或hadoop的所有文件或目录,用2种方法
# find /var/ -not -user root -a -not -user bin -a -not -user hadoop -ls
3、查找/etc/目录下最近一周内其内容修改过,且属主不是root永恒也不是hadoop永恒的文件或目录
]# find /etc/ -mtime -7 -a -not -user root -a -not -user hadoop
4、查找/etc/目录下所有用户都没有写权限的文件
# find /etc -perm /222 -exec ls -lh {} ;
]# find /etc -not -perm /222 -ls
5、查找/etc/目录下至少有一类用户没有执行权限的文件
]# find /etc/ -not -perm -111 -ls
6、查找/etc/init.d目录下,所有用户都有执行权限,且其他用户有写权限的所有文件
]# find /etc/ -perm -111 -a -perm -002 -ls
]# find /etc/ -perm -113 -type f -ls