Linux运维基础2

shell编程

格式要求:首行shebang机制
#!/bin/bash
#!/usr/bin/python
#!/usr/bin/perl

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

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

局部变量     变量赋值:name=‘value’

环境变量     变量声明、赋值:
export name=VALUE
declare -x name=VALUE

定义函数

f_name (){
…函数体…
}

函数变量作用域:

环境变量:当前shell和子shell有效

本地变量:只在当前shell进程有效,为执行脚本会启动专用子shell进程;
因此,本地变量的作用范围是当前shell脚本程序文件,包括脚本中的函数

局部变量:函数的生命周期;函数结束时变量被自动销毁

根据输入的数字判断年龄多大

#!/bin/bash

read -p “please input your age: ” age
[[ “$age” =~ ^[0-9]+$ ]] || { echo your age is false ; exit 10; }
if [ “$age” -gt 0 -a “$age” -le 18 ];then
echo you are very young
elif [ “$age” -gt 18 -a “$age” -le 50 ];then
echo “work hard”
elif [ “$age” -gt 50 -a “$age” -le 80 ];then
echo “you are retire and enjoy you life”
elif [ “$age” -gt 80 -a “$age” -le 150 ] ;then
echo “Very OK”
else
echo “you don not come from the earth”
fi

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/92699

(0)
RicadoRicado
上一篇 2018-03-19
下一篇 2018-03-19

相关推荐

  • Hadoop新增datanode与SecondaryNameNode

    无论是新增namenode还是SecondaryNameNode,操作方法大致相同 一、如果新增datanode,需要保证namenode能无密码ssh连接到新datanode 如果是添加SecondaryNameNode,则需保证其能无密码ssh连接至各datanode和namenode,namenode也需要能无密码连接到新SecondaryNameNo…

    Linux干货 2015-03-08
  • 第一周作业

    一、计算机的组成及功能(参照书籍:《计算机的组成原理》)  按照冯•诺伊曼结构,计算机的硬件由运算器、控制器、存储器、输入设备和输出设备五部分组成。  CPU   :由运算器与控制器组成。主要功能就是控制各部件协调工作。         运…

    Linux干货 2017-02-06
  • N25-第七周作业

    第七周 1、创建一个10G分区,并格式为ext4文件系统; (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl; [root@zf ~]# fdisk /dev/sdb Command (m for help): n Command action e extended p primary partit…

    Linux干货 2017-02-24
  • 文件、目录2——Linux基本命令(8)

    1.复制文件和目录 cp  SRC  DEST 源 目的地 规则: 如果目标目录下还有一个目录与源文件同名,则无法复制:            -i 覆盖前提示        &n…

    2017-07-18
  • VIM编辑器用法及练习

    VIM编辑器用法及练习 什么是vim? vim是从vi发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用,和Emacs并列成为类Unix系统用户最喜欢的文本编辑器。 Vim的第一个版本由布莱姆·米勒在1991年发布。最初的简称是Vi IMitation,随着功能的不断增加,正式名称改成了Vi IMproved。现…

    Linux干货 2016-10-30
  • n28 第二周作业

    n28 第二周作业

    Linux干货 2017-12-09