码迷,mamicode.com
首页 > 系统相关 > 详细

alias、grep、vim、find

时间:2019-04-08 13:38:36      阅读:169      评论:0      收藏:0      [点我收藏+]

标签:显示   链接文件   tab   使用   管道   exists   log   计算   时间   

1、定义一个对所有用户都生效的命令别名,例如:leftps=‘leftps 172.168.0.1/pub‘;
    alias命令可实现命令别名:
            定义别名:alias NAME=‘COMMAND‘
            撤销别名:unalias NAME

例:
技术图片
注意此命令仅对当前进程有效如果想永久有效,需要编辑.bashrc文件,此文件仅对当前用户有效,如果想要所有用户生效,需要编辑/etc/bashrc文件

        例:
        ~]# vim /etc/bashrc
        在末行输入命令别名alias p=‘ping www.baidu.com’,保存退出
        重新登陆用户

技术图片

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

技术图片

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

技术图片

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

     ~]# grep ‘^[Ss].*‘ /proc/meminfo
     ~]# grep -i ‘^s‘ /proc/meminfo
     ~]# grep -E ‘^[s|S]‘ /proc/meminfo

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

技术图片

6、找出ifcongfig中的ip地址,要求结果只显示ip地址;

技术图片

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

    编辑/etc/vimrc文件,在末行输入
    set ai
    set tabstop=4

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

    for i in {user1,user2,user3};do
                    if id $i &> /dev/null;then
                    echo ‘$i exists‘
                    else
                                    useradd $i
                    fi
    done
    user1=$(grep ^‘user1‘ /etc/passwd | cut -d: -f3)
    user2=$(grep ^‘user2‘ /etc/passwd | cut -d: -f3)
    user3=$(grep ^‘user3‘ /etc/passwd | cut -d: -f3)
    echo $[$user1+$user2+$user3]

9、find用法以及常用用法的实例演示;

    find命令
            用法:find [options] [查找起始路径] [查找条件] [处理动作]
            查找起始路径:指定具体搜索的目标路径,默认当前目录
            查找条件:指定查找的标准,可以根据文件名、大小、类型、从属关系、权限等等标准进行,默认为找出指定路径下的所有文件
            处理动作:对符合查找条件的文件作出操作,例如删除等,默认为输出至标准输出

            查找条件:
                表达式:选项和测试
                                测试:
                                根据文件名查找:
                                             -name “pattern”
                                             -iname “pattern”
                                             支持glob风格的通配符
                                             -regex pattern:基于正则表达式模式查找文件,匹配是整个路径,而非其名
            根据文件从属关系查找:
                   -user username:查找属主指定用户的所有文件
                   -group groupname:查找属组指定组的所有文件
                   -uid UID:查找属主指定的UID的所有文件         
                   -gid GID:查找属组指定的GID的所有文件
                   -nouser:查找没有属主的文件
                   -nogroup:查找没有属组的文件
          根据文件的类型查找
          -type TYPE
                   f:普通文件
                   d:目录文件
                   l:符号链接文件
                   b:块设备文件
                   c:字符设备文件
                   p:管道文件
                   s:套接字文件
          组合测试
                   与:-a,默认组合逻辑
                   或:-o
                   非:-not,!
          根据文件大小查找
          -size [+|-]#UNIT
                   常用单位:k,M,G
                   #UNIT:(#-1,#]
                   -#UNIT: [0,#-1]
                   +UNIT: (#,无穷大)
          根据时间戳查找:
                   以天为单位
                             -atime [+|-]#
                             -mtime
                             -ctime
                   以分钟为单位
                             -amin
                             -mmin
                             -cmin
          根据权限查找
                   -perm [/|-]mode
                             mode:精确权限匹配
                             /mode:任何一类用户(u,g,o)的权限中的任何一位(r,w,x)符合条件即满足
                                      9位权限之间存在“或“关系
                            -mode:每一类用户(u,g,o)的权限中每一位(r,w,x)同时符合条件即满足
                                      9位权限之间存在“与“关系
          处理动作
                   -print:输出至标准输出,默认的动作
                   -ls:类似于对查找的文件执行“ls-l“命令,输出文件得到详细信息
                   -delete:删除查找到的文件
                   -fls /path/to/somefile:把查找的所有文件的长格式信息保存至指定文件中
                   -ok COMMAND {} \;:对查找到的每个文件执行由COMMAND表示的命令

alias、grep、vim、find

标签:显示   链接文件   tab   使用   管道   exists   log   计算   时间   

原文地址:https://blog.51cto.com/14198778/2375266

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!