- 简介
- 目录大纲
- 最新文档
- 文集下载
在 Shell 中捕获管道命令失败
在 Bash 脚本开发中,错误处理是保证脚本可靠性的重要环节。尤其是在使用管道(|)组合多个命令时,如果忽略了前置命令的失败,可能导致脚本逻辑执行异常,而无法及时发现问题。本文将系统讲解 set -o pipefail 的作用、使用方法及实际示例,帮助开发者提高脚本的健壮性。 1. Bash 默认的管道返回值行为 在 Bash 中,默认情况下,管道命令的退出状态($?)由 管道中的最后一个命令 ……
Nathan - 2025年10月29日 10:58
深入理解 Bash 中的管道与子 Shell:防止常见陷阱
在使用 Bash 脚本编写和调试过程中,你是否曾遇到过这样一个困惑:明明在循环中更新了一个变量,但循环结束后,变量的值却没有发生变化?如果你曾经踩过这个坑,那么很可能你遇到了 Bash 中管道与子 Shell 的问题。本文将深入探讨这个问题,并指出一些容易疏忽的细节,帮助你避免此类陷阱。 什么是子 Shell? 在 Bash 中,每当你在脚本中执行某些操作时,Bash 可能会创建一个子 Shell……
Nathan - 2024年9月3日 15:44
Find排除多个目录并按多个后缀查找文件
导言 在 Linux 系统中,使用 find 命令可以快速定位文件和目录。但是,有时候我们需要在查找文件时排除某些特定目录,并且只查找特定后缀的文件。本文将介绍如何使用 find 命令实现这一目标。 查找并排除目录 当需要在某个目录下查找文件,但又希望排除其中的一些子目录。可以使用 -prune 选项排除指定目录。 下面是一个示例命令: bash find /home/user \( -path ……
Nathan - 2024年3月14日 16:59
sed: 匹配并在中间位置插入字符
问题示例 有如下2个字符串,实现如下需求: proxy_pass http://192.168.1.1:8080/upload; proxy_pass http://upload_server/getupload.action; 要求说明: 1. http://后到/之前可能为任何值 2. 保留路径/后的所有内容 3. 在路径/之前插入固定字符串/prefix/admin 结果演示 sh [roo……
Nathan - 2023年10月10日 12:14
sed:使用正则匹配IP地址
更新替换IP bash sed -iE 's#([0-9]{1,3}\.){3}[0-9]{1,3}#your_new_ip_address#g' your_file.txt 打印匹配IP的行 sed -nE '/([0-9]{1,3}\.){3}[0-9]{1,3}/p' your_file.txt 这个命令将会读取名为 your_file.txt 的文件,并匹配其中的IP地址。它使用了一个正则……
Nathan - 2023年9月18日 17:49