grep find shell 基础
发布时间:2020-12-16 01:43:02 所属栏目:安全 来源:网络整理
导读:1,定义一个对所有用户都生效的命令别名,例如:lftps=‘172.168.0.1/pub‘ echo "alias lftps=‘172.168.0.1/pub‘" /etc/bashrc source /etc/bashrc 2,显示/etc/passwd 文件中所有不以/bin/bash结尾的行 grep -v "/bin/bash$" /etc/passwd 3,找出/etc/passwd
1,定义一个对所有用户都生效的命令别名,例如:lftps=‘172.168.0.1/pub‘
echo "alias lftps=‘172.168.0.1/pub‘" >> /etc/bashrc && source /etc/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开头的行,用三种方式 grep -i ‘^s‘ /proc/meminfo grep ‘^[sS]]‘ /proc/meminfo grep -E ‘^(s|S)‘ /proc/meminfo 5,使用echo输出一个绝对路径,使用egrep取路径名 类型执行dirname /etc/passwd的结果 echo "/a/b/c/d" | egrep -o ‘.*/‘ 6 找出 ifconfig中的ip地址,要求结果只显示ip地址 ifconfig | egrep -o ‘inet (addr:)?([0-9]*.){3}[0-9]*‘ | egrep -o ‘([0-9]*.){3}[0-9]*‘ | head -n 1 7 vim 定制自动缩进4个字符 #!/bin/bash # sum_uid=0 for account in user1 user2 user3 do if id $account &> /dev/null then echo "$account exists" else useradd $account fi uid=$(id -u $account) sum_uid=$[$sum_uid+$uid] done echo "3个用户的UID之和是 $sum_uid" 9 find用法及常用实例 fine [options] [查找起始路径] [查找条件] [处理动作] -name 文件名查找 支持glob -iname 忽略大小写 根据从属查找 -user USERNAME -user groupname -uid -gid -nouser 查找没有属主的文件 -nogroup 文件类型查找 -type f 普通文件 d 目录文件 l 符号链接文件 b 块设备文件 c 字符设备文件 p 管道文件 s 套接字 组合查找 与:-a 或:-o 非:-not,! 文件大小 -size [+|-]#unit 常用单位:k M G #unit: (#-1,#] -#unit: [0 - #-1 ] +#unit: (#,无穷大) 时间 以天为单位 -atime [+|-]# 访问 #: 过去第几天 [#,#-1) -# (#,0] 过去#天内 +# (00,#-1] 超过多少天 -mtime 修改 -ctime 更改 以分为单位 -amin -mmin -cmin 权限 -perm [+|-]mode mode:与mode精确匹配 +mode:ugo组有一组满足都可以 -mode:小于mode的权限即可 处理动作: -print 输出至标准输出 默认的动作 -ls -delete 删除 -fls /path 查找的文件详细信息保存到指定文件中 -ok COMMAND {} ; 对查找到的每个文件执行由COMMAND指定的命令,每次操作由 用户确认 -exec COMMANd {} ; 对查找到的每个文件执行由COMMAND指定的命令,每次操作不需要用户确认 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
热点阅读