问:cp -r ./src/. ./dst
与 cp -r ./src/* ./dst
有什么区别?
1.隐藏文件和目录:
cp -r ./src/* ./dst 不会复制隐藏文件和目录。
cp -r ./src/. ./dst 会复制所有文件和目录,包括隐藏文件和目录。
2.通配符和当前目录:
* 是一个通配符,只匹配非隐藏文件和目录。
. 表示当前目录,包括所有文件和目录。
示例
假设 src 目录结构如下:
shell
./src/
file1
file2
.hiddenfile
dir/
- 执行 cp -r ./src/* ./dst 后,dst 目录结构为:
shell
./dst/
file1
file2
dir/
- 执行 cp -r ./src/. ./dst 后,dst 目录结构为:
shell
./dst/
file1
file2
.hiddenfile
dir/