马哥linux0811作业内容

  1. 总结位置变量$1,$2.. $10,$11…MAX

    位置变量的含义分别就是代表第几个参数,$1就是脚本运行的第一个参数.$2就是第二个.以此类推.直到最后.

  2. $*,$@,$# 区别

特殊变量:

$0 : 表示命令本身

$#:传递给命令的参数个数

$*:传递给脚本的所有参数(所有参数是一个整体的字符串)

$@:传递给脚本的所有参数(各个参数都是独立的字符串)

$*和$@的区别

相同点就是都是传递所有参数

不同点:

$*传递的所有参数是看作一个整体的字符串

$@传递的所有参数是看作一个个独立的字符串

例证:

blob.png

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

blob.png

4.编写脚本/root/bin/backup.sh,可实现每日将/etc/目录备份到/root/etcYYYY-mm-dd中

blob.png

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

blob.png

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

blob.png

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

blob.png

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

blob.png

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

blob.png

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

blob.png

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

blob.png

12.写一个脚本checkdisk.sh,检查磁盘利用率高于80的,并报警

blob.png

13.编写脚本/bin/per.sh,判断当前用户对指定的参数文件,是否不可读并且不可写

blob.png

14.编写脚本/root/bin/excute.sh ,判断参数文件是否为sh后缀的普通文件,如果是,添加所有人可执行权限,否则提示用户非脚本文件

blob.png

15.编写脚本/root/bin/nologin.sh和login.sh,实现禁止和充许普通用户登录系统

nologin.sh

blob.png

login.sh

blob.png

16.写一个脚本/root/bin/hostping.sh,接受一个主机的IPv4地址做为参数,先判断是否合格IP,否,提示IP格式不合法并退出,是,测试是否可连通。如果能ping通,则提示用户“该IP地址可访问”;如果不可ping通,则提示用户“该IP地址不可访问”

blob.png

17.计算从脚本第一参数A开始,到第二个参数B的所有数字的总和,判断B是否大于A,否提示错误并退出,是则计算之

blob.png

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

(0)
KartikKartik
上一篇 2016-08-18 22:29
下一篇 2016-08-19 08:36

相关推荐

  • 从shell眼中看世界–展开和引用

    这篇博客的目的在于加深对于展开和引用的理解,阐释展开和引用之间联系。 ‘ ‘ :强引用,其中的变量引用不会被替换为变量值,而保持原字符串       ” “:弱引用,其中的变量引用会被替换为变量值    如果之前对于’ …

    Linux干货 2017-04-16
  • 玩转Nginx之一:基础概念

    Nginx web服务器:http协议 http协议:html,MIME(多用途互联网邮件拓展) major/minor text/html,text/plain,image/jpeg web资源:URL(scheme://server:port/path/to/source) 方法:GET,HEAD(相应首部)读取资源 POST提交表单 PUT上传数据 D…

    Linux干货 2016-10-29
  • 文件系统挂载

    挂载: 将额外文件系统与根文件系统某现存的目录建立起关联关系,进而使得此目录做为其它文件访问入口的行为 卸载: 为解除此关联关系的过程 把设备关联挂载点:mount Point mount 卸载时:可使用设备,也可以使用挂载点 umount mount   umount命令都是临时生效,机器重启后失效 挂载点下原有文件在挂载完成…

    Linux干货 2017-04-30
  • 抓包获取QQ好友IP地址

    作者:网海过客 原文连接:https://www.chinasa.net/archives/326.html 原理:通过抓包软件,抓取QQ进程,向QQ好向发送UDP数据包,获取QQ好友IP地址 抓包软件:科来网络分析系统 步骤: 1、打开抓包软件,选择网卡,本地进程分析。 2、向QQ好友发起语音通话 3、在抓包软件里,找到QQ进程,数据包,过滤UDP协议,在…

    Linux干货 2017-06-30
  • 第六周-Vim、计划任务及Shell脚本练习

    一、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; cp /etc/rc.d/rc.sysinit /tmp vim /tmp/rc.sysinit 末行模式输入 :%s@^[[:space:]]\+@#&@g 二、复制/boot/grub/grub.co…

    Linux干货 2017-08-13
  • python agent应用

    BaseHTTPServer 模块说明 class BaseHTTPServer.HTTPServer(server_address, RequestHandlerClass) server_address : 是一个服务器 (ip, port)元组。 RequestHandlerClas…

    Linux干货 2016-09-19