zoukankan      html  css  js  c++  java
  • linux常用命令及实例二:cp、mv、chown、chmod、find

    名称:cp
      使用权限:所有使用者
      使用方式:
      cp [options] source dest
      cp [options] source... directory
      说明:将一个档案拷贝至另一档案,或将数个档案拷贝至另一目录。
      参数:
      -a 尽可能将档案状态、权限等资料都照原状予以复制。
      -r 若 source 中含有目录名,则将目录下之档案亦皆依序拷贝至目的地。
      -f 若目的地已经有相同档名的档案存在,则在复制前先予以删除再行复制。
      范例:
      将档案 aaa 复制(已存在),并命名为 bbb :
       cp aaa bbb
      将所有的C语言程序拷贝至 Finished 子目录中 :
       cp *.c Finished

    名称:mv
      使用权限:所有使用者
      使用方式:
      mv [options] source dest
      mv [options] source... directory
      说明:将一个档案移至另一档案,或将数个档案移至另一目录。
      参数:-i 若目的地已有同名档案,则先询问是否覆盖旧档。
      范例:
      将档案 aaa 更名为 bbb :
       mv aaa bbb
      将所有的C语言程序移至 Finished 子目录中 :
       mv -i *.c Finished
    指令名称 : chown
      使用权限 : root
      使用方式 : chmod [-cfhvR] [--help] [--version] user[:group] file...
      说明 : Linux/Unix 是多人多工操作系统,所有的档案皆有拥有者。利用 chown 可以将档案的拥有者加以改变。一般来说,这个指令只有是由系统管理者(root)所使用,一般使用者没有权限可以改变别人的档案拥有者,也没有权限可以自己的档案拥有者改设为别人。只有系统管理者(root)才有这样的权限。
      参数 :
      user : 新的档案拥有者的使用者 IDgroup : 新的档案拥有者的使用者群体(group)-c : 若该档案拥有者确实已经更改,才显示其更改动作-f : 若该档案拥有者无法被更改也不要显示错误讯息-h : 只对于连结(link)进行变更,而非该 link 真正指向的档案-v : 显示拥有者变更的详细资料-R : 对目前目录下的所有档案与子目录进行相同的拥有者变更(即以递回的方式逐个变更)--help : 显示辅助说明--version : 显示版本
      范例 :
      将档案 file1.txt 的拥有者设为 users 群体的使用者 jessie :
       chown jessie:users file1.txt
      将目前目录下的所有档案与子目录的拥有者皆设为 users 群体的使用者 lamport :
       chmod -R lamport:users *

    指令名称 : chmod
      使用权限 : 所有使用者
      使用方式 : chmod [-cfvR] [--help] [--version] mode file...
      说明 : Linux/Unix 的档案调用权限分为三级 : 档案拥有者、群组、其他。利用 chmod 可以藉以控制档案如何被他人所调用。
      参数 :
      mode : 权限设定字串,格式如下 : [ugoa...][[+-=][rwxX]...][,...],其中
      u 表示该档案的拥有者,g 表示与该档案的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。
      + 表示增加权限、- 表示取消权限、= 表示唯一设定权限。
      r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行。
      -c : 若该档案权限确实已经更改,才显示其更改动作
      -f : 若该档案权限无法被更改也不要显示错误讯息
      -v : 显示权限变更的详细资料
      -R : 对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更)
      --help : 显示辅助说明
      --version : 显示版本
      范例 :将档案 file1.txt 设为所有人皆可读取 :
       chmod ugo+r file1.txt
      将档案 file1.txt 设为所有人皆可读取 :
       chmod a+r file1.txt
      将档案 file1.txt 与 file2.txt 设为该档案拥有者,与其所属同一个群体者可写入,但其他以外的人则不可写入 :
       chmod ug+w,o-w file1.txt file2.txt
      将 ex1.py 设定为只有该档案拥有者可以执行 :
       chmod u+x ex1.py
      将目前目录下的所有档案与子目录皆设为任何人可读取 :
       chmod -R a+r *
       此外chmod也可以用数字来表示权限如 chmod 777 file
      语法为:chmod abc file
      其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。
      r=4,w=2,x=1
      若要rwx属性则4+2+1=7;
      若要rw-属性则4+2=6;
      若要r-x属性则4+1=7。
      范例:
       chmod a=rwx file
      和
       chmod 777 file
      效果相同
       chmod ug=rwx,o=x file
      和
       chmod 771 file
      效果相同
      若用chmod 4755 filename可使此程序具有root的权限

    名称 : find
      用法 : find
      使用说明 :
      将档案系统内符合 expression 的档案列出来。你可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。
      find 根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部份为 path,之后的是 expression。如果 path 是空字串则使用目前路径,如果 expression 是空字串则使用 -print 为预设 expression。
      expression 中可使用的选项有二三十个之多,在此只介绍最常用的部份。
      -mount, -xdev : 只检查和指定目录在同一个档案系统下的档案,避免列出其它档案系统中的档案
      -amin n : 在过去 n 分钟内被读取过
      -anewer file : 比档案 file 更晚被读取过的档案
      -atime n : 在过去 n 天过读取过的档案
      -cmin n : 在过去 n 分钟内被修改过
      -cnewer file :比档案 file 更新的档案
      -ctime n : 在过去 n 天过修改过的档案
      -empty : 空的档案-gid n or -group name : gid 是 n 或是 group 名称是 name
      -ipath p, -path p : 路径名称符合 p 的档案,ipath 会忽略大小写
      -name name, -iname name : 档案名称符合 name 的档案。iname 会忽略大小写
      -size n : 档案大小 是 n 单位,b 代表 512 位元组的区块,c 表示字元数,k 表示 kilo bytes,w 是二个位元组。-type c : 档案类型是 c 的档案。
      d: 目录
      c: 字型装置档案
      b: 区块装置档案
      p: 具名贮列
      f: 一般档案
      l: 符号连结
      s: socket
      -pid n : process id 是 n 的档案
      你可以使用 ( ) 将运算式分隔,并使用下列运算。
      exp1 -and exp2
      ! expr
      -not expr
      exp1 -or exp2
      exp1, exp2
      范例:
      将目前目录及其子目录下所有延伸档名是 c 的档案列出来。
       # find . -name "*.c"
      将目前目录其其下子目录中所有一般档案列出
       # find . -ftype f
      将目前目录及其子目录下所有最近 20 分钟内更新过的档案列出
       # find . -ctime -20
      find . -name "*" -exec grep xxx {} ; -print |morexxx为你想要找的字符串

  • 相关阅读:
    LeetCode485 最大连续1的个数
    LeetCode167 两数之和 II
    js浮点数类型
    js整数类型
    js布尔类型
    js重复赋值 js数据交换 js调式方法
    JavaScript变量
    数据类型分类
    重复赋值 数据交换 查看程序执行结果
    JS注释 JS变量
  • 原文地址:https://www.cnblogs.com/jackrex/p/3001428.html
Copyright © 2011-2022 走看看