Linux

115 阅读3分钟

1. 文件管理

1.0 ls命令 – 显示指定工作目录下的内容及属性信息

ls 命令是Linux下最常用的指令之一。ls命令为英文单词 list 的缩写,正如英文单词 list 的意思,其功能是列出指定目录下的内容及其相关属性信息。 默认状态下,ls命令会列出当前目录的内容。而带上参数后,我们可以用ls做更多的事情。

  • 语法格式: ls [参数][文件]

  • 常用参数:

    参数解释
    -a显示所有文件及目录 (包括以“.”开头的隐藏文件)
    -l使用长格式列出文件及目录信息
    -r将文件以相反次序显示(默认依英文字母次序)
    -t根据最后的修改时间排序
    -S根据文件大小排序
    -R递归列出所有子目录
  • 例子: 列出所有文件(包括隐藏文件):

    [root@hjm ~]# ls -a
    

    列出文件的详细信息:

    [root@hjm ~]# ls -l
    

    列出根目录(/)下的所有目录:

    [root@hjm ~]# ls / 
    

    列出当前工作目录下所有名称是 “s” 开头的文件:

    [root@hjm ~]# ls -ltr s*
    

    列出 /bin 目录下的所有目录及文件的详细信息:

    [root@hjm ~]# ls -lR /bin
    

    列出当前工作目录下所有文件及目录并以文件的大小进行排序:

    [root@hjm ~]# ls -S
    

1.1 mkdir命令 - 创建目录

注意:默认状态下,如果要创建的目录已经存在,则提示已存在,而不会继续创建目录。 所以在创建目录时,应保证新建的目录与它所在目录下的文件没有重名。 mkdir命令还可以同时创建多个目录。

  • 语法格式:mkdir [参数][目录]

  • 常用参数:

    参数解释
    -p递归创建多级文件
    -m建立目录的同时设置目录的权限
    -z设置安全上下文
    -v显示目录的创建过程
  • 例子:

    建立一个名为test的子目录:

      [root@hjm ~]# mkdir test
    

    在目录/usr/hjm下建立子目录dir,并且设置文件属主有读、写和执行权限,其他人无权访问:

    [root@hjm ~]# mkdir -m 700 /usr/hjm/dir
    

    同时创建子目录dir1,dir2,dir3:

    [root@hjm ~]# mkdir dir1 dir2 dir3
    

    递归创建目录:

    [root@hjm ~]# mkdir -p hjm/dir
    

1.2 cp命令 - 复制文件或目录

cp命令可以理解为英文单词copy的缩写,其功能为复制文件或目录。
cp命令可以将多个文件复制到一个具体的文件名或一个已经存在的目录下,也可以同时复制多个文件到一个指定的目录中。

  • 语法格式:cp [参数][文件]

  • 常用参数:

    参数解释
    -f若目标文件已存在,则会直接覆盖原文件
    -i若目标文件已存在,则会询问是否覆盖
    -p保留源文件或目录的所有属性
    -r递归复制文件和目录
    -d当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接的原始文件或目录
    -l对源文件建立硬连接,而非复制文件
    -s对源文件建立符号连接,而非复制文件
    -b覆盖已存在的文件目标前将目标文件备份
    -v详细显示cp命令执行的操作过程
  • 例子:

    复制目录:

    [root@hjm ~]# cp -R dir dir2/
    

    将文件test1改为test2:

    [root@hjm ~]# cp -f test1 test2
    

    复制多个文件:

    [root@hjm ~]# cp -r file1 file2 file3 dir
    

    交互式地将目录 /usr/linuxcool 中的所有.c文件复制到目录 dir 中:

    [root@hjm ~]# cp -r /usr/hjm/*.c dir