目录

一、逻辑运算符

1. &&(AND)

2. ||(OR)

3. 组合使用:A && B || C

二、输出与重定向

1. echo 输出

2. 标准文件描述符(FD)

3. 重定向操作符

4. 同时重定向 stdout 和 stderr

5. 丢弃输出

三、管道 |

四、自定义文件描述符(进阶)

五、小结速查


一、逻辑运算符

1. &&(AND)
  • 含义:只有左侧命令成功(退出码为 0)时才执行右侧命令。

  • 示例

    true && echo "成功"   # 输出“成功”
    false && echo "失败"  # 无输出
2. ||(OR)
  • 含义:只有左侧命令失败(退出码非 0)时才执行右侧命令。

  • 示例

    false || echo "失败"  # 输出“失败”
    true || echo "成功"   # 无输出
3. 组合使用:A && B || C
  • 等价于(A && B) || C

  • 示例

    false && echo yes || echo fallback  # 输出 fallback

二、输出与重定向

1. echo 输出
  • 默认输出到 stdout(标准输出)

  • 输出到 stderr(标准错误):

    echo "错误信息" >&2
2. 标准文件描述符(FD)
  • 0:stdin(标准输入)

  • 1:stdout(标准输出)

  • 2:stderr(标准错误)

3. 重定向操作符
  • >:覆盖写入文件

  • >>:追加写入文件

  • 2>:重定向 stderr(覆盖)

  • 2>>:重定向 stderr(追加)

4. 同时重定向 stdout 和 stderr
  • POSIX 写法

    command >out.txt 2>&1
    
    
  • Bash 简写

    command &>out.txt
5. 丢弃输出
  • 丢弃 stdout:

    command > /dev/null
  • 丢弃 stderr:

    command 2> /dev/null
  • 同时丢弃:

    command > /dev/null 2>&1
    # 或
    command &> /dev/null

三、管道 |

  • 默认:只传递 stdout,不传递 stderr

  • 传递两者

    command 2>&1 | grep something
    # 或(Bash)
    command |& grep something

四、自定义文件描述符(进阶)

  • 打开 FD 3 并写入:

    exec 3>mylog.txt
    echo "hello" >&3
    exec 3>&-  # 关闭

五、小结速查

操作说明
A && BA 成功才执行 B
A || BA 失败才执行 B
> file覆盖写入 stdout
>> file追加写入 stdout
2> file覆盖写入 stderr
2>> file追加写入 stderr
2>&1将 stderr 重定向到 stdout
&> file同时重定向 stdout 和 stderr(Bash)
> /dev/null丢弃 stdout
2> /dev/null丢弃 stderr
|管道,只传递 stdout
2>&1 | 或|& (bash)管道传递 stdout 和 stderr

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/97288.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/97288.shtml
英文地址,请注明出处:http://en.pswp.cn/diannao/97288.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MySQL EXPLAIN 查看执行计划详解

MySQL 的 EXPLAIN 命令。这是一个分析和优化 SQL 查询性能不可或缺的强大工具。它展示了 MySQL 如何执行一条 SQL 语句,包括如何使用索引、表连接顺序、估计的行数等关键信息。1. 如何使用 EXPLAIN在你要分析的 SELECT 语句前加上 EXPLAIN 或 EXPLAIN FORMATJSON&am…

TensorFlow 面试题及详细答案 120道(51-60)-- 模型保存、加载与部署

《前后端面试题》专栏集合了前后端各个知识模块的面试题,包括html,javascript,css,vue,react,java,Openlayers,leaflet,cesium,mapboxGL,threejs,nodejs,mangoDB,SQL,Linux… 。 前后端面试题-专栏总目录 文章目录 一、本文面试题目录 51. TensorFlow中保存和加…

从零开始学Shell编程:从基础到实战案例

从零开始学Shell编程:从基础到实战案例 文章目录从零开始学Shell编程:从基础到实战案例一、认识Shell:是什么与为什么学1.1 Shell的定义1.2 常用Shell解释器二、Shell编程快速入门:编写第一个脚本2.1 步骤1:创建脚本文…

机器学习算法全景解析:从理论到实践

机器学习算法全景解析:从理论到实践引言机器学习作为人工智能的核心组成部分,正在深刻地改变我们的世界。从推荐系统到自动驾驶,从医疗诊断到金融风控,机器学习算法无处不在。本文将全面系统地介绍机器学习的主要算法类别及其核心…

week5-[二维数组]对角线

week5-[二维数组]对角线 题目描述 给定一个 nnn\times nnn 的正方形二维数组,输出它两条对角线上元素的和。 输入格式 输入共 n1n 1n1 行。 第 111 行 111 个正整数 nnn。 接下来 nnn 行,每行 nnn 个正整数 aija_{ij}aij​ 表示这个二维数组。 输出格式…

GoogLeNet:深度学习中的“卷积网络变形金刚“

大家好!今天我们要聊一个在深度学习领域掀起革命的经典网络——GoogLeNet(又称Inception v1)。这个由Google团队在2014年提出的模型,不仅拿下了ImageNet竞赛冠军,更用"网络中的网络"设计理念彻底改变了卷积神…

笔记本电脑蓝牙搜索不到设备-已解决

