shell脚本的特殊字符

1. #

注释作用, #! 除外

此外, 在参数替换 echo ${PATH#*:} 这里不表示注释, 数制转换, 不表示注释 echo $((2#101011))

2. ;

命令行分隔符, 可以在一行中写多个命令. echo hello; echo there

3. ;;

终止 case 选项

复制代码 代码如下:

case “$variable” in

abc) echo “\$variable = abc”;;

xyz) echo “\$variable = xyz”;;

esac

4. .

隐藏文件前缀

.命令等价于source

. 表示当前目录 .. 表示上一级目录

正则表达式中作为单个字符匹配

5. “”, ‘‘

双引号, 单引号, 其中双引号中可以引用变量, 而单引号中不行, 它们的作用是组织特殊字符

6. \

转义字符

7. /

文件名分隔符, 除法操作

8. ` (Esc 下边的按钮)

后置引用, 命令替换

9. :

空命令, 等价于 “NOP”

也可被认为是 shell 内建命令 true 作用相同

10. !

取反操作符 != 不等于

11. *

万能匹配符, 正则表达式中

数学乘法

** 幂运算

12. ?

测试操作

正则表达式中, ? 匹配任意单个字符

13. $

变量符号

正则表达式中 行结束符

${} 参数替换

$*,[email protected] 位置参数

$? 退出状态

$$ 进程ID

14. ()

命令组, (a=hello; echo $a), 在 () 中的命令列表将作为一个子 shell 来运行. 在() 中的变量, 由于在子shell中, 所以对于脚本剩下的部分是不可用的.

数组初始化: array=(element1, element2, element3)

15. {xxx,yyy,zzz}

大括号扩展

cat {file1,file2,file3} > combined_file, 将file1,file2,file3合并在一起并重定向到commbined_file中. 大括号中不能有空格

16. {}

代码块. 事实上, 这个结构创建了一个匿名的函数. 但是与函数不同的是, 在其中声明的变量, 对于脚本的其他部分的代码来说还是可见的.

复制代码 代码如下:

# 代码块中的内容, 外部访问, I/O重定向

1: #!/bin/bash

2:

3: File=/etc/fstab

4:

5: # 在这个代码块中的变量, 外部也可以访问

6: {

7: read line1

8: read line2

9: } < $File

10:

11: echo "First line in $File is"

12: echo "$line1"

13: echo

14: echo "Second line in $File is"

15: echo "$line2"

16:

17: exit 0

# 将一个代码块的结果保存到文件

17. {}\;

路径名, 一般都是在 find 命令中使用, 注意; 用来结束find 命令序列的 –exec

18. []

test

数组元素, 例如 array[1]=abc

字符范围, 在正则表达式中使用

19. [[]]

test 表达式本身放在[] 里

20. (())

数学计算扩展

21. >& >>& >> <

重定向

scriptname > filename 重定向脚本的输出到文件中, 覆盖原有内容

command &> filename 重定向 stdout 和 stderr 到文件中

command >&2 重定向 stdout 和 stderr

scriptname >> filename 重定向脚本输出到文件中, 添加到文件尾端, 如果没有文件, 则创建这个文件.

22. << <<<

重定向, << 用在“here document”, <<< 用在“here string”

23. \<, \>

正则表达式中的单词边界 grep ‘\<the\>‘ testfile

24. |

管道, 分析前边命令的输出, 并将输出作为后边命令的输入

25. >|

强制重定向

26. ||

逻辑或

27. &

后台运行命令, 一个命令后边跟一个&, 将表示在后台运行

复制代码 代码如下:

1: #!/bin/bash

2:

3: for i in 1 2 3 4 5 6 7 8 9 10

4: do

5: echo -n "$i"

6: done&

注意, for 循环的最后一个 done&

28. &&

逻辑与

时间: 2024-10-12 20:16:50

shell脚本的特殊字符的相关文章

shell脚本交互:expect学习笔记及实例详解

最近项目需求,需要写一些shell脚本交互,管道不够用时,expect可以很好的实现脚本之间交互,搜索资料,发现网上好多文章都是转载的,觉得这篇文章还不错,所以简单修改之后拿过来和大家分享一下~ 1. expect是spawn: 后面加上需要执行的shell命令,比如说spawn sudo touch testfile 1.3 expect: 只有spawn执行的命令结果才会被expect捕捉到,因为spawn会启动一个进程,只有这个进程的相关信息才会被捕捉到,主要包括:标准输入的提示信息,Li

Linux之进程管理及Shell脚本

使用!来调用过往命令 !! 重复执行上一条指令 !a 重复执行上一条以a为首的指令 !nubmer 重复执行上一条在history表中记录号码为number的指令 !-number重复执行前第number条指令 ailas abc='cd xxxxxxxxxxx/xxxxxxxx/xxxxxxxxxxxxx' unalias abc " "将一串字符当成字符串来看,可以转译特殊字符 ' '将一串字符当成字符串来看,无法转译特殊字符 ·能够返回命令执行的结果 echo `uname -a

