history
命令可用于浏览历史执行过的命令,该命令在 Bourne Shell 中不可用,但 Bash 和 Korn 则支持该特性。在 Bash 和 Korn 中,每一次命令的执行都被视为一次事件,并且配有相应的事件号(Event Number)。在需要的情况下,可以通过事件号将执行过的命令再次执行。
不带选项的 history
会在终端输出所有执行过的历史命令。
history
命令可用于浏览历史执行过的命令,该命令在 Bourne Shell 中不可用,但 Bash 和 Korn 则支持该特性。在 Bash 和 Korn 中,每一次命令的执行都被视为一次事件,并且配有相应的事件号(Event Number)。在需要的情况下,可以通过事件号将执行过的命令再次执行。
不带选项的 history
会在终端输出所有执行过的历史命令。
在 Shell 中,我们经常需要与文件打交道,所以了解文件测试操作符十分有必要。本文罗列了文件测试操作符并逐一给出示例,其中测试表达式的形式以 [[]]
给出。
原文:Differences Between Single and Double Brackets in Bash
当我们在 Bash 中做变量比较时,通常可以交换地使用单括号 []
和双括号 [[]]
。比如,我们可以使用表达式 [ 3 -eq 3 ]
或 [[ 3 -eq 3 ]]
来比较 3
是否等于 3
。两个表达式都会执行成功,那两者的区别是什么呢?
在本文中,我们会讨论单括号和双括号之间的一些区别。
jobs 命令主要用于显示系统中的任务列表及运行状态。在 Linux 中,每一个 job 都有一个唯一 ID,系统管理员通过任务 ID 对任务进行管理,可使其在前后或后台运行。通常任务和进程是等价的,只在于说侧重不同。即任务之于用户,相应地,进程之于系统。
上一篇文章介绍了 jq 中的过滤器,但单独地使用过滤器无法满足复杂的实际需求,所以 jq 中引入了特殊字符(,
和 |
)和构造器来实现定制化的输出。
jq 是 Linux 下处理 JSON 文档字符串的命令行工具,可用于过滤并格式化输出特定的内容。其官网的手册详尽地介绍了 jq 的使用方法,内容相当丰富。本文则注重对过滤器的使用,并通过不同的示例加以说明。
本文主要介绍如何基于 Docker 生成容器化应用以及配置 Nginx 来实现 Web 服务的负载均衡,包含以下内容: Go 简易 Web 程序(hello world) 通过 Dockerfile 生成镜像 Nginx 配置 Docker Compose 多容器启动 Go Web 程序 本次配置使用 Go Web 程序作为后端服务,其作用是接收请求并返回“hello-world”,代码如下: // main.go package main import ( "log" "net/http" "os" ) func main() { logFile, err := os.OpenFile("/var/log/app.log",...
Docker 命令快速查询,收集了与 docker image 相关的命令及部分示例。
Redis 集群是基于“主从复制”特性之上的分布式 Redis 版本,可提供高并发、高性能、高可用的数据库服务。Redis 集群突破了单台服务器的内存局限,集群中的每一个节点都可以存储数据,同时维护着 “key-node” 的映射表。本文记录了 3 主 3 从的 Redis 集群的配置过程,主要内容包括:
Redis 主从复制可以实现数据库的读写分离,即主节点负责接收写请求、从节点负责接收读请求,是高性能 Redis 服务的基础。所以配置 Redis 主从复制应当作为开发者的技能之一,后文内容包括: