我在一个应用程序中将tar命令传递给shell执行器。但似乎我的tar语法不正确。(这是Windows(
我试图对以ext结尾的所有文件进行tar gz压缩,而不在tar文件中存储完整路径。
我遇到一个错误:
我可以提供整个路径,但是我的tar包将包含
到目前为止,唯一接近我所需的东西是使用
bsdtar
命令),但据我所知与Linux相同;如果需要,也可以在Linux上进行测试。)我试图对以ext结尾的所有文件进行tar gz压缩,而不在tar文件中存储完整路径。
tar -cvzf test.tar.gz -C C:/mydir/toTar/ *.ext
我遇到一个错误:
tar: *.ext: Cannot stat: No such file or directory
我可以提供整个路径,但是我的tar包将包含
C->mydir->toTar->
。我只想要文件,不需要在结果中包含mydir
和toTar
。到目前为止,唯一接近我所需的东西是使用
* .ext
代替。
,但这也会打包其他不需要的东西。
--include='*.ext'
,所以可以尝试使用该选项代替*.ext参数。您可能需要这些单引号来防止shell扩展在应用程序调用tar命令的任何目录中的*.ext。 - Mark Plotnick