Linux常用命令(3)--文件管理(查看文件大小权限信息、修改文件所属用户和操作权限、压缩解压文件)

一、查看文件大小、文件夹子目录
 
1、查看文件系统磁盘大小、挂载点
  • df :可以查看一级文件夹大小(默认单位为:k)、使用比例、档案系统及其挂入点(但对文件却无能为力)。
  • df -T :显示分区的文件系统(不带单位,默认为k;结果中包含分区文件类型Type)
  • df -h : 显示文件系统的可用空间及使用情形(采用用户易读的方式)

 
2、查看文件(文件夹)大小
  • du :可以查看文件及文件夹的大小。
  • du -sh 文件夹路径 : 查看当前目录下各个文件及目录占用空间大小
  • du -h --max-depth=1 文件夹路径 : max-depth指定深入子目录的

 
3、查看文件夹包含的内容(子目录)
  • ls 文件夹路径  :   查看文件夹下的子目录(结果中不包含隐藏的文件)
  • ls -a 文件夹路径 :  查看文件夹下的子目录,结果中包含隐藏的文件(-a)
  • ls -l  文件夹路径  : (此命令可简写为:ll) 查看文件的详细信息,包括修改权限、所属用户、字节大小、更新时间等

 
二、chmod 命令:修改文件/文件夹权限
  chmod命令是非常重要的,用于改变文件或目录的访问权限。用户用它控制文件或目录的访问权限。
  该命令有两种用法。一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法。
  
  1、文字设定法
chmod [who] [+ | - | =] [mode] 文件名称/文件夹名称
注:chmod命令可加入其它额外的参数,如:chmod -R ,将文件夹的子目录的权限也一起修改

  命令中各选项的含义为:

  (1)操作对象who可是下述字母中的任一个或者它们的组合:
  •   u 表示“用户(user)”,即文件或目录的所有者。
  •   g 表示“同组(group)用户”,即与文件属主有相同组ID的所有用户。
  •   o 表示“其他(others)用户”。
  •   a 表示“所有(all)用户”。它是系统默认值。
  (2)操作符号可以是:
  •   + 添加某个权限。
  •   - 取消某个权限。
  •   = 赋予给定权限并取消其他所有权限(如果有的话)。
   (3)设置mode所表示的权限可用下述字母的任意组合:
  •   r 可读。
  •   w 可写。
  •   x 可执行。x只有目标文件对某些用户是可执行的或该目标文件是目录时才追加x 属性。
  
  2、数字设定法
  我们必须首先了解用数字表示的属性的含义:0表示没有权限,1表示可执行权限,2表示可写权限,4表示可读权限,然后将其相加。所以数字属性的格式应为3个从0到7的八进制数,其顺序分别代表用户(u)、用户组(g)、其它用户(o)的所拥有的操作权限。
  
 
 
三、修改所属用户和用户组
  1、chown命令:用来修改文件或文件夹的所属用户和用户组。
chown  所属用户:所属用户组  -R  文件名

  以下列举了三个chown命令的修改例子:

  • chown  sinosoft   ./test/                  修改test文件夹的所属用户为:sinosoft
  • chown  sinosoft:sinosoft  ./test/     修改test文件夹的所属用户为:sinosoft,所属用户组为:sinosoft
  • chown  :sinosoft   ./test/                 修改test文件夹的所属用户组为:sinosoft
  2、chgrp命令:修改所属用户组
  使用chgrp命令可以修改文件或目录所属的组:
chgrp  用户组名称  目录或文件名
 
 
四、文件压缩  与  文件解压缩
  打包,即文件压缩,是指将一大堆文件或目录什么的变成一个总的文件;
  压缩,则是将一个大的文件通过一些压缩算法变成一个小文件。
 
1、tar 命令
  tar 可以为文件和目录创建档案。利用tar,用户可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件。tar最初被用来在磁带上创建档案,现在,用户可以在任何设备上创建档案,如软盘。利用tar命令,可以把一大堆的文件和目录全部打包成一个文件,这对于备份文件或将 几个文件组合成为一个文件以便于网络传输是非常有用的。Linux上的tar是GNU版本的。
打包 :   tar  -cvf    新打包文件.tar  源文件1  源文件2  源文件3
解压 :  tar  -xvf   源打包文件.tar    
语法:tar  [主选项+辅选项]  文件或者目录
 
主选项:
  c 创建新的档案文件。
  r 把要存档的文件追加到档案文件的未尾。
  t 列出档案文件的内容,查看已经备份了哪些文件。
  u 更新文件。就是说,用新增的文件取代原备份文件,如果在备份文件中找不到要更新的文件,则把它追加到备份文件的最后。
  x 从档案文件中释放文件。
 
