作为一名前端收集的一些能在项目中用到的 Linux 脚本命令
-
Linux 中读取 JOSN 文件数据(使用 jq 获取)
# 判断 jq 是否安装 if command -v jq >/dev/null 2>&1; then echo "jq is installed" PKG_NAME=$(jq -r '.name' package.json) PKG_VERSION=$(jq -r '.version' package.json) echo $PKG_NAME echo $PKG_VERSION else echo "jq is uninstalled" # 安装 jq sudo apt-get update sudo apt-get install jq PKG_NAME=$(jq -r '.name' package.json) PKG_VERSION=$(jq -r '.version' package.json) echo $PKG_NAME echo $PKG_VERSION fi
-
Linux 中安装包
# sudo apt install <Package Name> sudo apt install unzip
-
Linux 中解压缩
.zip
文件unzip test.zip
-
Linux 中查看文件内容
less test.txt
此时可以看到文件内容,按
ctrl
+z
退出查看 -
Linux 中编辑文件内容(亦可查看)
vi test.txt # 或 vim test.txt
vi test.txt
文件存在打开文件,不存在则创建一个空文件
打开后分别可以按 a、i、o 进入编辑模式(a、i、o 3种不一样,推荐按 i)
:wq:在命令模式下,执行存盘退出操作;
:w:在命令模式下,执行存盘操作;
:w!:在命令模式下,执行强制存盘操作;
:q:在命令模式下,执行退出vi操作;
:q!:在命令模式下,执行强制退出vi操作; -
linux 终端打开或关闭输入回显
# 关闭输入回显 stty -echo #打开输入回显 stty echo
每当我杀死一个进程后,再输入命令就不回显了,特此记录
-
使用
netstat -tpln
命令可以查看当前系统中监听的 TCP 端口及其关联的进程。netstat -tpln
选项解释
- -t: 显示 TCP 端口。
- -p: 显示进程 ID 和进程名称。
- -l: 显示监听端口。
- -n: 显示数字形式的地址和端口,而不是尝试解析主机名和端口名称。
输出解释
- 命令输出通常包括以下列:
- Proto: 协议类型,通常是 tcp。
- Recv-Q: 接收队列长度。
- Send-Q: 发送队列长度。
- Local Address: 本地地址,包括 IP 地址和端口号。
- Foreign Address: 远程地址,通常为 : 表示未连接。
- State: 连接状态,对于监听端口通常为 LISTEN。
- PID/Program name: 进程 ID 和进程名称。