方法1打开疑难解答,选择其他疑难解答,下划选择蓝牙,点击运行,电脑自行检测并修复蓝牙方法2右键此电脑,选择管理,找到自己的蓝牙设备。然后对箭头指向的这个点击右键,选择《更新驱动程序》&#…

WPF 程序用户权限模块利用MarkupExtension实现控制控件显示

工作记录 ------------------------------------------------------------------------------------------------------- MarkupExtension:XAML标记扩展 实现了什么作用:通过扩展标记将一种输入转化为另一种类型的输出 思路: 不直接设置控件的Visib…

SpringMVC相关梳理

SpringMVC 返回值类型(一)核心返回值类型分类视图渲染类:用于跳转并渲染页面,如String(指定视图名)、ModelAndView(视图 数据)。数据返回类:用于返回数据(而…

Docker化性能监控平台搭建:JMeter+InfluxDB+Grafana全攻略

你作为一名DevOps工程师或测试专家,正在监控一个高并发微服务系统:突发流量峰值导致响应延迟,服务器CPU飙升,但你只能手动查看日志,优化起来像大海捞针。这时,DockerJMeterInfluxDBGrafana的“梦幻四重奏”…

Adobe Acrobat 中通过 JavaScript 调用 Web 服务

强大的JavaScript支持,允许用户通过脚本自动化处理PDF文档。本文将详细介绍如何在Adobe Acrobat环境中使用JavaScript调用Web服务,包括基础概念、实现方法、代码示例以及常见问题解决方案。 第一部分:基础概念与技术背景 1.1 Acrobat JavaScr…

SpringCloud OpenFeign 远程调用(RPC)(三)

目录 1 概念导入 2 添加依赖 3 在启动类上添加注解 4 编写对应的接口 5 注入并调用 6 日志 7 超时控制 8 超时重试 9 拦截器 10 Fallback兜底 1 概念导入 Spring Cloud OpenFeign Features :: Spring Cloud Openfeign 2 添加依赖 <!-- 远程调用 --><depen…

【Flask】测试平台开发,登陆重构

概述我们在开篇的时候实现了简单的登陆功能&#xff0c;也实现了一个前后端联调的登陆功能&#xff0c;但是你有没有发现&#xff0c;那个登陆只是一个简单的登陆&#xff0c;且密码在接口返回的过程中是铭文密码&#xff0c;在生产环境中使用肯定是不行的&#xff0c;一般密码…

【Bluedroid】A2DP Source设备音频数据读取机制分析(btif_a2dp_source_read_callback)

本文聚焦Android 蓝牙 A2DP Source设备的音频数据读取核心逻辑,深入解析关键回调函数btif_a2dp_source_read_callback的功能实现,包括从 HAL(硬件抽象层,支持 HIDL/AIDL 两种传输方式)或 UIPC(用户空间进程间通信)获取音频数据的路径选择机制,以及数据下溢(Underflow)…

多方调研赋能AI+智慧消防 豪越科技人工智能创新获认可

8月26日&#xff0c;中国职业安全健康协会城市及社区安全发展专业委员会秘书长汪卫国以及常务副秘书长黄强亮等诸位领导到访委员单位豪越科技&#xff0c;展开了实地的调研活动并给予相关指导。此次调研着重于了解豪越科技自主研发的“AI消防救援一体化安全管控平台”&#xff…

算法---字符串

一、算法说明 字符串是一种类型&#xff0c;他不是一种算法&#xff0c;所以我们在处理这方面的问题的时候&#xff0c;需要结合其他的算法 二、题目 最长公共前缀 1、题目 最长公共前缀 2、解题思路 解法一&#xff1a;我们可以先让两个相互比较&#xff0c;然后在将比较…

鸿蒙Next导航与路由指南:组件导航与页面路由的完美协作

一次搞懂HarmonyOS NEXT中的两种导航方式&#xff0c;打造流畅的应用内跳转体验在鸿蒙应用开发中&#xff0c;流畅的页面导航和路由是提升用户体验的关键。HarmonyOS NEXT提供了组件导航&#xff08;Navigation&#xff09; 和页面路由&#xff08;ohos.router&#xff09; 两种…

JavaScript原型详解——面试重点

一、原型的含义&#xff1a;JavaScript 中的“原型”既指 函数身上的 prototype 对象&#xff0c;也指 对象身上的 [[Prototype]] 隐藏链接&#xff1b;它俩共同构成了“原型链”&#xff0c;决定了“找不到属性时去哪里继续找”的规则。&#xff08;1&#xff09;原型对象(pro…

Vue3 全面介绍

Vue3&#xff08;正式名称为 Vue.js 3&#xff09;是 Vue.js 前端框架的第三个主要版本&#xff0c;于 2020 年 9 月正式发布。作为对 Vue2 的重大升级&#xff0c;Vue3 在核心架构、性能优化、开发体验等方面进行了全面重构&#xff0c;同时保持了 Vue 一贯的“渐进式框架”理…

HTTP 范围请求:为什么你的下载可以“断点续传”?

在现代网络应用中&#xff0c;我们习以为常的功能&#xff0c;如断点续传、多线程下载和在线视频快进快退&#xff0c;都依赖于 HTTP 协议中的一个强大特性&#xff1a;范围请求&#xff08;Range Requests&#xff09;。这项技术让客户端能够聪明地只请求文件的一部分&#xf…