我想将目录结构从远程机器复制到本地机器。我也想要文件名,但不想要文件的内容。
现在我在远程机器上做了这件事:
find . -type d -print | cpio -oO dirs.cpio
然后将dirs.cpio
文件复制到本地机器,并在转到我想要复制结构的目录后运行命令:
cpio -iI dirs.cpio
因此,这将创建我想要的目录结构,包括子目录,但不会复制文件名。我想要目录结构和文件名,但而不是它们的内容。
我怎样才能获得文件名??
没有cpio会更容易。关于来源:
find . -exec ls -Fd {} + > stuff
这将生成一个列出所有目录(由于ls -F
,带有尾部斜杠)和文件的文件。
在目的地:
./makestuff < stuff
其中makestuff
是此脚本:
while read name; do
if [ "${name:${#name}-1}" = "/" ]; then
mkdir -p "$name"
else
touch "$name"
fi
done