在Linux系统中,字符 r
在不同场景下有不同作用,以下是常见情况的分类说明:
-r
参数bash
if [ -r file.txt ]; then
echo "文件可读"
fi
-r
表示递归或原始模式
bash
chmod -R 755 dir/ # -R 表示递归操作(注意是大写R)
grep -r "pattern" /path # 递归搜索目录
\r
\r\n
)的转换
bash
dos2unix file.txt # 将Windows换行符转为Linux换行符(移除\r)
\r
使光标回到行首(用于进度条等动态输出)
bash
printf "Progress: [%-20s]%d%%\r" "####" 25 # 动态更新同一行内容
Ctrl + R
可启动反向搜索历史命令(Bash特性)
bash
(reverse-i-search)`': # 输入关键词搜索历史命令
bash
touch file_r.txt # 只是一个普通字符
-r
(小写)通常表示"readable/recursive",而 -R
(大写)可能表示"recursive"(如 chmod -R
)\r
可能导致脚本错误(可用 tr -d '\r'
删除)根据你的具体场景选择对应解释。如果遇到特定问题,建议补充上下文进一步分析。