繁体   English   中英

留在另一个文件夹中,如何从另一个目录中压缩特定文件?

[英]Staying in another folder, how can i tar specific files from another directory?

谢谢你的支持,

我的linux笔记本电脑上具有以下文件夹结构

/home
     /A
     /B

在文件夹“ B”中,我具有* .csv,*。dat类型的文件。

现在从文件夹A,如何在文件夹B中创建一个包含文件* .csv的tar文件。我正在文件夹A中运行命令

这是我尝试过的命令,但是它不起作用,

在/ home / A文件夹中,我正在运行以下命令

tar -cf /home/A/Sample1.tar -C /home/B/ZSBSDP4 *.csv

并尝试了这个

tar -cf /home/A/Sample1.tar -C /home/B/ZSBSDP4 --wildcards *.csv

对于这两个命令,我都会遇到以下错误,

tar: *.csv: Cannot stat: No such file or directory
tar: Exiting with failure status due to previous errors

在tar文件中,我不想包括整个文件夹结构,这就是原因,我使用的是选项-C(大写)

此外,以下命令可以运行,但会压缩所有* .csv和* .dat文件。

tar -cf /home/A/Sample1.tar -C /home/B/ZSBSDP4 .

您可以在tar命令中编辑名称以删除路径。 (假设您具有GNU tar。)

tar -cf /home/A/Sample1.tar --transform 's,.*/\([^/]*\),\1,' /home/B/ZSBSDP4/*.csv

请注意,如果在命令上指定了更多源目录,则可能会意外地在tar文件中放置多个同名文件。 然后,在解压缩时,最后一个将覆盖之前相同名称的文件。

您可以使用--exclude = PATTERN选项:

tar -cf /home/A/Sample1.tar -C /home/B/ZSBSDP4 . --exclude=*.dat

手册页中列出了其他“本地文件选择”选项: http : //linux.die.net/man/1/tar

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM