zoukankan      html  css  js  c++  java
  • shell编程基础

    1、shell脚本是纯文本文件,可以使用任何编辑器编写,以.sh作为后缀。

    第一行:#! /bin/bash   指定用那个程序来进行解释

    例如:

    #! /bin/bash

    echo  "hello world!!!"

    记得给该文件加上可执行权限。

    2、shell中变量:必须以字母或下划线开头,可分为本能变量与环境变量,变量赋值  var=value  其中等号两边不能有空格,若要给变量赋空值,可在等号后接一个换行。

    3、export命令是一个内部命令,可以将变量设置为全局变量。 例如export A  将A设为全局变量。

    export A=200     ==    A=200; export  A   环境变量能被子进程继承

    4、变量的引用:

    显示变量的值:echo $var  或者  echo  ${echo}

    清除变量 unset var

    5、显示所有变量:set   显示所有环境变量 env 

    6、位置参量: 是一组特殊的内置变量,通常被shell脚本用来从命令行接受参数,或被函数用来保存传递给它的参数。执行shell脚本时,用户可以通过命令行向脚本传递信息,跟在脚本名后面的用空格隔开的每个字符串都称为位置参量。在脚本中使用这些参数时,需通过位置参量来引用。例如:$1表示第一个参数 ,$2表示第二个参数,以此类推。$9以后的需要用花括号把数字括起来,如第10个位置参量以 ${10}的方式来访问。

    $0表示脚本名称。

    $#表示位置参量的个数

    $*表示以单字符串显示所有位置参量

    $@未加双引号时与$*含义相同,加双引号时有区别

    $$脚本运行的当前进程号

    $!最后一个后台运行的脚本的进程号

    $?显示前面最后一个命令的退出状态。0表示没有错误,其他值表示有错误

      1 #! /bin/bash
      2 
      3 IFS=#      #影响到"$*"  参数之间的分隔符默认为空格 加上IFS改变分隔符
      4 
      5 echo shell script name is:$0
      6 echo the count of parameters:$#
      7 echo first param=$1
      8 echo second param=$2
      9 echo '$*='$*                 #单引号内容表示原封不动输出282
     10 echo '"$*"='"$*"
     11 echo '$@='$@
     12 echo '"$@="'"$@"
     13 echo '$$='$$

    [root@tlinux shell]# ./02.sh  "1 2" 3
    shell script name is:./02.sh
    the count of parameters:2
    first param=1 2
    second param=3
    $*=1 2 3
    "$*"=1 2 3     不加IFS
    $@=1 2 3
    "$@="1 2 3
    $$=4844


    [root@tlinux shell]# ./02.sh  "1 2" 3
    shell script name is:./02.sh
    the count of parameters:2
    first param=1 2
    second param=3
    $*=1 2 3
    "$*"=1 2#3
    $@=1 2 3
    "$@="1 2 3
    $$=4887

    7、数组

    数组定义:例如  arr=(math english chiness)

    引用数组变量 :echo ${arr[0]}

    数组个数:${#arr[*]}       3

    所有元素:${arr[*]}     math english chiness

  • 相关阅读:
    软件项目管理总体流程设计
    Delphi 编译时 提示 Internal error: URW3537 错误
    Oracle OLEDB 的手工分发
    Oracle10g Client的手工分发
    Delphi 处理在字符串截取中避免出现半个汉字
    Oracle ODP.Net 的手工分发
    项目中问题解决杂谈audio
    按钮 stylesheet 字符串;
    pb使用
    web测试和app测试的重点
  • 原文地址:https://www.cnblogs.com/wsw-seu/p/10814991.html
Copyright © 2011-2022 走看看