N25-第二周作业

N25-第二周作业

博客作业


1、linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示

  • linux上处理目录的常用命令:

  • ls :列出目录

  • cd :切换目录

  • pwd:显示当前工作路径

  • mkdir:创建目录

  • rm:删除文件或目录

  • rmdir:删除空文件

  • mv:剪切、重命名文件、目录

  • cp:复制文件或目录

  • touch:创建空文件

  • ls:= list:查看指定目录下文件和目录; 

    • 语法: 
      ls [选项] [目录名]

    • 选项与参数: 

      • -a, –all 列出目录下的所有文件,包括以 . 开头的隐含文件 

      • -A 同-a,但不列出“.”(表示当前目录)和“..”(表示当前目录的父目录)。 

      • -c 配合 -lt:根据 ctime 排序及显示 ctime (文件状态最后更改的时间)配合 -l:显示 ctime 但根据名称排序否则:根据 ctime 排序 

      • -C 每栏由上至下列出项目 

      • –color[=WHEN] 控制是否使用色彩分辨文件。WHEN 可以是'never'、'always'或'auto'其中之一

      • -d, –directory 将目录象文件一样显示,而不是显示其下的文件。

      • -D, –dired 产生适合 Emacs 的 dired 模式使用的结果

      • -f 对输出的文件不进行排序,-aU 选项生效,-lst 选项失效

      • -g 类似 -l,但不列出所有者

      • -G, –no-group 不列出任何有关组的信息

      • -h, –human-readable 以容易理解的格式列出文件大小 (例如 1K 234M 2G)

      • –si 类似 -h,但文件大小取 1000 的次方而不是 1024

      • -H, –dereference-command-line 使用命令列中的符号链接指示的真正目的地

      • –indicator-style=方式 指定在每个项目名称后加上指示符号<方式>:none (默认),classify (-F),file-type (-p)

      • -i, –inode 印出每个文件的 inode 号

      • -I, –ignore=样式 不印出任何符合 shell 万用字符<样式>的项目

      • -k 即 –block-size=1K,以 k 字节的形式表示文件的大小。

      • -l 除了文件名之外,还将文件的权限、所有者、文件大小等信息详细列出来。ls -l = ll

      • -L, –dereference 当显示符号链接的文件信息时,显示符号链接所指示的对象而并非符号链接本身的信息

      • -m 所有项目以逗号分隔,并填满整行行宽

      • -o 类似 -l,显示文件的除组信息外的详细信息。

      • -r, –reverse 依相反次序排列,按照时间顺序排列,从旧到新;

      • -R, –recursive 同时列出所有子目录层

      • -s, –size 以块大小为单位列出所有文件的大小

      • -S 根据文件大小排序

      • –sort=WORD 以下是可选用的 WORD 和它们代表的相应选项: 
        extension -X status -c 
        none -U time -t 
        size -S atime -u 
        time -t access -u 
        version -v use -u

      • -t 以文件修改时间排序

      • -u 配合 -lt:显示访问时间而且依访问时间排序 
        配合 -l:显示访问时间但根据名称排序 
        否则:根据访问时间排序

      • -U 不进行排序;依文件系统原有的次序列出项目

      • -v 根据版本进行排序

      • -w, –width=COLS 自行指定屏幕宽度而不使用目前的数值

      • -x 逐行列出项目而不是逐栏列出

      • -X 根据扩展名排序

      • -1 每行只列出一个文件

      • –help 显示此帮助信息并离开

      • –version 显示版本信息并离开

  • 例:

    [root@zhao-66 ~]# ls
    anaconda-ks.cfg  install.log  shell  test
    [root@zhao-66 ~]# ll    #ls -l = ll
    总用量 76
    -rw-------. 1 root root  1106 5月   4 2016 anaconda-ks.cfg
    -rw-r--r--. 1 root root 22632 5月   4 2016 install.log
    drwxr-xr-x  2 root root  4096 7月  11 13:53 shell
    drwxr-xr-x  6 root root  4096 12月 13 14:21 test
    [root@zhao-66 ~]# ll -a    
    #显示隐藏文件总用量 152
    dr-xr-x---.  7 root root  4096 9月  22 12:06 .
    dr-xr-xr-x. 22 root root  4096 12月 13 14:17 ..
    -rw-------.  1 root root  1106 5月   4 2016 anaconda-ks.cfg
    -rw-------.  1 root root  9124 10月  1 21:25 .bash_history
    -rw-r--r--.  1 root root    18 5月  20 2009 .bash_logout
    -rw-r--r--   1 root root   287 7月   5 15:50 .bash_profile
    -rw-r--r--.  1 root root   176 9月  23 2004 .bashrc
    -rw-r--r--.  1 root root 22632 5月   4 2016 install.log
    drwxr-xr-x   2 root root  4096 7月  11 13:53 shell
    drwx------   2 root root  4096 6月  28 14:29 .ssh
    drwxr-xr-x   6 root root  4096 12月 13 14:21 test
    [root@zhao-66 ~]# ll -rt    
    总用量 76
    -rw-r--r--. 1 root root 22632 5月   4 2016 install.log
    -rw-------. 1 root root  1106 5月   4 2016 anaconda-ks.cfg
    drwxr-xr-x  2 root root  4096 7月  11 13:53 shell
    drwxr-xr-x  6 root root  4096 12月 13 14:21 test

    • cd:Change Directory的缩写,切换目录。 

    • 语法: 
      cd [相对路径或绝对路径]

    • 参数: 

      • -:切换到上一次打开的目录; 

      • ~:切换到当前用户家目录,不加参数也是切换到当前用户家目录; 

      • .:当前目录 

      • ..:上级目录

    • 例:

    [root@master long]# pwd
    /root/long
    [root@master long]# cd ceshi/
    [root@master ceshi]# pwd
    /root/long/ceshi
    [root@master ceshi]# cd 
    [root@master ~]# pwd
    /root
    [root@master ~]# cd -
    /root/long/ceshi
    [root@master ceshi]# cd -
    /root
    [root@master ~]# pwd
    /root
    [root@master ~]#

    • pwd:显示当前目录的绝对路径: 

      • 语法: 
        pwd [选项]

      • 选项与参数: 

        • 一般情况下不带任何参数,如果目录是链接时:

        • 格式:pwd -P 显示出实际路径,而非使用连接(link)路径。

    • 例:

    [root@localhost ~]# pwd
    /root
    [root@localhost ~]# cd /etc/init.d 
    [root@localhost init.d]# pwd
    /etc/init.d
    [root@localhost init.d]# pwd -P
    /etc/rc.d/init.d
    [root@localhost init.d]#

    • mkdir:创建指定名称的目录 

      • 语法: 
        mkdir [选项] 目录

      • 选项与参数: 

        • -m, –mode=模式,直接配置权限<模式> (类似 chmod),而不是 rwxrwxrwx 减 umask

        • -p, –parents 递归创建多层目录,即一次可以建立多个目录;

        • -v, –verbose 显示创建过程

        • –help 显示此帮助信息并退出

        • –version 输出版本信息并退出

    • 例:

    [root@master ceshi]# mkdir test
    [root@master ceshi]# mkdir -pv test1/test2/{test3,test4}
    mkdir: 已创建目录 "test1"
    mkdir: 已创建目录 "test1/test2"
    mkdir: 已创建目录 "test1/test2/test3"
    mkdir: 已创建目录 "test1/test2/test4"
    [root@master ceshi]# mkdir -m 644 test5
    [root@master ceshi]# ll
    总用量 12
    drwxr-xr-x 2 root root 4096 12月 13 18:14 test
    drwxr-xr-x 3 root root 4096 12月 13 18:14 test1
    drw-r--r-- 2 root root 4096 12月 13 18:15 test5
    [root@master ceshi]# tree
    .
    ├── test
    ├── test1│   
    |    └── test2       
    |        ├── test3
    |        └── test4
    │   
    └── test5
    
    6 directories, 0 files
    [root@master ceshi]#

    rm:删除文件、目录;注意:rm是一个危险的命令,使用的时候要特别当心; 

    • 语法: 
      rm [选项] 文件目录…

    • 选项与参数: 

      • -f, –force 忽略不存在的文件,从不给出提示。

      • -i, –interactive 进行交互式删除

      • -r, -R, –recursive 指示rm将参数中列出的全部目录和子目录均递归地删除;用于删除目录;

      • -v, –verbose 详细显示进行的步骤

      • –help 显示此帮助信息并退出

      • –version 输出版本信息并退出

      例:

      [root@master ceshi]# ll
      总用量 12
      -rw-r--r-- 1 root root    0 12月 13 18:23 install.log
      -rwxr-xr-x 1 root root    0 12月 13 18:22 scp.sh
      drwxr-xr-x 2 root root 4096 12月 13 18:14 test
      drwxr-xr-x 3 root root 4096 12月 13 18:14 test1
      drw-r--r-- 2 root root 4096 12月 13 18:15 test5
      [root@master ceshi]# rm  install.log 
      rm:是否删除普通空文件 "install.log"?y
      [root@master ceshi]# rm -i scp.sh 
      rm:是否删除普通空文件 "scp.sh"?y
      [root@master ceshi]# rm -rf test
      [root@master ceshi]# ll
      总用量 8
      drwxr-xr-x 3 root root 4096 12月 13 18:14 test1
      drw-r--r-- 2 root root 4096 12月 13 18:15 test5
      [root@master ceshi]# rm -rfv test*
      已删除目录:"test1/test2/test3"
      已删除目录:"test1/test2/test4"
      已删除目录:"test1/test2"
      已删除目录:"test1"
      已删除目录:"test5"
      [root@master ceshi]#
      • rmdir:删除空目录,一个目录被删除之前必须是空的;删除某目录时也必须具有对父目录的写权限。 

        • 语法: 
          rmdir [选项]… 目录…

        • 选项:

        •  

          • -p 递归删除目录dirname,当子目录删除后其父目录为空时,也一同被删除。

          • -v, –verbose 显示指令执行过程;

      例:

      [root@master ceshi]# mkdir -pv {test,test1/test2/{test3,test4}}
      mkdir: 已创建目录 "test"
      mkdir: 已创建目录 "test1"
      mkdir: 已创建目录 "test1/test2"
      mkdir: 已创建目录 "test1/test2/test3"
      mkdir: 已创建目录 "test1/test2/test4"
      [root@master ceshi]# tree
      .
      ├── test
      └── test1    
          └── test2        
          ├── test3        
          └── test4
      5 directories, 0 files
      [root@master ceshi]# ll
      总用量 8
      drwxr-xr-x 2 root root 4096 12月 13 18:36 test
      drwxr-xr-x 3 root root 4096 12月 13 18:36 test1
      [root@master ceshi]# rmdir test
      [root@master ceshi]# ll
      总用量 4
      drwxr-xr-x 3 root root 4096 12月 13 18:36 test1
      [root@master ceshi]# rmdir -pv test1/test2/test*
      rmdir: 正在删除目录 "test1/test2/test3"
      rmdir: 正在删除目录 "test1/test2"
      rmdir: 删除目录 "test1/test2" 失败: 目录非空
      rmdir: 正在删除目录 "test1/test2/test4"
      rmdir: 正在删除目录 "test1/test2"
      rmdir: 正在删除目录 "test1"
      [root@master ceshi]# ll
      总用量 0
      [root@master ceshi]#
      • mv:= move,可以用来移动文件或者将文件改名(move (rename) files) 

      • 语法: 
        mv [参数] 源文件或目录 目标文件或目录

      • 选项: 

        • -b :若需覆盖文件,则覆盖前先行备份。

        • -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;

        • -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!

        • -u :若目标文件已经存在,且 source 比较新,才会更新(update)

        • -t : –target-directory=DIRECTORY move all SOURCE arguments into DIRECTORY,即指定mv的目标目录,该选项适用于移动多个源文件到一个目录的情况,此时目标目录在前,源文件在后。

    • 例:

    [root@master URLGenerator]# ll
    总用量 28
    -rwxr-xr-x 1 root root  329 5月  20 2016 restart.sh
    -rwxr-xr-x 1 root root  116 6月  23 20:23 start.sh_bak
    -rwxr-xr-x 1 root root  122 5月  20 2016 stop.sh
    [root@master URLGenerator]# mv -f restart.sh stop.sh
    [root@master URLGenerator]# ll
    总用量 24
    -rwxr-xr-x 1 root root  116 6月  23 20:23 start.sh_bak
    -rwxr-xr-x 1 root root  329 5月  20 2016 stop.sh
    [root@master URLGenerator]# mv start.sh_bak stop.sh
    mv:是否覆盖"stop.sh"? n
    [root@master URLGenerator]# ll
    总用量 24
    -rwxr-xr-x 1 root root  116 6月  23 20:23 start.sh_bak
    -rwxr-xr-x 1 root root  329 5月  20 2016 stop.sh
    [root@master URLGenerator]# mv -b start.sh_bak stop.sh  
    mv:是否覆盖"stop.sh"? n
    [root@master URLGenerator]# ll
    总用量 24-rwxr-xr-x 1 root root  116 6月  23 20:23 start.sh_bak
    -rwxr-xr-x 1 root root  329 5月  20 2016 stop.sh
    [root@master URLGenerator]#
    • cp:复制文件或目录;将单个或多个源文件复制至目标目录下。

      • 语法:

        • 单源复制: 
          cp [OPTION]… [-T] SOURCE DEST 
          选项 源 
          如果DEST不存在:则事先创建此文件,并复制源文件的数据流至DEST中; 
          如果DEST存在: 
          如果DEST是非目录文件:则覆盖目标文件; 
          如果DEST是目录文件:则先在DEST目录下创建一个与源文件同名的文件,并复制其数据流;

        • 多源复制: 
          cp [OPTION]… SOURCE… DIRECTORY 
          cp [OPTION]… -t DIRECTORY SOURCE… 
          如果DEST不存在:错误; 
          如果DEST存在: 
          如果DEST是非目录文件:错误; 
          如果DEST是目录文件:分别复制每个文件至目标目录中,并保持原名;

      • 选项:

        • -a :–archive 等于-dR –preserve=all

        • –backup[=CONTROL] 为每个已存在的目标文件创建备份

        • -b :类似–backup 但不接受参数

        • –copy-contents 在递归处理是复制特殊文件内容

        • -d :等于–no-dereference –preserve=links

        • -f :–force: 如果目标文件无法打开则将其移除并重试(当 -n 选项 
          存在时则不需再选此项)

        • -i : –interactive: 覆盖前询问(使前面的 -n 选项失效)

        • -H :跟随源文件中的命令行符号链接

        • -l, –link: 链接文件而不复制

        • -L, –dereference: 总是跟随符号链接

        • -n, –no-clobber:不要覆盖已存在的文件(使前面的 -i 选项失效)

        • -P, –no-dereference :不跟随源文件中的符号链接

        • -p :等于–preserve=模式,所有权,时间戳

        • –preserve[=属性列表 保持指定的属性(默认:模式,所有权,时间戳),如果 
          可能保持附加属性:环境、链接、xattr 等

        • -R, -r, –recursive 复制目录及目录内的所有项目

      • 例:

      • [root@master URLGenerator]# tree
      • .├── config│   ├── config.xml│   ├── log4j-config.xml│   └── private.key└── lib    ├── chardet.jar    ├── edtftpj.jar    └── jta.jar2 directories, 6 files[root@master URLGenerator]# cp config/config.xml lib/[root@master URLGenerator]# tree.├── config│   ├── config.xml│   ├── log4j-config.xml│   └── private.key└── lib    ├── chardet.jar    ├── config.xml    ├── edtftpj.jar    └── jta.jar2 directories, 7 files[root@master URLGenerator]# ll *config:总用量 12-rw-r--r-- 1 root root 2292 8月  23 16:39 config.xml-rw-r--r-- 1 root root 2940 5月  20 2016 log4j-config.xml-rw-r--r-- 1 root root  893 5月  20 2016 private.keylib:总用量 200-rw-r--r-- 1 root root  26568 5月  20 2016 chardet.jar-rw-r--r-- 1 root root   2292 12月 13 19:27 config.xml-rw-r--r-- 1 root root 156599 5月  20 2016 edtftpj.jar-rw-r--r-- 1 root root   9719 5月  20 2016 jta.jar[root@master URLGenerator]# cp -rp config/ lib/[root@master URLGenerator]# ll *config:
      • 总用量 12-rw-r--r-- 1 root root 2292 8月  23 16:39 config.xml-rw-r--r-- 1 root root 2940 5月  20 2016 log4j-config.xml-rw-r--r-- 1 root root  893 5月  20 2016 private.keylib:总用量 204-rw-r--r-- 1 root root  26568 5月  20 2016 chardet.jardrwxr-xr-x 2 root root   4096 12月 13 19:25 config-rw-r--r-- 1 root root   2292 12月 13 19:27 config.xml-rw-r--r-- 1 root root 156599 5月  20 2016 edtftpj.jar-rw-r--r-- 1 root root   9719 5月  20 2016 jta.jar[root@master URLGenerator]#
      • touch:一般在使用make的时候可能会用到,用来修改文件时间戳,或者新建一个空文件; 

        • 语法: 
          touch [选项]… 文件名…

        • 选项与参数: 

    原创文章,作者:moer,如若转载,请注明出处:http://www.178linux.com/67845

    (0)
    moermoer
    上一篇 2017-02-07
    下一篇 2017-02-08

    相关推荐

    • linxu通配符

      通配符 globbing globbing:文件名通配(整体文件名匹配,而非部分) 匹配模式:元字符 *:匹配任意长度的任意字符 ab*:ab开头的单词 *ab*:包含ab的单词 *ab:ab结尾的单词 *a*b*:包含a、b的单词 ?:匹配任意单个字符 ab?:ab开头的三个字符的单词 ??ab:ab结尾四个字符的单词 a?b:a开头、b结尾三个字符的单词…

      Linux干货 2018-03-11
    • 用户、组及其管理

      用户和组管理    Linux是一个多用户、多任务的操作系统。多用户、多任务就是可以在系统上建立多个用户,多个用户可以在同一时间内登录同一台主机的系统执行不同的任务,而互不影响。例如某台linux服务器上有4个用户,分别是root、www、ftp和mysql,在同一时间内root用户可能在管理维护系统,www用户可能在修改自己的程序和操作…

      Linux干货 2016-08-04
    • AIX下NFS共享导致命令行输入卡住

       1、事件描述:之前公司测试某厂商存储一体机的NFS共享功能,将该NFS目录共享给AIX主机使用(用于备份对应对应的数据库,因为数据库版本太老,Oracle8i的,不支持存储厂商的备份代理),测试完成后,厂商将设备直接关机(这时候在AIX上挂载的NFS目录没有进行卸载)。然后,当我们登陆到AIX服务器上的时候,发现每次敲入“df -g”或者“ls”…

      Linux干货 2016-07-07
    • 马哥linux0726课程内容

      课堂内容笔记   使用几个符号可以使用原始命令 \,’’,绝对路径运行 这三种方法都可以使用到原始命令,不使用别名   别名-内部命令-缓存-外部命令 使用命令的优先级   man帮助具体用法 makewhatis老版本安装whatis mandb新版本安装whatis man的具体路径在/usr/share/man whati…

      Linux干货 2016-08-04
    • 用“逐步排除”的方法定位Java服务线上“系统性”故障

      一、摘要 由 于硬件问题、系统资源紧缺或者程序本身的BUG,Java服务在线上不可避免地会出现一些“系统性”故障,比如:服务性能明显下降、部分(或所有)接口超 时或卡死等。其中部分故障隐藏颇深,对运维和开发造成长期困扰。笔者根据自己的学习和实践,总结出一套行之有效的“逐步排除”的方法,来快速定位Java 服务线上“系统性”故障。 二、导言 Java 语言是广…

      2015-02-28
    • 第一周作业

      计算机的组成以CPU/存储/IO设备 硬件层次 CPU以完成运算和控制 存储包含 I/O设备为连接计算机的多样性输入输出设备(包含打印机/显示器等) 软件层次 以机器语言为基础,到符合使用的应用程序, Linux的发行版本 RedHat(商业组织维护版本,有enterprise version)-CentOS-主要以此为主 Debian(community)…

      Linux干货 2016-12-04

    评论列表(1条)

    • 马哥教育
      马哥教育 2017-03-30 14:17

      不错,结构清晰,再接再励。