zoukankan      html  css  js  c++  java
  • Shell基础知识(二)

    对于一个shell脚本来说,第一行是 "#!/bin/bash",这条命令中的 "#!" 告诉系统该用哪一款解释器来对该脚本进行解释,后面的"/bin/bash"用来指定解释器的具体路径
     
    第一个shell脚本
    >>
    #!/bin/bash
    echo "What is your name?" # 除了第一行的#符号,其他行的#号表示注释
    read PERSON # read用来从标准输入输出文件进行读取用户输入
    echo "Hello, $PERSON!" # 变量前面需要加上$符号
    <<
     
    执行bash文件:
    在Linux下,首先给文件可执行权限chmod +x ./filename.sh,然后直接执行./filename.sh
    在Mac下,直接使用bash ./filename.sh即可
     
    如果不想更改文件的权限,也可以直接通过点号"."执行。
    例如:. filename.sh
    还可以通过source命令执行脚本
    例如:source filename.sh
     
    shell的变量
     
    在Bash shell中,每一个变量的值都是字符串,无论在给变量赋值的时候是否使用引号,值都会以字符串的形式存储。
     
    >>
    variable=value
    variable='value'
    variable="value"
    <<
    如果value中不包含任何空白,那么可以不带引号。否则,必须使用引号。单双引号是有区别的。
    Tip:赋值号的左右两端一定不能有空格!!
     
    #!/bin/bash
    name='默存'
    echo ${name}
    echo "${name} 是个好同志!"
    最好在变量周围加上花括号,这是一个好习惯。
     
    单双引号的区别
    #!/bin/bash
    name="默存"
    name1='真${name}'
    name2="假${name}"
    echo ${name1}
    echo ${name2}
    输出
    >>

    真${name}

    假默存

    <<
    带上单引号,不管是不是变量都会原样输出。双引号可以将变量进行解析。
     
    将命令返回的结果赋值给变量
    有两种方式可以将命令返回的结果给变量赋值,分别是使用$(命令语句)或者``。如下例:
    #!/bin/bash
    bash_code=$(cat first.sh)
    echo ${bash_code}
    bash_code2=`cat first.sh`
    echo ${bash_code2}
    可以将first.sh中的内容返回。
     
    只读变量
    >> readonly variable_name
     
    删除变量
    >> unset variable_name
     
  • 相关阅读:
    【转】C#中的虚方法
    【转】ASP.NET 2.0中Page事件的执行顺序
    OWC ChartSpace控件的使用
    Ext对基本类型的扩展
    OWC PivotTable的使用方法
    .net中线程同步的典型场景和问题(1)
    python中使用汉字
    如何取消后台线程的执行
    yaffs2根文件系统的构建过程
    Fuck self.delegate = self
  • 原文地址:https://www.cnblogs.com/yinzm/p/10325053.html
Copyright © 2011-2022 走看看