Linux系统之特殊字符的使用总结

1.1 概述


Linux系统可使用哪些特殊字符呢?这些特殊字符该如何使用呢?
本期文章结合具体的实践操作,向各位小伙伴总结分享关于Linux特殊字符的相关知识。


1.2 双引号””和反引号``和单引号’’


1.2.1 双引号
#双引号内可引用Linux系统命令,如date命令
[root@localhost abc]# echo "当前的时刻是:$(date '+%F %T')"
当前的时刻是:2023-07-20 13:35:34
[root@localhost abc]#
#双引号内也可引用自定义的变量
[root@localhost abc]# abc=onme0
[root@localhost abc]# 
[root@localhost abc]# echo "我是${abc},大家好!!"
我是onme0,大家好!!
[root@localhost abc]#
1.2.2 反引号
#反引号可引用Linux系统命令,如pwd和ls -l
[root@localhost abc]# echo "当前目录`pwd`中的文件有:`ls -l`"
当前目录/root/abc中的文件有:total 0
-rw-r--r-- 1 root root 0 Jul 20 13:34 abc1.txt
-rw-r--r-- 1 root root 0 Jul 20 13:34 abc2.txt
-rw-r--r-- 1 root root 0 Jul 20 13:34 abc3.txt
[root@localhost abc]# 
1.2.3 单引号
#原样输出单引号内的内容
[root@localhost abc]# echo '当前的时刻是:$(date '+%F %T')'
当前的时刻是:$(date +%F %T)
[root@localhost abc]#


1.3 重定向符号


>——标准的输出覆盖式重定向
>>——标准的输出追加式重定向
<——标准输入
标准输入——stdin——对应的数字代号是0
标准输出——stdout——对应的数字代号是1
标准输出错误——stderr——对应的数字代号是2
2>&1——stderr重定向,把stderr当做stdout进行处理
1.3.1 标准的输出覆盖式重定向
[root@localhost abc]# echo 我是第1行>abc1.txt
[root@localhost abc]# cat abc1.txt 
我是第1行
[root@localhost abc]# echo 我是第2行>abc1.txt
[root@localhost abc]# cat abc1.txt 
我是第2行
[root@localhost abc]#
1.3.2 标准的输出追加式重定向
[root@localhost abc]# echo 我是第3行>>abc1.txt
[root@localhost abc]# cat abc1.txt 
我是第2行
我是第3行
[root@localhost abc]#
1.3.3 标准输出错误
[root@localhost abc]# cat abc4.txt
cat: abc4.txt: No such file or directory
[root@localhost abc]#
1.3.4 把stderr当做stdout进行处理
[root@localhost abc]# cat abc4.txt >>abc2.txt 2>&1
[root@localhost abc]# cat abc4.txt >>abc2.txt 2>&1
[root@localhost abc]# cat abc4.txt >>abc2.txt 2>&1
[root@localhost abc]# more abc2.txt
cat: abc4.txt: No such file or directory
cat: abc4.txt: No such file or directory
cat: abc4.txt: No such file or directory
cat: abc4.txt: No such file or directory
[root@localhost abc]#


1.4 字符&&


命令1&&命令2——仅当命令1执行成功后,命令2才会执行;
[root@localhost abc]# cat abc4.txt && echo OK
cat: abc4.txt: No such file or directory
[root@localhost abc]# 
[root@localhost abc]# cat abc1.txt && echo OK
我是第2行
我是第3行
OK
[root@localhost abc]#


1.5 字符||


命令1||命令2——仅当命令1执行失败后,命令2才会执行;
[root@localhost abc]# cat abc1.txt || echo Failed
我是第2行
我是第3行
[root@localhost abc]# cat abc4.txt || echo Failed
cat: abc4.txt: No such file or directory
Failed
[root@localhost abc]#
[root@localhost abc]# cat abc1.txt && echo OK || echo Failed
我是第2行
我是第3行
OK
[root@localhost abc]#


1.6 分号;


命令1;命令2——无论命令1执行结果如何,命令2都会执行;
[root@localhost abc]# cat abc4.txt;cat abc1.txt
cat: abc4.txt: No such file or directory
我是第2行
我是第3行
[root@localhost abc]# cat abc1.txt;cat abc4.txt
我是第2行
我是第3行
cat: abc4.txt: No such file or directory
[root@localhost abc]#


1.7 管道字符|


[root@localhost abc]# ls -l | grep c2
-rw-r--r-- 1 root root 164 Jul 20 14:06 abc2.txt
[root@localhost abc]#

1.8 转义字符\


转义特殊字符\——还原字符原本含义
[root@localhost abc]# a=onme0
[root@localhost abc]# 
[root@localhost abc]# echo "正在创建文件 ${a}"
正在创建文件 onme0
[root@localhost abc]# echo "正在创建文件 \${a}"
正在创建文件 ${a}
[root@localhost abc]#


1.9 生成序列字符{}


[root@localhost abc]# touch a{01..02}.txt
[root@localhost abc]# ls
a01.txt  a02.txt
[root@localhost abc]# touch 1{A..B}.txt
[root@localhost abc]# ls
1A.txt  1B.txt  a01.txt  a02.txt
[root@localhost abc]#


1.10 字符$


引用变量及Linux系统命令
#定义变量a并赋值onme0
[root@localhost abc]# a=onme0
#引用变量a并输出
[root@localhost abc]# echo $a
onme0
[root@localhost abc]# echo ${a}
onme0
[root@localhost abc]#
#引用Linux系统命令并输出
[root@localhost abc]# echo $(date '+%F +%T')
2023-07-20 +14:57:05
[root@localhost abc]#


1.11 注释字符#


[root@localhost abc]# cat a01.txt 
onme0
[root@localhost abc]# 
[root@localhost abc]# #cat a01.txt
[root@localhost abc]#


1.12 总结


以上分享,希望各位小伙伴有所收获,欢迎各位点赞收藏和指正。
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

onme0

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值