我想将笔记本电脑分区中的所有文件备份到外部硬盘驱动器。
我跑了,例如
cp -a /med*/ravb*/*00 /med*/ravb*/M*L*/7.3GB_CP && echo "7.3GB BACKED UP PROPERLY" || echo "7.3GB FAILED TO BACK UP"
Run Code Online (Sandbox Code Playgroud)
问题是点文件也被包含在内,这是我不想要的。我该怎么做才能忽略所有要备份的点文件。
gar*_*Red 29
为什么不rsync
改用?它是为工作而生的!
rsync -uan --progress --exclude=".*" <source> <destination>
Run Code Online (Sandbox Code Playgroud)
以上将列出所有要存档的文件,而无需实际复制任何内容。检查列表是否正确,然后再次运行并n
删除该选项以复制文件(您也可以删除该选项--progress
以获得更安静的体验)。
要扩展,上面的选项是:-
u
- 'update' - 只复制较新的文件。
a
- '档案'
n
- 'dry-run` - 不要复制,只列出它会做什么。
--progress
- 显示复制进度
--exclude=".*"
- 排除以点开头的文件