Shell脚本语言基础

      脚本语言通常是解释型的,是一个高级语言。它需要解释器对其进行解释执行。

1.在脚本文件第一行,使用“#!”对使用哪个解释器进行标注。例如:#!/bin/sh  、#!/bin/bash

2.给脚本文件加上可执行权限:chomd +x  shellFile

3.~$:cd work ; ls  -l  hello.java   (用分号隔开两个命令,如果命令后面跟着的是&,则在后台执行该命令) 

4.Shell识别三种基本命令:内建命令(test 、cd等)、Shell函数以及外部命令。

5.变量

   

6.基本的I/O重定向

   1)以<改变标准输入     program <  file              (file文件作为program的输入)

   2)以>改变标准输出     program >  file              (program的输出到file文件)

   3)以>>附加到文件      program >>  file            (program的输出附加到file文件结尾)

   4)以 | 建立管道           program1 |  program2  (program1的输出作为program2的输入)

7.参数表示

     $数字(1-9) //大于9的需要用{}括起来(如:${10})

8.打开/关闭执行跟踪

     set -x (打开)

     set +x(关闭)

9.国际化(i18n)和本地化(i10n)

国际化和本地化之间的区别虽然微妙,但却很重要。国际化意味着产品有适用于任何地方的“潜力”;本地化则是为了更适合于“特定”地方的使用,而另外增添的特色。用一项产品来说,国际化只需做一次,但本地化则要针对不同的区域各做一次。 这两者之间是互补的,并且两者合起来才能让一个系统适用于各地。

10.查找命令

     grep / find

     grep "MGExt_PvrRecord" ./ -R

     find ./ -name a.java


第六节(变量、判断、重复动作)

1)变量赋值     

        格式:变量名=字符 //如果字符中含有空格,则需要用引号将字符括起来

        示例:(fullName="zhang san"    oldName=$fullName)

        引用变量:$变量名

        输出变量:echo  $变量名

2)变量管理的两个命令(readonly、export)

        示例:Foo=sonmeValue

                   export Foo / readonly Foo         

注意:赋值时不要等号前变量后不要有空格,否则会将变量当作命令,把=和后面的变量值当作参数。

3)替换运算符

      ${varname:-word}         //如果varname存在并且非null,则返回其值,否则返回word

                                            功能:如果变量未定义则返回默认值。

      ${varname:=word}        //如果varname存在并且非null,则返回其值,否则设置其值为word,并返回其值。

                                           功能:如果变量定义,则设置为默认值。

      ${varname:?message} //如果varname存在并且非null,则返回其值,否则显示varname:message,并退出当前的脚本或命令。

                                           功能:为了捕捉由于变量未定义而大致的错误。

      ${varname:+word}        //如果varname存在并且非null,则返回word,否则返回null。

                                           功能:为测试变量是否存在。


   

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值