有人可以帮我理解这个命令:
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 - ...).为什么我需要它,如果我指定的文件列表,我想焦油(即-T ./tarFileList.tmp),和一个目录,把那些文件(即-C ./test_folder/) .
复制也有点令人困惑 - 如果没有cp/scp命令,如何通过ssh复制tarball ?
Mar*_*ell 10
第一个破折号是不必要的,你可以同样写:
tar cvf ...
Run Code Online (Sandbox Code Playgroud)
第二个破折号属于f选项,它说"不是在文件系统中创建一个命名文件,而是将tarred文件写入stdout".
也就是说stdout,然后通过管道进入过去了ssh.远程机器上相应的解压缩器stdin以完全相同的方式进行解除.
因此,在回答您的问题时,破折号意味着stdout在创建/编写tarfile时使用tar cf和stdin提取/读取tarfile时tar xf
| 归档时间: |
|
| 查看次数: |
3118 次 |
| 最近记录: |