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)
上一篇 2016-08-15 09:24
下一篇 2016-08-15 09:24

相关推荐

  • 文件查找(find)

                                  …

    2017-04-11
  • Linxux运维基础小计

    常用cat、ls、touch、mkdir、cp、mv小结 ·cat连续的将文件的内容显示在银幕上 用法:cat[OPTION]…[FILE]… 参数 -A显示所有非正常的所有符号 -E显示行结束符 -T显示制表符 -v显示其他的非打印字符 -n对显示的行进行编号,与文件内容没有关系 -b:打印出行号(空白行不标行号) 直接输入cat命令表示等待用户的输入并打…

    2017-02-18
  • 第二周作业

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 目录管理类的命令: mkdir, rmdir mkdir:make directories mkdir [OPTION]… DIRECTORY… -p: 自动按需创建父目录; -v: verbose,显示详细过程; -m MODE:直接给定权限; 注意:路径…

    Linux干货 2018-01-17
  • Linux中的用户、组和权限的管理

    一、Linux的安全模型     在Linux中用户登陆时必须提供用户名和密码(用户是由root用户创建的,最初的密码也是root用户设定的)。系统使用用户和群组来控制使用者访问文件和其他资源的权限。每一个文件都一定属于一个用户(一般该用户就是文件的创造者)并与一个群组相关。每一个进程(处理程序)都会与一个用户和群组关…

    Linux干货 2016-08-07
  • Linux基础介绍

    1、Linux用户: Linux用户分为普通用户和管理员,普通用户的系统操作权限低,用户的误操作对系统数据的破坏程度有限,不会对系统造成灾难性的破坏。而管理员对系统具有绝对的权限,可以修改和设置系统的任何数据,如果误操作,及其容易对系统数据造成不可挽回的破坏,比如执行以下命令 rm  -rf  / 。因此,系统管理员在操作root用户时需…

    Linux干货 2016-07-26
  • shell 脚本 之循环 for while until 和 软件包的管理 【上】

    shell 脚本 之循环 for while until 和 软件包的管理 【上】 循环执行     将某代码段重复运行多次     重复运行多少次:             循环次数事先已知    &nbsp…

    系统运维 2016-08-18