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

on_line_no 22602人觉得有帮助

{{ttag.title}}
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 总结
以上分享,希望各位小伙伴有所收获,欢迎各位点赞收藏和指正。

打赏鼓励作者,期待更多好文!

打赏
37人已打赏

新手741261 发表于 2023-7-27 11:32
  
非常好的技术干货帖,顶一个!
暴躁的钢索 发表于 2023-7-27 11:52
  
每天学习一点点,每天进步一点点。
新手612152 发表于 2023-7-27 12:24
  

非常好的技术干货帖,顶一个!
新手078326 发表于 2023-7-27 12:33
  

非常好的技术干货帖,顶一个!
新手899116 发表于 2023-7-27 12:37
  

非常好的技术干货帖,顶一个!
JM 发表于 2023-7-27 12:40
  

非常好的技术干货帖,顶一个!
何茂源 发表于 2023-7-27 13:00
  
感谢分享有助于工资和学习!
zjwshenxian 发表于 2023-7-27 14:28
  
非常好的技术干货帖,顶一个!
原鹏程 发表于 2023-7-27 14:57
  
感谢楼主分享,实用性很高!!!
发表新帖
热门标签
全部标签>
每日一问
技术盲盒
技术笔记
干货满满
技术咨询
新版本体验
GIF动图学习
功能体验
产品连连看
标准化排查
自助服务平台操作指引
2023技术争霸赛专题
运维工具
通用技术
秒懂零信任
技术晨报
信服课堂视频
用户认证
安装部署配置
深信服技术支持平台
安全攻防
SDP百科
设备维护
社区帮助指南
答题自测
每日一记
玩转零信任
畅聊IT
专家问答
技术圆桌
在线直播
MVP
网络基础知识
升级
上网策略
测试报告
日志审计
问题分析处理
流量管理
云计算知识
原创分享
解决方案
sangfor周刊
VPN 对接
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
功能咨询
终端接入
授权
资源访问
地址转换
虚拟机
存储
迁移
加速技术
排障笔记本
产品预警公告
信服圈儿
S豆商城资讯
技术争霸赛
「智能机器人」
追光者计划
答题榜单公布
纪元平台
卧龙计划
华北区拉练
天逸直播
以战代练
山东区技术晨报
文档捉虫活动
齐鲁TV
华北区交付直播
每周精选

本版版主

12
185
6

发帖

粉丝

关注

本版达人

LoveTec...

本周分享达人

新手24116...

本周提问达人