Linux
目录
目录切换:
# 根目录
cd /
# 进入用户主目录
cd
# 用户主目录
cd ~
# 当前目录
cd .
# 返回上级目录
cd ..
创建:
# 创建文件夹
mkdir 文件夹名称
# 创建文件,要加文件后缀
touch 文件名称
# 创建并进入文件夹
mkdir 文件夹名称 && cd 文件夹名称
# 通过 echo 写入文件内容,注意:会覆盖所有的内容
echo "content" > readme.txt
# 在文件尾部追加内容,不会覆盖前面的内容
echo "content" >> readme.txt
查看:
# 查看当前路径
pwd
# 查看当前目录下的子目录和文件
ls
# 查看文件内容,会将内容输出到终端
cat readme.txt
# 查看历史操作记录
history
# 清空窗口内容
clear
删除:
# 删除空文件夹
rmdir 文件夹路径
# 删除非空文件夹,-r 表示递归,会有确认提示
rm -r 文件夹路径
# 删除非空文件夹,-f 表示强制删除
rm -rf 文件夹路径
# 删除单个文件
rm 文件路径
# 删除多个文件
rm 文件1 文件2 文件3
# 有提示地删除文件
rm -i 文件路径
# 强制删除文件
rm -f 文件路径
系统命令
- uname 显示系统信息:内核版本、机器 类型等
Vmware
下载安装 Vmware 后,需要下载 Ubuntu 系统镜像
shell 脚本
#!/bin/bash
echo "执行的脚本名称:"$0
echo "参数个数:"$#
echo "所有参数:"$@
echo "第1个参数:"$1
# 当前目录
localURL=$(pwd)
echo "$localURL"
# 设置默认值,如果没有传入参数,就使用默认值prod
param=${1:-prod}
# 判断参数值,并执行对应的逻辑
if [ "$param" = "prod" ]; then
echo "执行逻辑1"
elif [ "$param" = "stage" ]; then
echo "执行逻辑2"
else
echo "未知参数"
exit 1
fi
read -n1 -p "Press any key to exit"
echo
exit 0
- 使用非零的退出码来表示错误状态,如例子中的「未知参数」
- 退出码为 0 通常表示成功,一般放在脚本的最后一行
curl 命令
curl
是一个强大的命令行工具,适用于各种网络请求和数据传输任务。
- 支持多种协议,包括 HTTP、HTTPS、FTP、FTPS、SMTP、IMAP 等
- 支持多个操作系统,包括 Linux、macOS 和 Windows
基本用法
1、获取并显示网页内容
curl http://example.com
2、保存网页内容到文件
curl -o example.html http://example.com
3、显示 HTTP 响应头
curl -I http://example.com
4、发送 POST 请求
curl -X POST -d "username=admin&password=123456" http://example.com/login
5、添加自定义 HTTP 头
curl -H "Content-Type: application/json" -H "Authorization: Bearer YOUR_TOKEN" http://example.com/api
6、使用代理
# HTTP 代理
curl --proxy http://127.0.0.1:8001 http://example.com
# SOCKS5 代理
curl --socks5 127.0.0.1:8001 http://example.com
配置选项
-X <method>
:指定 HTTP 请求方法(GET、POST、PUT、DELETE 等)。-d <data>
:发送数据(通常用于 POST 请求)。-H <header>
:添加自定义 HTTP 头。-I
:仅获取 HTTP 头信息。-o <file>
:将输出保存到文件。-O
:将远程文件保存到本地,并使用远程文件的名称。-L
:跟随重定向。--data-urlencode <data>
:URL 编码数据。--form <data>
:发送 multipart/form-data。--silent
或-s
:静默模式,不显示进度条。--verbose
或-v
:显示详细的通信信息。--insecure
或-k
:忽略 SSL 证书验证。--user <user:password>
:提供 HTTP 认证信息。--proxy <host:port>
:使用 HTTP 代理。--socks5 <host:port>
:使用 SOCKS5 代理。
更多示例
1、跟随重定向
curl -L http://example.com
2、提供 HTTP 认证信息
curl --user admin:password http://example.com/protected
3、上传文件
curl -F "file=@/path/to/file.txt" http://example.com/upload
4、上传 JSON 数据
curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' http://example.com/api
5、使用 --retry
选项自动重试
curl --retry 999 --retry-delay 5 http://example.com
6、限制下载速度
curl --limit-rate 100K http://example.com/largefile
7、使用 --range
选项下载部分内容
curl --range 0-1000000 http://example.com/largefile
8、使用 --continue-at
选项继续下载
curl --continue-at - http://example.com/largefile -o largefile