有关脚本的一些使用及其注意事项

1,shell 
脚本

格式要求:首行shebang机制

                 #/bin/bash

                 #!/usr/bin/python

                 #!/usr/bin/perl

shell脚本的用途:

a、自动化常用命令

b、执行系统管理和故障排除

c、创建简单的应用程序

d、处理文本或文件

 

创建脚本:

第一步:使用文本编辑器来创建文本文件

             a、第一行必须包括shell声明序列:#!例如(#/bin/bash

             b、添加注释(注释以#开头)

第二步:运行脚本

             a、给予执行权限,在命令行上指定脚本的绝对或相对路径

             b、直接运行解释器,将脚本作为解释器程序的参数运行

脚本调试:

          bash -n /path/to/some_script   检测脚本中的语法错误

          bash -x /path/to/some_script    调试执行

如果是在当前目录下创建的脚本,则执行的时候直接用 ./脚本名或者直接用脚本名就可以了(需要注意的是一定要给创建的脚本名加上执行权限)

2,进程的相关注意事项:

$:显示当前的PID

PPID:显示父进程

SHELVL: 显示当前shell是几级的bash

Pstree 显示进程数

         -p 同时显示进程PID

Ps -ef 显示进程信息

3,本地变量:只对当前shell进程有效,对于其它shell进程及子进程无效

 

环境变量:对当前shell进程及子进程都有效

               变量定义:export name =‘value’

               变量引用:$name${name}

               取消变量:unset name

               显示变量:export,env,printenv

另外,需要注意的是Set 既显示环境变量又显示本地变量

关于脚本的学习要想熟练掌握还是要多多练习,一下是一些最近做的相关练习:

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

有关脚本的一些使用及其注意事项有关脚本的一些使用及其注意事项b,编写脚本/root/bin/sumid.sh,计算/etc/passwd文件中的第10个用户和第20用户的ID之和

有关脚本的一些使用及其注意事项有关脚本的一些使用及其注意事项

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

有关脚本的一些使用及其注意事项有关脚本的一些使用及其注意事项

4,“或(||)”和“与(&&)”

与(&&)

真或假     假

真或真     真

假或真     假

假或假     假

总结:只要有一个假则假

短路与:只要前面有一个为假,则直接结束。如果前面为真,则继续判断第二个值

或(||)

真或假     真

真或真     真

假或真     真

假或假     假

总结:只要有一个真则真

短路或:只要前面有一个真,则直接结束。如果前面为假,则继续判断第二个值

以下是相关的练习:

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

有关脚本的一些使用及其注意事项有关脚本的一些使用及其注意事项

b,编写脚本/root/bin/checkdisk.sh,检查磁盘分区空间和inode使用率,如果超过80%,就发广播警告空间将满

有关脚本的一些使用及其注意事项有关脚本的一些使用及其注意事项

原创文章,作者:风之轨迹,如若转载,请注明出处:http://www.178linux.com/83750

(0)
风之轨迹风之轨迹
上一篇 2017-08-05 11:57
下一篇 2017-08-05 14:33

相关推荐

  • M20-1 8月5号作业

    作业:    1、取本机IP地址;    2、取各分区利用率的数值;    3、统计/etc/init.d/functions 文件中每个单词出现的次数,并按频率从高到低显示;    4、/etc/rc.d/init.d/functions或/etc/rc.d/init.d/fu…

    Linux干货 2016-08-15
  • 数组详解

    数组 变量:存储单个元素的内存空间 数组:存储多个元素的连续的内存空间,相当于多个变量的集合          数组名:整个数组只有一个名字     数组索引:编号从0开始,属于数值索引     &n…

    Linux干货 2016-08-24
  • keepalive高可用haproxy实现URL资源的动静分离

    keepalive高可用haproxy实现动静分离URL资源 实现要点: (1) 动静分离discuzx,动静都要基于负载均衡实现; (2) 进一步测试在haproxy和后端主机之间添加varnish缓存; (3) 给出拓扑设计; (4) haproxy的设定要求:     (a…

    Linux干货 2016-11-12
  • 条件判断if、case与文件查找locate、find及相关练习

    一、条件选择 1、if:按条件执行脚本中的内容,可以使用嵌套结构,有单分支、双分支和多分支结构,每个条件中可以有不止一条语句,如果有多条语句,可以用and(-a)或or(-o)连接在一起,但不能使用&&或||: if COMMANDS; then     COMMANDS;   &n…

    Linux干货 2016-08-18
  • 浅谈linux基础知识(一)

    一:计算机的组成 组成: 计算机的主要组成部分为计算机硬件、软件。 计算机硬件系统包括: 主机和外部设备。 主机包括:运算器、控制器、存储器(只读ROM、随机RAM)。 外部设备主要包括:输入设备、输出设备、外存储器和其他。 软件包括: 应用软件、系统软件。 二:linux的发行版及不同发行版之间的联系和区别。 1.Debian(唯一一个无商业公司支持的社区…

    Linux干货 2016-09-18
  • rpm程序包管理器

    linux程序包管理器: 协作用户管理应用程序:安装、升级、查询、校验、卸载等 软件程序包生成过程:     源代码——》目标二进制格式–》组织成为一个或有限几个包文件     源代码:程序员写好的纯文本文档格式的代码     …

    Linux干货 2016-08-19