我可能可以编写一个Shell脚本以仅查找文件,然后将列表传递给tar,但是我想知道tar中是否已经有一个内置功能可以在一个命令行中执行此操作?
例如,我找到了--no-recursion
开关,但是当我这样做时:
tar --no-recursion -cvf mydir.tar mydir
它仅存档目录中条目的名称(包括子目录!),但不存档任何文件。
我也尝试过:
tar --no-recursion -cvf mydir.tar mydir/*
但是,尽管它仅归档文件,但它也归档子目录的名称。
有没有办法只告诉tar文件而不告诉目录?
find mydir -type f |xargs cp -t tempdir
,然后创建tar tempdir。
find mydir -depth 1 -type f | xargs tar cf mydir.tar
find mydir -maxdepth 1 -type f -exec tar cvf mydir.tar {} +
。在+
将所有喜欢xargs的同一命令行上的文件。