Linux通配符与特殊符号知识大全汇总

上周我学习了 Linux 通配符和特殊符号。

匹配任意数量的字符。
ls.txt 列出所有 .txt 文件。

?匹配单个字符。
lsfile?.txt 与 file1 .txt 匹配。

[a-z] 匹配指定范围内的字符。
ls[1 -3 ].txt 匹配 1 .txt、2 .txt、3 .txt。

[!abc] 与指定的字符不匹配。
ls[!abc].txt 匹配以 a、b 或 c 开头的文件。

~ 主目录。
/root 超级用户的主目录。


当前目录。
./script.sh 运行当前目录中的脚本。

.. 上一个目录。
cd.. 返回上一级目录。

单引号的强引号。
echo 'hello' 逐字打印 hello。

双引号“”是弱引用。
echo "$USER" 打印变量 USER 的值。

反引号执行命令。
echo date 打印日期。

;命令分隔符。
cd /tmp; ls 首先更改目录,然后显示列表。

注释符号。
这是一条评论。

|管道字符。
猫文件.txt | grep "error" 过滤包含错误的行。

$ 变量前缀。
echo $PATH 打印 PATH 环境变量。

\ 转义字符。
echo \$USER 打印 $USER。

{1 ..5 } 生成一个序列。
echo {1 ..5 } 打印 1 2 3 4 5
& 在后台运行。
Sleep 1 0 并在后台运行。

> 输出重定向。
command > file.log 将标准输出写入文件。

2 > 重定向错误。
命令 2 > error.log 将标准错误写入文件。

我不太明白这部分中的重定向顺序。
我不在乎。

文本文件的换行符:CR , LF ,CR/LF

Windows 使用 CRLF(rn),Linux 使用 LF(n),早期版本的 macOS 使用 CR(r)。

CRLF表示回车+换行,LF表示仅换行。

右下角可以切换VSCode。
Git 使用 git config --global core.autocrlf false 禁用自动转换。

FTP 使用二进制模式传输 (BIN),并且不转换换行符。

自己掂量一下。