• linux(3) 处理目录的常用命令


    目录命令总览

    • ls(英文全拼:list files): 列出目录及文件名
    • cd(英文全拼:change directory):切换目录
    • pwd(英文全拼:print work directory):显示目前的目录
    • mkdir(英文全拼:make directory):创建一个新的目录
    • rmdir(英文全拼:remove directory):删除一个空的目录
    • cp(英文全拼:copy file): 复制文件或目录
    • rm(英文全拼:remove): 删除文件或目录
    • mv(英文全拼:move file): 移动文件与目录,或修改文件与目录的名称
       

    ls (列出目录)

    在Linux系统当中, ls 命令可能是最常被运行的。

    语法:

    [root@jkc ~]# ls [-aAdfFhilnrRSt] 目录名称
    [root@jkc ~]# ls [--color={never,auto,always}] 目录名称
    [root@jkc ~]# ls [--full-time] 目录名称
    

    选项与参数:

    • -a :全部的文件,连同隐藏文件( 开头为 . 的文件) 一起列出来(常用)
    • -d :仅列出目录本身,而不是列出目录内的文件数据(常用)
    • -l :长数据串列出,包含文件的属性与权限等等数据;(常用)

    将家目录下的所有文件列出来(含属性与隐藏档)

    [root@jkc /]# ls -al ~
    

    cd (切换目录)

    cd是Change Directory的缩写,这是用来变换工作目录的命令。

    语法:

    #使用 mkdir 命令创建 test 目录
    [root@jkc ~]# mkdir test
    
    #使用绝对路径切换到 test 目录
    [root@jkc ~]# cd /root/test/
    
    #使用相对路径切换到 test 目录
    [root@jkc ~]# cd ./test/
    
    # 表示回到自己的家目录,亦即是 /root 这个目录
    [root@jkc test]# cd ~
    
    # 表示去到目前的上一级目录,亦即是 /root 的上一级目录的意思;
    [root@jkc ~]# cd ..
    

    接下来大家多操作几次应该就可以很好的理解 cd 命令的。
     

    pwd (显示目前所在的目录)

    pwd 是 Print Working Directory 的缩写,也就是显示目前所在目录的命令。

    [root@jkc /]# cd /root/docker-run/
    [root@jkc docker-run]# pwd
    /root/docker-run
    [root@jkc docker-run]# 
    

    mkdir (创建新目录)

    如果想要创建新的目录的话,那么就使用mkdir (make directory)吧。

    语法:

    mkdir [-mp] 目录名称
    

    选项与参数:

    • -m :配置文件的权限喔!直接配置,不需要看默认权限 (umask) 的脸色~
    • -p :帮助你直接将所需要的目录(包含上一级目录)递归创建起来!

    案列演示

    # 新建一个文件夹
    mkdir test
    
    # 新建多个文件夹
    mkdir test1 test2 test3
    
    # 新建一个多层级文件夹
    mkdir -P test4/test5/test6
    
    # 新建一个文件夹,并设置权限
    mkdir -m 777 test7
    

    rmdir (删除空的目录)

    语法:

     rmdir [-p] 目录名称
    

    选项与参数:

    • -p :连同上一级『空的』目录也一起删除
    [root@jkc tmp]# rmdir test
    [root@jkc tmp]# rmdir -p test1/test2
    

    **注意:**这个 rmdir 仅能删除空的目录,你可以使用 rm 命令来删除非空目录
     

    cp (复制文件或目录)

    cp 即拷贝文件和目录。

    语法:

    [root@www ~]# cp [-adfilprsu] 来源档(source) 目标档(destination)
    [root@www ~]# cp [options] source1 source2 source3 .... directory
    

    选项与参数:

    • -a:相当于 -pdr 的意思,至於 pdr 请参考下列说明;(常用)

    • -d:若来源档为连结档的属性(link file),则复制连结档属性而非文件本身;

    • -f:为强制(force)的意思,若目标文件已经存在且无法开启,则移除后再尝试一次;

    • -i:若目标文件已经存在时,在覆盖时会先询问动作的进行(常用)

    • -l:进行硬式连结(hard link)的连结档创建,而非复制文件本身;

    • -p:连同文件的属性一起复制过去,而非使用默认属性(备份常用);

    • -r:递归持续复制,用于目录的复制行为;(常用)

    • -s:复制成为符号连结档 (symbolic link),亦即『捷径』文件;

    • -u:若 destination 比 source 旧才升级 destination !
      用 root 身份,将 root 目录下的 .bashrc 复制到 /tmp 下,并命名为 bashrc

    [root@jkc ~]# cp ~/.bashrc /tmp/bashrc
    [root@jkc ~]# cp -i ~/.bashrc /tmp/bashrc
    cp:是否覆盖"/tmp/bashrc"? y
    [root@jkc ~]# 
    

    rm (移除文件或目录)

    语法:

    rm [-fir] 文件或目录
    

    选项与参数:

    • -f :就是 force 的意思,忽略不存在的文件,不会出现警告信息;
    • -i :互动模式,在删除前会询问使用者是否动作
    • -r :递归删除啊!最常用在目录的删除了!这是非常危险的选项!!!(删库跑路:rm -rf)
      将刚刚在 cp 的实例中创建的 bashrc 删除掉!
    [root@jkc tmp]# rm -i bashrc 
    rm:是否删除普通文件 "bashrc"?y
    [root@jkc tmp]# 
    

    如果加上 -i 的选项就会主动询问喔,避免你删除到错误的档名!
     

    mv (移动文件与目录,或修改名称)

    语法:

    [root@jkc ~]# mv [-fiu] source destination
    [root@jkc ~]# mv [options] source1 source2 source3 .... directory
    

    选项与参数:

    -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;
    -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!
    -u :若目标文件已经存在,且 source 比较新,才会升级 (update)
    

    案列演示

    # 移动当前用户文件夹下的test文件夹,移动到/usr/local目录
    mv ~/test/ /usr/local
    
    # 
    移动一个文件test.py ,移动到/usr/local目录
    mv test.py /usr/local
    
    # 当前目录的test.py移动到 /usr/local目录,并重命名为test1.py
    mv test.py /usr/local/test1.py
    
    # 移动文件到上级目录
    mv test.py ..
    
    # 移动两个文件 test1.py test2.py 到目录 /usr/local
    mv test1.py test2.py /usr/local
    
    # 移动test.py到/usr/local下,但/usr/local已存在test.txt,强制覆盖
    mv -f test.py /usr/local
    
    # 移动test.py到/usr/local下,但/usr/local已存在test.txt,会询问是否覆盖
    mv -i test.py /usr/local
    
  • 相关阅读:
    Spring与MyBatis整合应用
    Spring与JDBC整合应用
    登录权限检查(SpringMVC)
    SpringMVC中文乱码问题
    SpringMVC异常处理
    SpringMVC注解应用
    Viewpager+fragment数据更新问题解析
    android adb 读写模式 挂载文件系统
    Android网络通信两种方法
    Win7、win2008中让IIS7支持asp的方法
  • 原文地址:https://www.cnblogs.com/jiakecong/p/14352336.html
Copyright © 2020-2023  润新知