`
xitong
  • 浏览: 6177399 次
文章分类
社区版块
存档分类
最新评论

Linux中Shell脚本的符号说明

 
阅读更多
#!脚步中的第一句,指明执行脚本使用的程序
    示例:#!/bin/bash
# 注释,用于帮助信息或者忽略暂时不执行的语句
示例:# echo “hello” 
# this is a comment
$ 变量替换符号
示例:a=123;echo $a
${} 变量正规表达式,避免变量名提前截断
示例:${13}
$num 位置参数
示例:$0,$1,…,${10}
$? 最后一个命令的推出状态,一般0表示正确,其他表示错误
示例: if [ $?-ne 0 ]; then
  echo “encounter error”
fi
$! 最后一个命令执行的后台命令的ID
示例:pid=$!
$$ 运行脚本进程的ID
示例:pid=$$
$* 传递到脚步的参数,加双引号时相当于”$1$2 …”
示例:echo “Theparameters are $*”
$@ 与$*相同,加双引号相当于”$1”“$2” …
示例:a=$@
$# 传递到脚本中的参数个数,不包含$0参数
示例: echo “theparameter number is $#”
$- 保存当前shell的设置信息,如果结果中有i,则表示为交互式shell
示例: echo $-
; 将多个指令写在同一行上的分隔符
 示例:a=123;echo $a
;; 专用语case选项,作用类似于C语言switch语句中的break
示例: case${tao} in
            a)echo “a” ;;
             b)echo “b” ;;
esac
. 一个表示当前目录,两个表示上一级目录
示例:cd ..
, 类似于C语言中的逗号表达式
示例:let “t1=((a=5+3,b=7-1,c=15/3))”;echo $t1
! 表示逻辑运算法“非”
示例:if [ “$?”!= “0” ]; then
  echo “Execute error”
 exit 1
   fi
: 在bash中,这是一个内建命令,“什么都不干“,但是返回状态值为0
 示例: :; echo$?; :> f.out 相当于cat/dev/null > f.out
? 通配符,匹配任意一个字符,但是不包括null
 示例:ls f?n
‘’ 将其内容当作字符串,$和通配符均不扩展或者转义
 示例:a=1; echo ‘$a’ 结果为$a
“” 将其内容作为字符串,但是$可以扩展,通配符不可以
 示例:b=”string”;echo “$b” 结果为string
`` 反引号(在键盘数字1左边),其中的字符串会当成命令执行
 示例:a=`date`;echo “$a”
() 指令群组,将一串指令括起来,执行时shell会产生subshell来执行它们
 示例:(a=1;echo$a)
(()) bash的内建功能,用于算数运算
 示例:a=10;echo$a;((a++)); echo $a
[] 同test作用相同,用于表达式真假的判断
 示例: if [ 1-eq 2];then
 echo‘kill me’
  fi
[[]] bash对[]的加强版,当中允许使用||和&&,并且可以使用正则表达式
 示例:read ver
  if [[ $ver > 5 && $ $ver < 9]]; then
 echo“that’s it”
  fi
{} 指令群组,类似于(),但在当前shell中执行,还可以用于字符串的组合
 示例: mkdir{userA, userB, userC} - {home, bin, data}
\<….\> 正则表达式,匹配单词的词首和词尾
 示例: find ‘\<the\>’file
+ 加法,正则表达式中表示字符重复1~n次
 示例: grep ‘10\+9’file
- 减法,标准输入,cd命令中表示上一次的工作目录
 示例: expr 1 -2 + 3; tar -zxfv -; cd –
* 乘法,通配符,表示任何字符;一个字符重复0~n次
 示例:let “var=2*3”; ls zha*t; grep ‘a1[0-9]*’
** 次方运算
 示例:let “var=2**8”
/ 除法;目录分隔符
 示例:expr 10/2;cd /home/zc
% 取余
 示例:expr 10 %2
= 赋值;字符串比较,在[]和[[]]中不同(参见==)
 示例: a=”we”;if [ $a == ‘wee’ ]; then exit0 fi
== 字符串比较,同单个等号
 示例: a=’we’
 if[[ $a == w* ]]; then
 echo“ok”
  fi
!= 字符串比较,不等于
 示例: if [ “$a”!= “$b” ]; then …
< 字符串比较,小于;输入重定向
 示例: cat>test < suck.txt
<< 从标准输入中读取,直到分隔符
 示例: 110<< eof
> 输出重定向,文件存在覆盖,不存在则新建
 示例: ls>out 2>&1
>> 输出重定向,文件存在追加,不存在则创建
 示例: ls>>out
& 后台执行工作符
 示例: tar zcvfdata.tar.gz data >/dev/null &
&& 逻辑与,短路操作符
 示例: cp 1.txt2.txt && rm 1.txt && echo ‘success’
| 管道操作符
 示例: cat file| grep ‘fan’
|| 逻辑或,短路操作符
 示例: rm 1.txt|| echo ‘fail’
~ 根目录
 示例: cd ~
^ 正则表达式中匹配行的开头
 示例: grep ‘^home’file
\ 转义字符,续行符号
 示例: echo “\$A=$A\
This is the first line”;
分享到:
评论

相关推荐

    Linux shell脚本编写基础

    Linux shell脚本编写基础 在进行linux测试时编写脚本是必不可少的,Shell脚本的名称可以随便定义,也不要什么后缀名, 例如可以写abc,smartzip这类名称,运行时只要键入 ./smartzip就能运行脚本了。。 每行命令开头...

    《Linux shell脚本全面学习》pdf版电子书

    Linux shell脚本全面学习 1. Linux 脚本编写基础 1.1 语法基本介绍 1.1.1 开头 程序必须以下面的行开始(必须方在文件的第一行): #!/bin/sh 符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在这个例子中...

    Linux shell脚本 精华中文版

    016_基础shell编程_shell脚本介绍.pdf 017_条件测试_test_expr.pdf 018_控制流结构_if_for_while_case_util_break_continue.pdf 019_Shell函数.pdf 020_向脚本传递参数_shift_getops.pdf 021_创建屏幕输出_...

    新版Linux Shell编程实训(全)20170518.docx

    Shell脚本语言与编译型语言的差异 17 Shell分类 18 Shell使用 19 项目一 初识Linux Shell 20 [学习目标] 20 任务1.1 构建开发环境 22 任务1.2 vi/vim编辑器 33 1.2.1 vim使用实例 34 1.2.2 vim按键说明 36 任务1.3 ...

    LINUX与UNIX SHELL编程指南(很全)

    16.1 使用shell脚本的原因 151 16.2 脚本内容 151 16.3 运行一段脚本 152 16.4 小结 153 第17章 条件测试 154 17.1 测试文件状态 154 17.2 测试时使用逻辑操作符 155 17.3 字符串测试 155 17.4 测试数值 156 17.5 ...

    shell j脚本

    Linux中有好多中不同的shell,但是通常我们使用bash (bourne again shell) 进行shell编程,因为bash是免费的并且很容易使用。所以在本文中笔者所提供的脚本都是使用bash(但是在大多数情况下,这些脚本同样可以在 ...

    Linux快速入门以及shell编程基础知识

    本文将在30分钟内让你快速理解Linux系统的基础知识,并学会编写简单的shell脚本程序。 首先,Linux系统的目录结构与Windows系统不同,它采用“根目录”“home目录”“等级目录”等组织方式。学习cd,ls,mkdir等命令可以...

    shell脚本学习笔记–基础(1)

    shell脚本学习笔记–基础(1)简介脚本注释脚本解释器脚本执行脚本调试基本符号和命令含义 简介 学习Shell脚本之前,我们有必要先来认识认识什么叫Shell?谈到这个问题,我们首先来回忆一下计算机自底向上的体系,最...

    Linux 脚本编写

    1. Linux 脚本编写基础 1.1 语法基本介绍 1.1.1 开头 程序必须以下面的行开始(必须方在文件的第一行): #!/bin/sh  符号#!用来告诉系统它后面的参数是用来执行该文件的程序。...在shell脚本中可以使用三类命令:

    shell脚本中一些特殊符号

    在shell中常用的特殊符号罗列如下: # ; ;; . , / \\ ‘string’| ! $ ${} $? $$ $* \”string\”* ** ? : ^ $# $@ `command`{} [] [[]] () (()) || && {xx,yy,zz,…}~ ~+ ~- & \\&lt;…\\&gt; + – %= == != # 井号 ...

    Linux与unix shell编程指南

    16.1 使用shell脚本的原因 151 16.2 脚本内容 151 16.3 运行一段脚本 152 16.4 小结 153 第17章 条件测试 154 17.1 测试文件状态 154 17.2 测试时使用逻辑操作符 155 17.3 字符串测试 155 17.4 测试数值 156 17.5 ...

    跟老男孩学Linux运维:Shell编程实战

    Shell脚本初步入门 / 62.1 什么是Shell / 62.2 什么是Shell脚本 / 72.3 Shell脚本在Linux运维工作中的地位 / 82.4 脚本语言的种类 / 92.5 常用操作系统默认的Shell / 112.6 Shell脚本的建立和执行 / 12第3章 ...

    绝版经典《Linux与UNIX Shell编程指南》

    16.1 使用shell脚本的原因 151 16.2 脚本内容 151 16.3 运行一段脚本 152 16.4 小结 153 第17章 条件测试 154 17.1 测试文件状态 154 17.2 测试时使用逻辑操作符 155 17.3 字符串测试 155 17.4 测试数值 156 17.5 ...

    Linux Shell中的特殊符号和含义简明总结(包含了绝大部份)

    在Linux Shell中有很多的特殊符号,这对于我们写Shell脚本时要特别留意:一方面要知道这些特殊符号的用法,这些符号用好了可以达到事半功倍的效果;但另一方面要避免这些特殊符号的过度使用而导致脚本难以调试、难以...

    LINUX与UNIX SHELL编程指南 高清PDF

    16.1 使用shell脚本的原因 151 16.2 脚本内容 151 16.3 运行一段脚本 152 16.4 小结 153 第17章 条件测试 154 17.1 测试文件状态 154 17.2 测试时使用逻辑操作符 155 17.3 字符串测试 155 17.4 测试数值 156 17.5 ...

    Linux shell脚本全面学习入门

    1. Linux 脚本编写基础 1.1 语法基本介绍 1.1.1 开头 程序必须以下面的行开始(必须方在文件的第一行): #!/bin/sh  符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在这个例子中我们使用/bin/sh来执行...

    Linux shell 编程

    本书共分五部分,详细介绍了shell编程技巧,各种UNIX命令及语法,还涉及了UNIX下的文字处理以及少量的系统管理问题。本书内容全面、文字简洁流畅,适合Shell编程人员学习、参考。 目 录 译者序 前言 第一部分 shell...

    Bash Shell入门

    1. Shell脚本的第一行中的符号“#!”用来指定解释执行该脚本文件的Shell程序。如果脚 本文件中缺少该行,在执行过程中,会报出错误信息。 2. Shell脚本完成后保存为*.sh,而后增加其可执行权限:chmod +x *.sh。 3. ...

    Linux shell编程指南

    16.1 使用shell脚本的原因 151 16.2 脚本内容 151 16.3 运行一段脚本 152 16.4 小结 153 第17章 条件测试 154 17.1 测试文件状态 154 17.2 测试时使用逻辑操作符 155 17.3 字符串测试 155 17.4 测试数值 156 17.5 ...

Global site tag (gtag.js) - Google Analytics