shell脚本前奏

一.正则表达式: 正则表达式(Regular Expression,简称RE)就是由普通字符(例如字符a到z)以及特殊字符(称为元字符)组成的文字模式.即一种匹配模式 常用正则表达式: 1. .代表任意单个字符,如:/l..e/,le中间可以是任意两个字符. 2. ^:以...开始的行 3. $:以....结束的行   "^$"就表示空行 4. [...]:匹配括号中的字符之一 "^"如果出现在[]的起始位置,表示否定,在其他位置是普通字符.(即匹配不在此括号中的任

shell脚本扩展

一.正则表达式: 正则表达式(或称Regular Expression,简称RE)就是由普通字符(例如字符 a 到 z)以及特殊字符(称为元字符)组成的文字模式.该模式描述在查找文字主体时待匹配的一个或多个字符串. 正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配.简单的说,正则表示式就是处理字符串的方法,它是以行为单位来进行字符串的处理行为,正则表达式通过一些特殊符号的辅助,可以让使用者轻易的达到搜寻/删除/取代某特定字符串的处理程序.vim.grep.find.awk.sed等

Shell脚本编程入门到放弃

1 区分大小写 UNIX是区分大小写的,因此shell脚本也是区分大小写的 2 特殊字符 UNIX的某些字符都有特殊的意义或功能,如果它们不以其特殊的意义使用必须要进行转义(escaped). 为了转义它们需要用反斜杠或者单引号括起来. 3 shell shell(命令行解释器)是一个能够用来运行命令.程序和shell脚本的环境. 4 shell脚本 shell脚本就是命令的有机组合. shell脚本和函数都是解释型的,ASCII文本,不能被编译. 5 函数 函数的编写和脚本的编写类似,不同之处

Linux shell脚本-基础学习笔记

Linux脚本能力不是太强,最近再补习下,毕竟linux shell在日常工作中还是很普遍的, 用起来更方便.省时省力. 以下是学习笔记,偏理论,后面有几个例子,供参考. shell脚本组成元素系统命令.文本处理工具(grep\sed等).变量.条件判断.循环结构和函数 -------------------------------------------- 三剑客:grep,sed,awk,还有wc,sort,head等 ------------------------------------

FTP定时批量下载文件(SHELL脚本及使用方法 ) (转)

ftp -v -d -i -n -g [主机名] ,其中-v 显示远程服务器的所有响应信息:-n 限制ftp的自动登录,即不使用:.n etrc文件:-d 使用调试方式:-g 取消全局文件名.http://blog.itpub.net/20943428/viewspace-630467/ 1. 脚本实例 将以下脚本保存为 getftp.sh #!/bin/bash datesign=`date -d -95day +%Y%m%d` ftp -nv 12.2.2.28 <<!FTPRUN use

Linux shell脚本编程入门 (一)

环境变量 一些命令 shell脚本中经常出现各种环境变量,因此要写脚本,必须先来了解环境变量.常见的处理环境变量的命令,列举在下面 set 用来显示本地变量 env 用来显示环境变量 export 用来显示和设置环境变量 source 后面跟一个文件,可以直接执行文件里的脚本命令并更新 常见的环境变量 位置参数 相当于C语言中, main函数的argv数组, 这里用 $num 表示,其中 num 是指代一个数字. 见下面的程序实例 # foot.sh #!/bin/sh echo "#0 $0&

shell脚本之变量与状态码

目录: 前言 如何创建一个脚本 脚本调试 变量相关 变量的命令规则 bash中变量的种类 本地变量 环境变量 只读和位置变量 位置变量 查询变量 进程的退出状态与状态码 前言 在linux管理中,shell脚本很是重要,它可以帮助我们完成很多繁琐的工作,专注于更重要的事情上来,脚本的学习也是我们学习linux中所要遇到的比较困难的部分,因为它需要对vim,正则,逻辑,程序化语言有一定的熟悉,shell编程是过程式,解释执行的.它包括各种系统指令的组合,数据存储(变量,数组).表达式.语句. 在s