关于linux命令tar xvf与tar zxvf的求解
我看到教材上是这样介绍的:1. tar xvf 将目标文件或目录解包
2. tar cvf 将目录下的文件或目录打成tar包
3. tar zxvf 将目录或文件解压缩并解包
4. tar zcvf 将目录或文件打成tar包并压缩
我知道第一个与第二个是一组,第三个与第四个是一组。但是不是很清楚第一个与第三个,第二与第四个的区别,我的理解是文件解压后不就是把原来的压缩包解开了吗,怎么还有个解压并解包呢?不懂.......
同样的,第四个也存在同样的疑问。希望有人指点!
另外,我在练习的时候发现xvf/cvf/zxvf/zcvf 这四个前面加个横线“-”与不加效果是一样的,至少视觉效果是一样的。
但是又怀疑加与不加肯定是有区别的,就是不知道区别在哪儿?
因为我知道在切换用户的时候用su于su -效果是不一样的,后面的表示环境变量也随之切换过去,所以不知道上面是否有横线的区别是否可以类比su命令的是否有横线一样理解?
拜谢先! 学会看help。
man tar或者tar -h, tar --help
-f, --file=ARCHIVE use archive file or device ARCHIVE
-c, --create create a new archive
-x, --extract, --get extract files from an archive
-z, --gzip, --gunzip, --ungzip filter the archive through gzip
-j, --bzip2 filter the archive through bzip2
-v, --verbose verbosely list files processed
每个参数都有说明,你那种写法是几个放在一起的组合。加不加-其实都一样的,那是个历史问题,你喜欢用哪种都可以。 回复 2# bestgo
1.历史问题?啥意思哦,那反正有没有-都一样是吧,不涉及环境变量是吧
2.它这些个参数,想r、v、c等在实际的使用中可以调换顺序吗?比如cvf和vcf都行吗?
3.还有假如在/etc中的etc目录下有a,b,c,d四个目录,要将其中的部分目录进行打包怎么操作啊,可以选择某一目录下部分目录和文件进行打包或压缩码? 应该是指旧版本tar命令的用法吧
与顺序没什么关系
tar -zcf xx.tar.gz a b c d 一个参数代表一种效果,多一个参数多一个效果。没别的,顺序是没有影响的。 zxvf解压tar。gz xvf解压tar 1. 历史问题?啥意思哦,那反正有没有-都一样是吧,不涉及环境变量是吧
只有GNU版本的tar支持z选项,不过现在的Linux基本上都是GNU的了
2. 它这些个参数,想r、v、c等在实际的使用中可以调换顺序吗?比如cvf和vcf都行吗?
一般没顺序,只是有些版本的tar的第一个参数必须是function,如c、t、x,后面跟option如v、k、f、j
3. 还有假如在/etc中的etc目录下有a,b,c,d四个目录,要将其中的部分目录进行打包怎么操作啊,可以选择某一目录下部分目录和文件进行打包或压缩码?
可以。比如你先进入/etc 然后执行tar cvf test.tar a c 1. 历史问题?啥意思哦,那反正有没有-都一样是吧,不涉及环境变量是吧
只有GNU版本的tar支持z选项,不过现在的Linux基本上都是GNU的了
2. 它这些个参数,想r、v、c等在实际的使用中可以调换顺序吗?比如cvf和vcf都行吗?
一般没顺序,只是有些版本的tar的第一个参数必须是function,如c、t、x,后面跟option如v、k、f、j
3. 还有假如在/etc中的etc目录下有a,b,c,d四个目录,要将其中的部分目录进行打包怎么操作啊,可以选择某一目录下部分目录和文件进行打包或压缩码?
可以。比如你先进入/etc 然后执行tar cvf test.tar a c
页:
[1]