您可以在UNIX和UNIX上找到一套全面的解决方案。 Linux的答案
How do you move all files (including hidden) from one directory to another?.它显示解决方案在Bash,zsh,ksh93,标准(POSIX)sh等。
您可以一起使用这两个命令:
mv /path/subfolder/* /path/ # your current approach
mv /path/subfolder/.* /path/ # this one for hidden files
mv /path/subfolder/{.,}* /path/
其扩展为:
mv /path/subfolder/* /path/subfolder/.* /path/
(例如:echo a {。,} b展开为a.b ab)
请注意,这将显示一些警告:
mv: cannot move ‘/path/subfolder/.’ to /path/.’: Device or resource busy
mv: cannot remove /path/subfolder/..’: Is a directory
忽略它们:这是因为/path/subfolder/{.,}*也扩展到/ path /子文件夹/。和/ path / subfolder / ..,它们是目录和父目录(见What do “.” and “..” mean when in a folder?)。
如果你想只是复制,你可以使用一个:
cp -r /path/subfolder/. /path/
# ^
# note the dot!