命令行参数基础
-
命令结构
命令 [选项] [参数]
- 选项:以 (短选项)或 (长选项)开头,用于启用功能(如
ls -l
显示详情)。 - 参数:直接提供操作对象(如
rm file.txt
中的文件名)。
- 选项:以 (短选项)或 (长选项)开头,用于启用功能(如
-
常见符号解析
-a
:短选项(单字母),可合并使用(如tar -xzvf
)。--help
:长选项(多字母),语义更明确。- :标记选项结束(如
grep -- -text
搜索 “-text”)。
核心使用场景
文件操作
- 列出隐藏文件
ls -a # -a 显示所有文件(包括.开头的隐藏文件)
- 复制目录
cp -r dir1 dir2 # -r 递归复制目录
文本处理
- (忽略大小写)
grep -i "error" log.txt # -i 不区分大小写
- 统计行数
wc -l data.txt # -l 仅统计行数
系统管理
- 强制终止进程
kill -9 1234 # -9 发送SIGKILL信号
- 查看磁盘空间(人类可读格式)
df -h # -h 以KB/MB/GB显示
高级技巧
处理特殊字符
- 引号转义
文件名含空格时需用引号包裹:touch "new file.txt" # 创建带空格的文件
- 通配符扩展
匹配任意字符(如rm *.log
删除所有日志文件)。
组合参数
- 短选项合并
tar -cvzf archive.tar.gz dir/ # 等效于 -c -v -z -f
- 长选项赋值
./script.sh --output=result.txt
查看帮助文档
- 内置帮助
man ls # 查看手册页 ls --help # 快速参考
脚本中处理参数(Bash示例)
while getopts "f:v" opt; do
case $opt in
f) file="$OPTARG" ;; # 带参数的选项
v) verbose=true ;; # 标志型选项
*) echo "无效选项"; exit 1 ;;
esac
done
echo "处理文件: $file"
[ "$verbose" ] && echo "详细模式已启用"
运行方式:
./script.sh -f data.txt -v
注意事项
- 区分大小写:
-R
与-r
可能功能不同(如chmod
)。 - 参数顺序:部分命令依赖顺序(如
dd if=in of=out
)。 - 依赖上下文:同一参数在不同命令中作用可能不同(如
-r
在cp
中表示递归,在sort
中表示逆序)。
掌握命令行参数能显著提升Linux操作效率:
- 基础:短选项()、长选项()、参数传递。
- 进阶:组合参数、转义特殊字符、脚本参数解析。
- 安全:不确定时优先查阅
--help
或man
文档。
引用说明参考Linux官方文档(man7.org)、GNU Coreutils手册及《Linux命令行与Shell脚本编程大全》(Richard Blum著),确保信息专业可靠,实践前建议在测试环境验证命令。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/9911.html