Linux tar司令部:短跑是为了什么?
有人能帮我理解这个命令吗:Linux tar司令部:短跑是为了什么?,linux,shell,tar,Linux,Shell,Tar,有人能帮我理解这个命令吗: tar-czf--T./tarFileList.tmp-C./test_folder/| ssh-l musthero voserver95.myserver.com-x“umask 002;cd/disk0/test_untar/;tar-xzf-” 特别是,我无法理解(tar-czf-…)的第一个破折号是什么。如果我已经指定了我想要tar的文件列表(即-t./tarFileList.tmp),以及从中获取这些文件的目录(即-C./test\u folder/),为
tar-czf--T./tarFileList.tmp-C./test_folder/| ssh-l musthero voserver95.myserver.com-x“umask 002;cd/disk0/test_untar/;tar-xzf-”
特别是,我无法理解(tar-czf-…
)的第一个破折号是什么。如果我已经指定了我想要tar的文件列表(即-t./tarFileList.tmp
),以及从中获取这些文件的目录(即-C./test\u folder/
),为什么我需要它
另外,复制也有点混乱-如果没有
cp/scp
命令,tarball如何通过ssh复制?第一个破折号是不必要的,您也可以这样写:
tar cvf ...
第二个破折号属于f
选项,它表示“不要在文件系统中创建命名文件,而是将涂油文件写入stdout
”
然后,stdout
通过管道进入ssh
。远程机器上相应的untar以完全相同的方式从其stdin
解除故障
因此,在回答您的问题时,破折号表示在使用
tar cf
创建/写入tar文件时使用stdout
,在使用tar xf
提取/读取tar文件时使用stdin
确定!所以dash等于stdout或stdin,这取决于我是创建还是提取一个tar文件。谢谢