Windows向Linux上传文件夹

  1.将文件夹压缩成.tar.gz文件:

  安装7-Zip,选择要压缩的文件夹--右键--“7-Zip”--“添加到压缩包...”,压缩格式选择“tar”,

  在此目下就生成了“文件夹名.tar”文件,

  选择“文件夹名.tar”文件--右键--“7-Zip”--“添加到压缩包...”,压缩格式选择“gzip”,

  在此目下就生成了“文件夹名.tar.gz”文件。

  .tar与.tar.gz区别:

  .tar是只打包不压缩。

    tar -cvf test.tar test.txt  将“123.txt”文件打包成“test.tar”

    tar -xvf test.tar  解包test.tar

  .tar.gz是既打包又压缩 。

    tar -zcvf test.tar.gz test.txt

    tar -zxvf test.tar.gz

  2.sftp命令put到linux

  lcd 路径  更改本地目录到“路径”

  lls  显示本地目录列表

  put 文件名  上传文件

  

  3.将压缩文件解压到指定目录

  tar -zxvf test.tar.gz -C /home/apache-tomcat-6.0.51/webapps/Test/WEB-INF/pages

  修改了原项目pages下的几个jsp文件(压缩包内容),所以放到pages目录下

  成功解压会展示压缩包内容:

  

 tar指令——包含每个字母参数详解

  转载自: https://blog.csdn.net/giveaname/article/details/80751697

  tar指令,应该是很常用的指令了,最常用于打包和解包,但在使用过程中还是经常敲错,因此记录一下注意事项。

  在虚拟机中模拟一下,/home/alex/test下有多个文件和文件夹。本文中都是在/home/alex目录进行操作。

  最常用的打包压缩功能:tar -zcvf  xxx.tar.gz  test。结果会在当前路径下产生一个xxx.tar.gz文件,内容就是 /home/alex/test目录及目录下的内容压缩包,即前缀路径/home/alex也会被包含进来。

  相应的解包解压缩功能: tar -zxvf  xxx.tar.gz,结果会在当前路径下产生一个路径,内容为 /home/alex/test目录及该目录下的内容。

  其中的参数作用分别为:

  -c, --create               create a new archive,创建一个新的归档文件

  -v, --verbose              verbosely list files processed,显式地列出处理的文件。即正在打包或解包的文件名称会在当前控制台输出

  -f, --file=ARCHIVE         use archive file or device ARCHIVE,使用归档文件或设备(进行解包或打包)。该参数后续必须跟上打包或解包的包名,指定使用的归档文件

  -x, --extract, --get       extract files from an archive,从归档文件中解出文件

  -z, --gzip, --gunzip, --ungzip   filter the archive through gzip, 通过gzip压缩方式过滤归档文件,即使用gzip进行压缩或解压缩( 注:旧版tar无法识别压缩包的压缩格式,因此解包时必须增加-z参数指定压缩方式,新版tar可以自动识别,可以不加该参数)

  -C, --directory=DIR        change to directory DIR,切换到DIR目录。该参数可以用于打包时去除前缀路径

    eg: tar  -C  /home/alex  -zcvf  xxx.tar.gz   test   ,则在当前路径会出现一个xxx.tar.gz,且其内容只有test文件夹及其中的内容,不会包含 /home/alex路径

  --exclude=filename/dirname      打包时不包含某些目录下的文件或文件夹。注意exclude跟着的文件或文件夹,是根据当前路径或-C参数切换到的路径的相对路径(+_+自己读得都绕。。)

    eg:tar  -zcvf  xxx.tar.gz   test --exclude=test/hello.txt,则打包压缩后的内容不包含 /home/alex/test/hello.txt这个文件。

    eg2:tar -zcvf xxx.tar.gz  test --exclude=/home/alex/test/hello.txt,则打包后的内容还是有/home/alex/test/hello.txt这个文件,因为我们执行的当前路径是/home/alex, 系统执行exclude会以当前路径作为前缀路径加上exclude后续的路基,所以会去除/home/alex/home/alex/test/hello.txt的内容,但是这个路径的内容并不存在。

    eg3:tar -C /home -zcvf xxx.tar.gz alex/test --exclude=alex/test/world.txt ,则打包后的内容不包含/home/alex/test/world.txt。因为-C参数切换到了 /home路径,则exclude去除了 /home+alex/test/world.txt的内容。

原文地址:https://www.cnblogs.com/likaixin/p/11304649.html