📅  最后修改于: 2023-12-03 14:55:22.602000             🧑  作者: Mango
在 Shell 脚本中,常常需要依赖一些外部的命令或库来完成某些操作,而这些依赖往往需要通过包管理器进行安装和管理。本文介绍最新的一些包纱线依赖,以方便程序员在 Shell-Bash 开发中使用。
shellcheck 是一个 Shell 脚本的静态代码分析器,它可以帮助程序员发现脚本中的一些潜在问题和错误,例如未定义变量、语法错误等。在使用 shellcheck 之前,需要先安装:
# Debian/Ubuntu
sudo apt install shellcheck
# RedHat/Fedora/CentOS
sudo yum install shellcheck
# macOS
brew install shellcheck
# 或者从源代码安装
git clone https://github.com/koalaman/shellcheck.git
cd shellcheck
cabal install
安装完成之后,可以直接在 Shell 脚本中使用 shellcheck 命令,例如:
#!/bin/bash
# 执行 shellcheck
shellcheck my_script.sh
# 或者添加 shebang
#!/usr/bin/env bash
jq 是一个命令行 JSON 处理工具,它可以方便地从 JSON 数据中提取出所需要的信息。安装 jq 的方法如下:
# Debian/Ubuntu
sudo apt install jq
# RedHat/Fedora/CentOS
sudo yum install jq
# macOS
brew install jq
# 或者从源代码安装
git clone https://github.com/stedolan/jq.git
cd jq
autoreconf -i
./configure
make
sudo make install
安装完成之后,可以直接在命令行使用 jq 命令,例如:
# 提取 JSON 数据的某个字段
curl https://api.github.com/users/octocat | jq '.login'
# 过滤 JSON 数组中的元素
curl https://api.github.com/users | jq '.[].login'
# 从 JSON 数据中获取某个字段的值并进行运算
curl https://api.github.com/repos/koalaman/shellcheck | jq '.stargazers_count * .forks_count'
fzf 是一个命令行模糊查找工具,它可以快速地在文件、命令等列表中进行查找。安装 fzf 的方法如下:
# 从 GitHub 上 clone 源代码并安装
git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf
~/.fzf/install
安装完成之后,在 Shell 中输入 Ctrl-r
,可以触发 fzf 的反向搜索功能,例如:
# 使用 fzf 进行模糊查找
Ctrl-r
fd 是一个命令行文件搜索工具,它可以用来快速地在目录及其子目录中查找指定的文件。安装 fd 的方法如下:
# Debian/Ubuntu
sudo apt install fd-find
# RedHat/Fedora/CentOS
sudo yum install fd-find
# macOS
brew install fd
# 或者从源代码安装
git clone https://github.com/sharkdp/fd.git
cd fd
cargo build --release
sudo cp target/release/fd /usr/local/bin/
安装完成之后,可以直接在命令行中使用 fd 命令,例如:
# 查找当前目录及其子目录下的所有 .md 文件
fd .md
以上是最新的一些包纱线依赖,它们都可以方便地辅助程序员完成 Shell-Bash 开发中的一些常见操作。