zoukankan      html  css  js  c++  java
  • Linux命令(find、tar、umask)

    umask

    • umask可以查询出默认权限。若用户创建文件,默认是没有执行权限的,默认是-rw-rw-rw-。若用户创建目录,则由于执行权限和是否能进入目录有关,因此,具有执行权限,默认为所有权限均开放的,即为drwxrwxrwx。例如,在当前用户umask一下,得到值为0022(当前2015年1月只能理解后三位),或者unmask –s 可得到 u=rwx,g=rx,o=rx 。即把你的默认权限拿掉022的权限值。那么,当前用户创建的文件权限就是-rw-r--r--。创建的目录权限为drwxr-xr-x。

    系统时间

    • 三个时间的理解:mtime、ctime、atime。modification time 当该文件的内容数据发生变化时,就会更新这个时间。重点是文件的内容更新,而不是文件的属性或者权限。status time(ctime) 当该文件状态发生改变时,会更新该文件的ctime,比如文件的权限或者属性更改了。access time(atime) 当该文件被访问时,会更新这个读取时间,比如我们用cat file ,file的atime即被更新。查询该文件的atime或者ctime时,用ls –l --time=atime file(即ll file),而不是用ls file。

    权限

    • 4为SUID,2为SGID,1为SBIT,当s在owner上面时权限值就是4,s在group上面时权限值就是2,t在others上面时权限值就是1。当然SUID、SGID、SBIT都是在执行权限上面加的。例如
    • -rwsr-xr-x 表示加入了具有SUID的权限,权限值为4755。
    • -rwsr-sr-x 表示加入了具有SUID和SGID的权限,权限值是6755。
    • -rwxr-xr-t 表示加入了具有SBIT的权限,权限值为1755。
    • -rwSrwSrwT 表示具有空的SUID/SGID权限。User,group和others都没有x的执行权限(因为666),所以这个S、T代表是空的。SUID是表示该文件在执行时具有文件拥有者的权限,但是文件拥有者都没有执行权限,所有就没有执行权限给其他人使用,当然就是空的。

    find

    1)可以查找mtime、ctime、atime的相关参数。

      find –mtime 4 表示现在往前4×24 到5×24小时之间的文件。

      find –mtime -4 表示现在往前0×24 到 4×24 小时之间的文件。

      find –mtime +4 表示现在往前5×24 之前的文件。

      find -newer filename 表示比filename还要新的文件。

    2)与用户和用户组有关的参数。

      find –user name 查找属于用户名为name的文件。

      find –group name 查找属于用户组名为name的文件。

      find –nouser 查找不属于/etc/passwd的用户名的文件。

      find –nogroup 查找不属于/etc/group的用户组的文件。

      find –uid num 查找属于用户名的uid为num的文件。

      find –gid num 查找属于用户名的gid为num的文件。

    3)与文件权限及名称相关的参数。

      find –name filename 查找名称为filename的文件。

      find –size [+|-]SIZE 查找比SIZE大或者小的文件。SIZE的单位有c(byte)和k(1024bytes),例如查找大于8000KB的文件:

             find –size +8000k

      find –type TYPE 查找类型为TYPE的文件。TYPE包括文件(f)、设备文件(b,c)、目录(d)、连接文件(l)、套接字(s)、FIFO(p)。例如查找根目录下所有的套接字文件:

             find / -type s

      find –perm mode 表示该文件的权限等于mode。

        例如:find –perm 4755 列出来的文件权限应该就是-rwsr-xr-x。

        find –perm –mode 表示列出来的文件必须包括mode的权限。

        比如 find –perm -0744 (权限-rwxr—r---),-rwsr-xr-x也能被查出来,因为后者包含了前者。

             find –perm +mode 表示包含任一mode的权限的文件都会被列出来。

     4) 其他操作:-exec command,-exec后面可以直接接命令。

           find –size +300k –exec ls –l {} ;(反斜杠是用来转义分号的。)

           当然find还可以通过通配符(*)来查找。例如,用通配符查找名中含’lsj’的文件:

                  find /u01/soft/callout/temp –name ‘*lsj*’

           当然还有一些可以用到“且”或者“或”的关系,“且”用-a表示(and的缩写吧),“或”用-o表示(or的缩写吧)。比如查大于50KB小于60KB的文件:

                find –size +50k –a –size -60k 或者

                find –size +50k –size -60k

          比如查找大于50K并且不属于root的文件:

                find –size +50k –a –not –user root

          比如查找大于1500KB或者等于0KB的文件:

               find (–size +1500k –o –size 0 ) –exec ls –l {} ;

    •  系统目前已加载到内存中支持的文件系统则有: cat /proc/filesystems

    tar

      -j 是通过biz2 程序进行压缩的,通常给这个文件取名为*.tar.bz2。

      -z 是通过gzip程序进行压缩的,通常给这个文件取名为*.tar.gz。

      -c 新建打包文件,可搭配-v来查看打包过程中的文件名。

      -t 是用来查看打包文件中有哪些文件名。

      -x 是解包或解压缩的功能,可以搭配-C在特定目录中揭开。-x、-t、-c绝对不可同时出现在一个命令中。-c是新建打包的,-t是查看打完包的,-x是解包的,所以三者出现在一个命令中,不就搞基了吗?

      -p 保留备份属于的原本权限与属性,常用于备份重要的配置文件。

      -P 这个是保留根目录存在的意思。(tar打包都会去掉根目录,为什么呢?主要是为了安全。如果我们没有去掉根目录,解压的时候,就会把你之前备份的那些文件给覆盖,因为解压后带了绝对路径,所以不安全。去掉这个/,它就有点像相对路径了,你在哪个目录解开的话,里面的文件就会放到当前目录,就不会覆盖到你之前的目录里面去。所以这里就诞生了这个-P的参数)

      -C 指定解压到哪个目录。

    • 压缩:tar –jcv –f filename.tar.bz2 [-|d] 这个压缩比更小,更爽。

            tar –zcv –f filename.tar.gz [-|d] 这个压缩比没有上面那个好。

    • 查看:

            tar –jtv –f filename.tar.bz2 –j压缩的就只有-j去查看

            tar –ztv –f filename.tar.gz  -z 压缩的就只有-z去查看

    • 解压:

            tar –jxv –f filename.tar.bz2

            tar –zxv –f filename.tar.gz

    • 解压到指定目录:

            tar –jxv –f filename.tar.bz2 –C [d]

    • 解压单一文件:

            tar –jxv –f filename.tar.bz2 文件路径/文件名 –C [d]  这里必须加上文件路径,否则会报错“归档中找不到”。

  • 相关阅读:
    48. Rotate Image
    47. Permutations II
    46. Permutations
    45. Jump Game II
    44. Wildcard Matching
    43. Multiply Strings
    42. Trapping Rain Water
    41. First Missing Positive
    40. Combination Sum II
    39. Combination Sum
  • 原文地址:https://www.cnblogs.com/lioa/p/12598950.html
Copyright © 2011-2022 走看看