1.2 特殊字符
我们已经了解了关于 Bash SHELL 的变量部分,现在我们需要了解相关的字符介绍
.
: 放在文件名称头表明该文件是隐藏文件
#!/bin/bash
# # 在 SH 中表示为注释
# ; 在 SH 中作用为命令分隔符
echo "Hello"; echo "world"
# ;; case 条件语句终止符
# \ 转义字符标志
name=JTZ
case $name in
abc) echo "\$name = abc";;
JTZ) echo "\$name = JTZ";;
esac
# / 文件路径分割符
cd /home
# ` 将命令的执行结果返回给变量
nmae=`ls`
# : 空命令,等价于 true、"NOP"
# > 内容输出到清空的文件中
# >> 内容重定向到文件中
: > data.txt # 清空 data.txt 文件
exit 0
逻辑运算符
#!/bin/bash
# ! 表示取反
# || 或逻辑运算符
# & 后台运行操作符,如果命令后带&,那么此命令将转至后台运行。
bash$ sleep 10 &
[1] 850
# && 与逻辑操作符
算术运算符
#!/bin/bash
# + - * / %
关于数组的操作符
#!/bin/bash
# () 命令组、元组
# 当命令组使用时相当于一个子函数
(
a=hello;
echo $a;
)
Array=(a,b,c)
# 三元运算符
(( var0 = var1<98?9:21 ))
# {} 代码块、数组
Array={These,words,are,quoted}
# 当充当代码块时相当于是创建了一个 匿名函数
a=123
{ a=321; }
echo "a = $a" # a = 321 (代码块内赋值)
# [] 偏移量
Array=(a,b,c)
echo $Array[1]
# $[....] # 整数扩展符。在 $[ ] 中可以计算整数的算术表达式。
a=3
b=7
echo $[$a+$b] # 10
echo $[$a*$b] # 21
重定向
#!/bin/bash
# > 将 HELLO 输入到 filename 文件,并且覆盖掉原始文件内容
echo "HELLO" > filename.txt
# >> 将 HELLO 追加到 filename 文件
echo "HELLO" >> filename.txt
# >&
command &> filename # 将命令 command 的标准输出(stdout) 和标准错误输出(stderr) 重定向到 filename。
管道
# | 管道(pipe)。管道可以将上一个命令的输出作为下一个命令的输入,或者直接输出到shell中。管道是一种可以将一系列命令连接在一起的绝妙方式。
$ cat *.lst | sort | uniq
最后更新于
这有帮助吗?