小吴同学
善良比聪明更重要
定时删除 30 天前的文件:cron 与 find 定时删除 30 天前的文件:cron 与 find
服务器上的日志文件如果一直不清理,迟早会把磁盘占满。最省心的办法是用 Linux 的 cron job 定期执行一条 find 命令,自动删掉 30 天前的旧文件。本文以每天清理 /logs 目录为例,记录完整的配置过程。 编写清理脚本cr
2020-12-13
用 sed + grep 批量替换目录下文件中的字符串 用 sed + grep 批量替换目录下文件中的字符串
改代码时经常遇到这种需求:把整个工程里某个旧字符串全部替换成新的,比如交叉编译工具链从 arm-none-linux-gnueabi- 换成 arm-linux-。手工逐个文件改既慢又容易漏,用 sed 配合 grep 一条命令就能搞定。
2020-12-06
ln -s 软链接使用指南与常见误区 ln -s 软链接使用指南与常见误区
在 Linux 下,ln -s 用来创建软链接(也叫符号链接),作用类似 Windows 里的快捷方式:它指向真实的源文件或源目录,访问链接就等于访问源。本文整理了软链接的常见用法、容易踩的坑,以及它与硬链接的区别。 基本用法创建软链接的命
2020-11-29
Shell 分割字符串的常用方法 Shell 分割字符串的常用方法
处理日志、配置文件或命令输出时,按分隔符把一个字符串切成几段是最常见的操作之一。Shell 下能做这件事的工具不少:cut、awk、IFS、参数展开、tr 各有适用场景,本文逐一给出示例。 以下示例统一使用这个字符串: str="192.1
2020-11-22
获取 Shell 脚本所在目录的绝对路径 获取 Shell 脚本所在目录的绝对路径
写脚本时经常需要引用脚本同目录下的其他文件(配置、日志目录、依赖脚本等)。这时很多人的第一反应是用 pwd 或者 $0,但这两种做法都有陷阱。总结一下,最可靠的做法其实就是一条命令: root_path=$(cd $(dirname ${B
2020-11-15
history:让历史命令显示执行时间 history:让历史命令显示执行时间
Linux 下用 history 查看历史命令时,默认只显示序号和命令本身,看不到这条命令是什么时候执行的,排查问题时很不方便。其实只要设置 HISTTIMEFORMAT 环境变量,就能让 history 显示每条命令的执行时间。 临时生效
2020-11-08
Shell 快捷键速查 Shell 快捷键速查
在终端里熟练使用快捷键,能大幅减少手在键盘和鼠标之间来回移动的时间。本文按功能对 Bash 中常用的 Ctrl 快捷键进行分组整理,方便速查。特别提醒:Ctrl+D 在不同语境下有两种完全不同的含义,文末会单独说明。 光标移动 快捷键
2020-11-01
Shell 脚本条件判断详解 Shell 脚本条件判断详解
条件判断是 Shell 脚本流程控制的基石。本文系统整理 if 语句的基本语法、[ ] 中的各类测试条件,以及 (( )) 和 [[ ]] 这两种高级写法,并附上常见用法示例。 基本语法if [ command ]; then 符合
2020-10-25
Shell 基础语法:变量、条件、循环与函数 Shell 基础语法:变量、条件、循环与函数
Shell 脚本是 Linux 运维和日常开发中最常用的自动化工具。本文整理 Shell 最基础的语法知识:变量的定义与引用、字符串操作、条件判断、循环、函数,以及一个脚本究竟有哪几种执行方式、它们之间有什么区别。 变量的定义与引用变量名由
2020-10-18
A Guided Tour A Guided Tour
A Guided TourIt’s time to take our tour. The table below lists some interesting places to explore. This is by no means a
2020-10-11
Looking Around Looking Around
Looking AroundNow that you know how to move from working directory to working directory, we’re going to take a tour of y
2020-10-04
Navigation Navigation
NavigationIn this lesson, I will introduce your first three commands: pwd (print working directory), cd (change director
2020-09-27
3 / 10