4、bash中的特殊符号与数据流重定向
admin
2024-02-24 20:01:07

文章目录

  • 通配符
  • 特殊字符
  • 数据流重定向
    • 输出重定向
    • 输入重定向
      • <
      • <<

通配符

符号意义
*0个到多个任意字符
?一个任意字符
[]括号中的任意一个字符
[-]括号中编码范围内的任意字符,例如[0-9]表示所有数字
[^]若中括号中的第一个字符为 ^ ,则表示不在中括号中的任一字符,例如[^0-9]表示非数字的任一字符

特殊字符

符号意义
#注释符号
\转义符
|管线,分隔两个管线命令的符号
;连续下达命令的分隔符
~当前用户的主文件夹
$取变量的符号,例如取变量 PATH 的值使用$PATH
&后台执行
!逻辑非
/目录符
>数据重定向:取代
>>数据重定向:追加
<数据重定向:导入
<<数据重定向:导入
'(单引号)原生字符串
"(双引号)可以替换变量
&&与,如果前一个指令执行成功,则执行后边的指令
||或,如果前一个指令执行失败,则执行后边的指令

数据流重定向

输出重定向

执行一个指令的时候,会有两个输出:

  • 标准输出(standard output)
  • 标准错误输出(standard error output)

标准输出重定向使用:> 或者 >>
标准错误输出重定向使用:2> 或者 2>>

如果不想看到输出,也不想存储到文件的话,可以将输出写入到 /dev/null。不会占用空间

例子:

# 将标准输出 与 标准错误输出 写到不同文件
cat test.txt > std_out.txt 2> std_err.txt# 将标准输出 与 标准错误输出 写入相同文件
cat test.txt > std.txt 2>&1
# 或者
cat test.txt &> std.txt

输入重定向

<

输出重定向:简单来说就是:将原本需要由键盘输入的数据,改由文件内容来取代
例如:

# 创建catfile,catfile的内容从 test.txt 获取
cat > catfile < test.txt

<<

<< 这个符号,可以指定结束符,只要在输入了“结束符”的时候,才会结束输入
例如:

# 指定eof为结束符,也就是只有输入了eof的时候才会结束输入
cat > catfile << "eof"
> csdn
> 色即是空,空即是色
> eof# 查看刚输入的内容,结束符号不会被写入到文件当中
cat catfile
csdn
色即是空,空即是色

相关内容

热门资讯

一笔被机构拒绝的投资,狂赚超2...   200倍收益靠运气还是实力?答案或许就藏在这里。  格雷厄姆是一个谨小慎微的投资者,他总是用最保...
疑似左腿受伤!马杜罗被抓后首次...   来源:华夏时报  1月4日,据中国新闻网援引美国有线电视新闻网(CNN)报道,当地时间1月3日,...
沉下心来抓落实、办实事——各地...   开栏的话  “十五五”时期是基本实现社会主义现代化夯实基础、全面发力的关键时期。今年是“十五五”...
北京开展第三代社保卡常态化换发... (来源:千龙网)关于开展第三代社会保障卡常态化换发工作的通知北京市各参保单位、参保人:按照本市第三代...
新疆新星市:构建兵团千亿级煤化... 中新网新疆新星1月4日电 (史玉江 王晓燕)“十四五”期间,新疆生产建设兵团(下称“兵团”)以构建现...