当前位置: 首页 > backend >正文

linux常用特殊字符

1、管道符号 |

管道符号 | 用于将一个命令的输出作为另一个命令的输入。这种机制允许将多个命令组合在一起,形成一个数据处理链,每个命令处理前一个命令的输出,从而实现复杂的数据处理任务。

例如:查询/var/log目录下所有的log文件,并进行分页显示,每 页5条

ll /var/log/*.log | more -5

2、重定向符号 > 和 追加重定向符号 >>

2.1 重定向符号 > 用于将命令的输出重定向到一个文件中。
        Ø 如果文件不存在,它将创建该文件;
        Ø 如果文件已存在,它将覆盖文件中的原有内容
例子:查询log文件中的包含”error”的行,并将其写入error.txt文件中

2.2 追加重定向符号 >> 用于将命令的输出追加到文件末尾, 而不是覆盖原有内容,追加

2.3 标准输入

stdin标准输入在Linux系统中通常用stdin来表示。它 指的是程序从用户或其他来源获取数据的通道。通过标准输入,用户可以与程序进行交互,输入数据以驱动程序的运行。

在Linux中,可以使用重定向符号来控制stdout和stderr的输出方向。例如,将正确的输出重定向到某个文件,可以简单地使用>符号,其中1代表标准输出,通常可以省略。若要将错误输出重定向到文件,则使用2>符号。

如果希望将这两种输出合并到同一个文件中,可以使用 2>&12>&1的含义:将标准错误输出重定向到标准输出。注意:符号>&是一个整体,不可分开,分开后就不是上述含义了。

例子:

#错误输出到终端,标准输出被重定向到文件file。
cat test 2>&1 >file
#标准输出被重定向到文件file,然后错误输出也重定向到和标准输出一样,所以也错误输出到文件file。
cat test >file 2>&1

3、后台执行符号 &

“&”符号用于将任务放到后台运行。通过使用“&”符号,用户可以在执行命令时不阻塞终端,继续进行其他操作。这对于需要长时间运行的任务特别有用,因为它允许用户在等待任务完成的同时,继续使用终端执行其他命令。

例子:

#在后台运行一个长时间运行的命令,如文件压缩。
tar -czf archive.tar.gz large_directory &
#同时启动多个命令在后台运行。
command1 & command2 & command3
#所有命令都会并行在后台执行查看后台任务:使用jobs命令查看当前在后台运行的任务。
jobs #jobs命令会列出后台任务及其对应的作业号。
#将后台任务带到前台:使用fg命令将后台任务带到前台。
fg %1  #将作业号为1的后台任务带到前台执行。
#终止后台任务:使用kill命令终止后台任务。
kill %1   #终止作业号为1的后台任务。

4、逻辑或符号 || 和 逻辑与符号 &&

在Linux命令中,"||”表示逻辑“或”关系。它用于指定在前一个命令执行失败时,才执行其后跟随的命令。这种用法类似于一种条件判断,根据前一个命令的执行结果来决定是否执行后续命令。

在Linux中,&&符号用于实现逻辑与操作。它的作用是,如果前面的命令执行成功(返回零退出状态),则执行后面的命令。

例子:

例1 命令失败时执行备选命令
# 尝试创建一个目录,如果目录已存在,则显示一条消息。
#如果aa目录已存在,mkdir命令会失败,然后执行echo命令显示消息。

mkdir aa || echo "目录已存在"

例2 在删除文件之前,先备份文件,只有备份成功后才删除原文件。
cp lshelp.txt shelp.txt.bak && rm lshelp.txt.txt

http://www.xdnf.cn/news/10970.html

相关文章:

  • The Elastic Stack 简介
  • 云原生架构的演进与落地:重塑企业 IT 的核心能力
  • 深度思考:摆脱无效忙碌的核心策略
  • windows可视化粘贴使用剪贴板
  • 在 RAG 系统中引入 DuckDuckGo:隐私优先的检索增强实践
  • 【大模型】ChatGLM训练框架
  • CMS32M65xx/67xx系列CoreMark跑分测试
  • 工业协议修改器:让ModbusRTU485与Profibus无障碍对话
  • SpringBoot核心注解详解及3.0与2.0版本深度对比
  • Python爬虫解析动态网页:从渲染到数据提取
  • CapCut(剪映国际版)软件及安装教程
  • 基于新课标的中小学人工智能课程教学解决方案
  • 基于大模型的短暂性脑缺血发作(TIA)全流程预测与诊疗辅助系统详细技术方案
  • 如何在 DataGrip 中 连接 Databend
  • 客户线索商机怎么管?客户线索商机管理工具哪个好?
  • 【数学】高斯积分+伽马函数公式自用背诵笔记
  • 互联网c++开发岗位偏少,测开怎么样?
  • uboot ping不了
  • 在Windows下编译出llama_cpp_python的DLL后,在虚拟环境中使用方法
  • Delphi 设置文件 永久只读
  • java30
  • 《TCP/IP 详解 卷1:协议》第4章:地址解析协议
  • 2025.6.3总结
  • 【记录】Python|Python支持if 1<a<2、if not a、if a is None这三种写法
  • JavaScript 对象展开语法
  • java29
  • 信息过载时,如何筛选重要信息
  • 把两个标签内容显示在同一行
  • BSRR对比BRR对比ODR
  • MySQL - Windows 中 MySQL 禁用开机自启,并在需要时手动启动