Linux Shell基础脚本示例

1、编写脚本/root/bin/systeminfo.sh,显示主机系统信息,包括主机名,IPv4地址,操作系统版本,内核版本,CPU型号,内存大小,硬盘大小.

Linux Shell基础脚本示例

 

2、编写脚本/root/bin/backup.sh,可实现自动将/etc/目录备份到/root/etcYYYY-mm-dd.

Linux Shell基础脚本示例

 

3、编写脚本/root/bin/disk.sh,显示当前硬盘分区中空间利用率最大的值.

Linux Shell基础脚本示例

Linux Shell基础脚本示例

Linux Shell基础脚本示例

 

4、编写脚本/root/bin/links.sh,显示正连接本主机的每个远程主机的IPv4地址和连接数,并按连接数从大到小排序.

Linux Shell基础脚本示例

 

5、写一个脚本/root/bin/sumid.sh,计算/etc/passwd文件中的第10个用户和第20用户的ID之和.

Linux Shell基础脚本示例

 

6、写一个脚本/root/bin/sumspace.sh,传递两个文件路径作为参数给脚本,计算这两个文件中所有空白行之和.

Linux Shell基础脚本示例

 

7、写一个脚本/root/bin/sumfile.sh,统计/etc, /var, /usr目录中共有多少个一级子目录和文件.

Linux Shell基础脚本示例

 

8、写一个脚本/root/bin/argsnum.sh,接受一个文件路径作为参数;如果参数个数小于1,则提示用户“至少应该给一个参数”,并立即退出;如果参数个数不小于1,则显示第一个参数所指向的文件中的空白行数.

Linux Shell基础脚本示例

 

9、写一个脚本/root/bin/hostping.sh,接受一个主机的IPv4地址做为参数,测试是否可连通。如果能ping通,则提示用户“该IP地址可访问”;如果不可ping通,则提示用户“该IP地址不可访问”.

Linux Shell基础脚本示例

 

10、判断硬盘的每个分区空间和inode的利用率是否大于80,如果是,发邮件通知root磁盘已满.

Linux Shell基础脚本示例

 

循环写入文件进行测试

[root@CentOS6 teestdir]# for id in {1..194560}; do touch /boot/f$id ; echo f$id  is created;done

 

观察磁盘inode信息

[root@CentOS6 teestdir]# watch -n 1 df -i /boot

Linux Shell基础脚本示例

 

查看邮件信息

Linux Shell基础脚本示例

 

11、指定文件做为参数,判断文件是否为.sh后缀,如果是,添加x权限.

Linux Shell基础脚本示例

12判断输入的IP是否为合法IP.

Linux Shell基础脚本示例

Linux Shell基础脚本示例

 

13、计算1+2+3+…+100之间的总和.

Linux Shell基础脚本示例

 

14、输入起始值A和最后值B,计算从A+A+1…+(B-1)+B的总和.

Linux Shell基础脚本示例

输入正确的数值进行测试

Linux Shell基础脚本示例

输入错误的数值进行测试

Linux Shell基础脚本示例

 

15 chmod -rw /tmp/file1,编写脚本/root/bin/per.sh,判断当前用户对/tmp/fiile1文件 是否不可读且不可写.

Linux Shell基础脚本示例

 

所有用户没有赋予权限时测试

Linux Shell基础脚本示例

Linux Shell基础脚本示例

 

给所有用户添加rx权限后测试

Linux Shell基础脚本示例

Linux Shell基础脚本示例

由此可见root管理员对所有文件都有读写权限

 

16、编写脚本/root/bin/nologin.shlogin.sh,实现禁止和允许普通用户登录系统.

禁止普通用户登录

Linux Shell基础脚本示例

 

允许普通用户登录

Linux Shell基础脚本示例

 

原创文章,作者:cyh5217,如若转载,请注明出处:http://www.178linux.com/34372

(0)
cyh5217cyh5217
上一篇 2016-08-15
下一篇 2016-08-15

相关推荐

  • 网络N23期第二周心得

    1. Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 cp 文件复制        常用选项:            -i:交互式            -r, -R: 递归…

    Linux干货 2016-12-05
  • 在vsftp中实现基于pam_mysql的虚拟用户机制

    FTP简介 在介绍vsftp相关内容前,简单描述下FTP。FTP全称File Transfer Protocol,文件传输协议。它是一个C/S架构的协议,在Linux中其服务端实现主要有vsftpd,pureftpd,proftpd,Filezilla,本文主要介绍的是vsftp。客户端实现主要是ftp和lftp两种工具。其工作方式:主要分为两个层面的连接:…

    Linux干货 2017-01-07
  • N26-第二周作业

    linux上的文件管理命令:     1. cp命令:         作用:复制文件或目录         单文件复制:    …

    Linux干货 2017-02-15
  • N25-第二周做业

    一.Linux上的文件管理类命令都有哪些,其常用的使用方法和演示        1.目录管理的命令    mkdir rmdir              1)…

    Linux干货 2016-12-11
  • python基础 习题总结

    pyenv 编程题目总结(99乘法表 打印菱形与闪电 斐波那契数列 素数 猴子吃桃) 原反补码与异或运算 list列表

    Linux干货 2018-03-25
  • Linux概述

    计算机组成概述 计算机组成原理 如上图计算机的组成结构,CPU运行速度远远高于内存,而内存运行速度又远远高于I/O;由于三者运行速度巨大差异,如果系统仅运行一个任务(单任务系统),那么将有大量的CPU空闲时间等待缓慢的I/O及内存的读取。为提高CPU的使用效率,于是便产生了多任务系统系统的需求。 多任务系统 多任务实现的基础,我们知道计算机处理任务主要靠CP…

    Linux干货 2016-12-02