第四周作业

匿名 (未验证) 提交于 2019-12-02 23:00:14

1.定义一个对所有用户都生效的命令别名,例如:lftps='ftp 172.168.0.1/pub'

想要对所有用户永久生效需要把alias命令写入到/etc/profile文件中: alias lftps='ftp 172.168.0.1/pub'

2.显示/etc/passwd文件中不以/bin/bash结尾的行

grep -v "/bin/bash$" /etc/passwd

3.找出/etc/passwd文件中,包含二位数字或者三位数的行。

grep "\<[[:digit:]]\{2,3\}\>" /etc/passwd grep -E "\<[0-9]{2,3}\>" /etc/passwd egrep "\<[[:digit:]]{2,3}\>" /etc/passwd

4.显示/proc/meminfo文件中以大写或小写S开头的行;用三种方式实现

grep -i ^s /proc/meminfo grep "^[sS]" /proc/meminfo egrep  "^(s|S)" /proc/meminfo

5.使用echo输出一个绝对路径,使用egrep取出路径名,类似执行dirname /etc/passwd的结果

echo /etc/passwd |egrep -o ".*/\<"

6.找出ifconfig中的ip地址。要求结果只显示IP地址

ifconfig | grep -o "[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}" ifconfig |egrep -o "[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}"

7.vim定制自动缩进四个字符

/etc/vimrc文件添加: set tabstop=4

8.编写脚本,实现自动添加三个用户,并计算这三个用户的uid之和

[root@www ~]# vim uid_sum.sh #!/bin/bash id_sum=0 [ $# -lt 3 ] && echo "请输入三个用户:" && exit 1 for i in $* ;do     useradd $i && echo "${i}创建成功"     id_num=$(id -u $i)     id_sum=$[${id_sum}+${id_num}] done echo "三个用户uid之和为:$id_sum"  [root@www ~]# bash uid_sum.sh us1 us2 us3 us1创建成功 us2创建成功 us3创建成功 三个用户uid之和为:3039

9.find用法已经常用用法的实例演示。

find命令:

概述:find用于文件查找,它提供了非常多的查找条件,功能强大,可以通过遍历指定起始路径完成文件查找

用法:

find [OPTIONS] [path...] [expression] [action]

path: 查找起始路径,需要指定搜索目标起始路径,默认为当前目录

expression: 查找条件可以根据文件名、大小、类型、从属关系、权限等标准进行,默认为找出指定路径下的所有文件

action:处理动作,对符合条件的文件做出的操作,例如删除等,默认为输出至标准输出

常用用法:

(1). 根据文件名查找:

    -name  "pattern" //根据文件名查找(精确查找)     -iname "pattern" //根据文件名查找,但是不区分大小写     支持glob风格的通配符:     *, ?, [], [^]     例:find /tmp -name "[ab]*"  查找/tmp目录下名称包含ab任意字符的文件

(2). 根据文件从属关系查找:

    -user     //根据属主来查找文件;  find /var/log -user root  -ls     -group    //根据属组来查找文件;  find /var/log -group root  -ls     -uid UID  //查找属主指定的UID的所有文件; find /tmp -uid 500      -gid GID  //查找属组指定的GID的所有文件; find  /tmp  -gid  1000      -nouser   //查找没有属主的文件;  find  /tmp -nouser     -nogroup  //查找没有属组的文件;  find  /tmp -nogroup

(3). 根据文件类型查找:

 -type TYPE     f: 普通文件     d: 目录文件     l: 符号链接文件     b: 块设备文件     c: 字符设备文件     p: 管道文件     s: 套接字文件 例:find /tmp -type f  查找/tmp目录下的普通文件

(4). 根据文件的大小查找:

-size [+|-]#UNIT 常用单位:k, M, G  find  /tmp  -size   2M           //查找在/tmp 目录下等于2M的文件 find  /tmp  -size  +2M           //查找在/tmp 目录下大于2M的文件 find  /tmp  -size  -2M           //查找在/tmp 目录下小于2M的文件

(5). 根据时间戳查找:

(6). 根据文件权限查找文件

-perm  [/|-]mode     mode:精确权限匹配;     /mode:任何一类用户(u,g,o)的权限中的任何一位(r,w,x)符合条件即满足;9位权限之间存在“或”关系;     -mode:每一类用户(u,g,o)的权限中的每一位(r,w,x)同时符合条件即满足;9位权限之间存在“与”关系;  find  /tmp  -perm  755           //查找在/tmp目录下权限是755的文件 find  /tmp  -perm  +222          //表示只要有一类用户(属主,属组,其他)的匹配写权限就行 find  /tmp  -perm  -222          //表示必须所有类别用户都满足有写权限

(7). 组合条件

与:-a, 默认组合逻辑; 或:-o 非:-not, !

处理动作:

转载请标明出处:第四周作业
文章来源: 第四周作业
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!