辅助选项:
  b 该选项是为磁带机设定的。其后跟一数字,用来说明区块的大小,系统预设值为20(20*512 bytes)。
  f 使用档案文件或设备,这个选项通常是必选的。
  k 保存已经存在的文件。例如我们把某个文件还原,在还原的过程中,遇到相同的文件,不会进行覆盖。
  m 在还原文件时,把所有文件的修改时间设定为现在。
  M 创建多卷的档案文件,以便在几个磁盘中存放。
  v 详细报告tar处理的文件信息。如无此选项,tar不报告文件信息。
  w 每一步都要求确认。
  z 用gzip来压缩/解压缩文件,加上该选项后可以将档案文件进行压缩,但还原时也一定要使用该选项进行解压缩。
 
例子: # tar
-cf all.tar *.jpg   这条命令是将所有.jpg的文件打成一个名为all.tar的包。-c是表示产生新的包,-f指定包的文件名。   # tar -rf all.tar *.gif   这条命令是将所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的意思。   # tar -uf all.tar logo.gif   这条命令是更新原来tar包all.tar中logo.gif文件,-u是表示更新文件的意思。   # tar -tf all.tar   这条命令是列出all.tar包中所有文件,-t是列出文件的意思   # tar -xf all.tar   这条命令是解出all.tar包中所有文件,-x是解开的意思 以上就是tar的最基本的用法。
为了方便用户在打包解包的同时可以压缩或解压文件,tar提供了一种特殊的功能。这就是tar可以在打包或解包的同时调用其它的压缩程序,比如调用gzip、bzip2等。
1) tar调用gzip   gzip是GNU组织开发的一个压缩程序,.gz结尾的文件就是gzip压缩的结果。与gzip相对的解压程序是gunzip。tar中使用-z这个参数来调用gzip。下面来举例说明一下:   # tar -czf all.tar.gz *.jpg //将所有.jpg的文件打成一个tar包,并且将其用gzip压缩,生成一个gzip压缩过的包   # tar -xzf all.tar.gz //这条命令是将上面产生的包解开。 对于.gz结尾的文件,gunzip解压命令如下:   gzip -d all.gz   gunzip all.gz 2) tar调用bzip2   bzip2是一个压缩能力更强的压缩程序,.bz2结尾的文件就是bzip2压缩的结果。与bzip2相对的解压程序是bunzip2。tar中使用-j这个参数来调用bzip2。下面来举例说明一下:   # tar -cjf all.tar.bz2 *.jpg //将所有.jpg的文件打成一个tar包,并且将其用bzip2压缩,生成一个bzip2压缩包   # tar -xjf all.tar.bz2 //这条命令是将上面产生的包解开。 对于.bz2结尾的文件 ,bunzip2解压命令如下:   bzip2 -d all.bz2   bunzip2 all.bz2   3)tar调用compress   compress也是一个压缩程序,但是好象使用compress的人不如gzip和bzip2的人多。.Z结尾的文件就是compress压缩的结果。与 compress相对的解压程序是uncompress。tar中使用-Z这个参数来调用gzip。下面来举例说明一下:   # tar -cZf all.tar.Z *.jpg //将所有.jpg的文件打成一个tar包,并将其用compress压缩,生成一个compress压缩包   # tar -xZf all.tar.Z //这条命令是将上面产生的包解开 对于.Z结尾的文件,uncompress解压命令如下:  uncompress all.Z
2、zip命令
  对于Window下的常见压缩文件.zip,Linux也有相应的方法来解压它们:
  linux下提供了zip和unzip程序,zip是压缩程序,unzip是解压程序。
   (1)安装zip命令
安装zip/unzip服务
$ sudo yum install zip unzip

  (2)文件打包

# zip  all.zip  *.jpg    //将所有.jpg的文件压缩成一个zip包
# zip -r all.zip  ./*    //将当前目录下的所有文件和文件夹全部压缩成all.zip文件,-r表示递归压缩子目录下所有文件

  (3)解压文件

# unzip  all.zip                      //把all.zip文件解压到当前目录下
# unzip -o -d  /home/sunny  all.zip    //把all.zip文件解压到 /home/sunny/
                                       // -o:不提示的情况下覆盖文件;
                                       // -d:指明将文件解压缩到/home/sunny目录下;
3、jar命令
  JAR包是Java中所特有一种压缩文档,其实大家就可以把它理解为.zip包。当然也是有区别的,JAR包中有一个META-INF\MANIFEST.MF文件,当你找成JAR包时,它会自动生成。
  JAR包是由JDK安装目录\bin\jar.exe命令生成的,当我们安装好JDK,设置好path路径,就可以正常使用jar.exe命令,它会用lib\tool.jar工具包中的类。
 
 

猜你喜欢

转载自www.cnblogs.com/newbie27/p/11099054.html
今日推荐