shell脚本变量学习小记

原创 2011年09月03日 07:15:46

1、查看所有的shell变量

set

2、查看所有的只读shell变量

readonly

3、变量设置值

格式:var_name=var_value

注意:=连接变量名和变量值,=两侧不能有空格;当值var_value含空格时,需要双引号把var_value包起来

4、输出变量值

echo $var_name

echo ${var_name}

5、变量值连接

echo $var_name1$var_name2

注意,两个变量之间没有空格

6、查看所有环境变量

env

7、给环境变量设置值

VAR_NAME=VALUE

export VAR_NAME

8、清除变量

unset var_name

9、导出变量到子脚本中

父脚本中定义好变量,然后 export var_name

子脚本中可以使用该变量. $var_name或${var_name}

10、上次执行命令或函数的返回值

          $?

        一般情况,0表示成功

11、进程id

           ×)脚本运行的当前进程id(The program's PID)

$$

×)最后执行的后台命令的PID(Last program's PID)

$!

12、传递给shell脚本的参数个数

$#

13、反引号`

设置系统的命令输出到变量

echo "shell file name is :`basename $0` "

14、以串行形式,打印当前整个目录

echo *

15、替换运算符,

           1) ${var_name:-def_Val}    

                  如果变量var_name存在且为非null,返回该变量的值,否则返回默认值def-Val

                   注意var_name与:之间没有空格,:与-之间可以有空格。主要用途,如果变量未定义,则用默认值.

            2) ${var_name:=val}   

                   如果变量var_name存在且为非null,返回该变量的值,否则,把val的值赋给变量var_name,并返回var_name的值val

                   注意var_name与:之间没有空格,:与=之间也不能有空格。

            3)${var_name:?message},  

                 如果变量var_name存在且为非null,返回该变量的值,否则返回该变量的名字var_name:提示信息meesage,并退出当前命令或脚本

   注意var_name与:之间没有空格,:与?之间也不能有空格。

             4) ${var_name:+val}   

                  如果变量var_name存在且为非null,返回val,否则返回null

                 注意var_name与:之间没有空格,:与+之间也不能有空格。

15、返回变量长度

        ${#val_name}

16、参数

       ×) 显示所有命令行参数

         $*  或 $@

       ×)脚本程序名称

         $0

       ×)第n个参数

         $n 

        说明: $1 第一个参数 ,$2 第二个……

17、算术运算操作  $(())       

       $((var1 opr var2)) 

只能是+-*/ 和()运算符,并且只能做整数运算

       例如:  $((5+1))

18、命令代换$()

类似于 反引号`

例如:echo $(date)


         








CEF学习小记(一)-搭建运行环境

首先要感谢HEY! Code上的这篇文章,通过这篇及随后的三篇文章可以很迅速的搭建最基本的CEF示例。在此我就不赘述了。 当然,这种搭建方法很是粗糙,当然CEF新手很容易上手。以后的项目会才这篇文章...
  • yitucom123
  • yitucom123
  • 2016年10月27日 18:32
  • 463

shell脚本学习小记

shell脚本的一些基本代码的语法细节
  • a5nan
  • a5nan
  • 2016年04月13日 15:46
  • 152

shell脚本中的变量

1     在命令行中和脚本 中, 变量定义得格式:name=value             //=左右两边不能有空格,否则会当做命令来对待,输出一个command not foundecho ...
  • lhq9220
  • lhq9220
  • 2011年05月27日 16:46
  • 9663

shell脚本的作用,shell脚本变量的定义和三种赋值方式【shell脚本的学习笔记一】

shell脚本的作用,第一个shell脚本,shell脚本的变量,shell给定的特殊变量,shell脚本的三种赋值方式...
  • u010317005
  • u010317005
  • 2016年03月14日 22:26
  • 19253

Shell脚本学习(一)Shell命令基础

Shell脚本学习(一)Shell命令基础
  • birdben
  • birdben
  • 2016年08月08日 23:55
  • 20002

【Linux】Shell脚本学习总结篇

【Linux】Shell脚本学习总结篇shell学习分为下面3个部分: shell基本命令回顾 shell基本语法学习 awk/sed 工具学习 关于shell的介绍之类的在这里不做赘述!shell基...
  • bitboss
  • bitboss
  • 2017年06月11日 17:24
  • 1204

Shell脚本学习笔记-变量使用及输入输出

1. 变量的定义 1.1 变量名可以由字母、数字、下划线组成,但数字不能作为变量名的第一个字符。 1.2 通过赋值符号“=”来定义变量的值,e.g: myname='test',  字符串类型,不解析...
  • swordgirl2011
  • swordgirl2011
  • 2016年04月17日 11:58
  • 1133

shell脚本学习2——变量

Shell支持自定义变量。 定义变量 定义变量时,变量名不加美元符号($),如: variableName="value" 注意,变量名和等号之间不能有空格,这可能和你熟悉...
  • Watson2016
  • Watson2016
  • 2016年08月30日 11:13
  • 331

shell脚本中$#、$0、$@等特殊变量的含义

#!/bin/sh echo "\$#:$#" echo "\$0:$0" echo "\$1:$1" echo "\$2:$2" echo "\$@:$@" echo "\$*:$*" echo "...
  • DLUTBruceZhang
  • DLUTBruceZhang
  • 2013年11月16日 22:02
  • 1679

菜鸟shell 脚本学习日记

1、shell 脚本统计当前目录下指定后缀文件行数: 获取当前目录下所有后缀为.txt 文件行数,包含空白行(包括子目录): $find . -name "*.sh" |xargs cat |wc -...
  • cxj415
  • cxj415
  • 2017年11月29日 23:10
  • 52
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:shell脚本变量学习小记
举报原因:
原因补充:

(最多只允许输入30个字)