Bash基础特性练习

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

     /etc/bashrc: 全局生效在最后一行定义。为非交互式登录的shell进程提供配置,主要配置本地变量和命令别名。

     alias 别名='原始命令'    

alias cdnet='cd /etc/sysconfig/network-scripts/'

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

3、找出/etc/passed文件中,包含两位数字或三位数的行

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

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

[root@7df49b28e751]# echo "/etc/passwd" | egrep -o "^/.*/"/etc/

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

[root@7df49b28e751 ~]# ifconfig | grep -o "\<[1-2]\{,1\}[0-9]\{1,2\}\.[1-2]\{,1\}[0-9]\{1,2\}\.[1-2]\{,1\}[0-9]\{1,2\}\.[1-2]\{,1\}[0-9]\{1,2\}\>" 

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

复制配置文件至用户家目录,使得设置只针对此用户生效。

# cp /etc/vimrc ~/.vimrc

在配置文件中加:set tabstop=4 set expandtab

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

[root@7df49b28e751 ~]# bash useradd.sh

add user1 finished.

add user2 finished.

add user3 finished.

Id Count 3009.

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

查找文件

find ./ -type f

查找目录

find ./ -type d

查找名字为test的文件或目录

find ./ -name test

查找名字符合正则表达式的文件,注意前面的‘.*’(查找到的文件带有目录)

find ./ -regex .*so.*\.gz

查找目录并列出目录下的文件(为找到的每一个目录单独执行ls命令,没有选项-print时文件列表前一行不会显示目录名称)

find ./ -type d -print -exec ls {} \;

查找目录并列出目录下的文件(为找到的每一个目录单独执行ls命令,执行命令前需要确认)

find ./ -type d -ok ls {} \;

查找目录并列出目录下的文件(将找到的目录添加到ls命令后一次执行,参数过长时会分多次执行)

find ./ -type d -exec ls {} +

查找文件名匹配*.c的文件

find ./ -name \*.c

打印test文件名后,打印test文件的内容

find ./ -name test -print -exec cat {} \;

不打印test文件名,只打印test文件的内容

find ./ -name test -exec cat {} \;

查找文件更新日时在距现在时刻二天以内的文件

find ./ -mtime -2

查找文件更新日时在距现在时刻二天以上的文件

find ./ -mtime +2

查找文件更新日时在距现在时刻一天以上二天以内的文件

find ./ -mtime 2

查找文件更新日时在距现在时刻二分以内的文件

find ./ -mmin -2

查找文件更新日时在距现在时刻二分以上的文件

find ./ -mmin +2

查找文件更新日时在距现在时刻一分以上二分以内的文件

find ./ -mmin 2

查找文件更新时间比文件abc的内容更新时间新的文件

find ./ -newer abc

查找文件访问时间比文件abc的内容更新时间新的文件

find ./ -anewer abc

查找空文件或空目录

find ./ -empty

查找空文件并删除

find ./ -empty -type f -print -delete

查找权限为644的文件或目录(需完全符合)

find ./ -perm 664

查找用户/组权限为读写,其他用户权限为读(其他权限不限)的文件或目录

find ./ -perm -664

查找用户有写权限或者组用户有写权限的文件或目录

find ./ -perm /220

find ./ -perm /u+w,g+w

find ./ -perm /u=w,g=w

查找所有者权限有读权限的目录或文件

find ./ -perm -u=r

查找用户组权限有读权限的目录或文件

find ./ -perm -g=r

查找其它用户权限有读权限的目录或文件

find ./ -perm -o=r

查找所有者为lzj的文件或目录

find ./ -user lzj

查找组名为gname的文件或目录

find ./ -group gname

查找文件的用户ID不存在的文件

find ./ -nouser

查找文件的组ID不存在的文件

find ./ -nogroup

查找有执行权限但没有可读权限的文件

find ./ -executable \! -readable

查找文件size小于10个字节的文件或目录

find ./ -size -10c

查找文件size等于10个字节的文件或目录

find ./ -size 10c

查找文件size大于10个字节的文件或目录

find ./ -size +10c

查找文件size小于10k的文件或目录

find ./ -size -10k

查找文件size小于10M的文件或目录

find ./ -size -10M

查找文件size小于10G的文件或目录

find ./ -size -10G

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容