linux(3) 处理目录的常用命令「建议收藏」

linux(3) 处理目录的常用命令「建议收藏」目录命令总览ls(英文全拼:listfiles):列出目录及文件名cd(英文全拼:changedirectory):切换目录pwd(英文全拼:printworkdirectory):显


Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

目录命令总览

  • 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
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/166300.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • python输入两个集合取并集_python交集并集差集

    python输入两个集合取并集_python交集并集差集第一种方法:使用python基本数据结构set集合。优点:集合运算长度可以不一致,运算效率高缺点:两个进行运算的集合中不能够含有重复的元素,如果含有的话,转成set集合后,会自动去掉重复元素a=[1,2,3]b=[1,2,6,9,12]print(set(a)&set(b))#交集print(set(a)|set(b))#并集print(set(a)^set(b))#异或,就是两个集合去掉交集的那部分print(set(a)-set(b))#差集,就

    2022年10月6日
  • 面试基础知识整理

    面试基础知识整理写在前面:3月伊始便经历了几次笔面试,深深感到自己知识储备的不足,痛下决心,在期末考试前一周,着手整理基础知识,希望可以对接下来的笔面试以及秋招有所帮助。本系列文章涉及数据结构及算法均使用Java语言描述。本文系基础知识整理,文章内容多来源于各经典书籍。本系列文章不定期更新,希望我可以有毅力完成这一工作。1.数据结构数组链表栈队列数图堆2.

    2022年6月20日
  • 【12】进大厂必须掌握的面试题-持续测试面试

    Q1。什么是连续测试? 我将建议您遵循以下提到的解释: 连续测试是作为软件交付管道的一部分执行自动测试的过程,以获得与最新版本相关的业务风险的即时反馈。这样,每个构建都将得到持续测…

    2020年10月19日
  • c++入门教程–-3数据类型,变量与常量

    c++入门教程–-3数据类型,变量与常量

    2021年3月12日
  • Windows安装pip方法「建议收藏」

    pip是一款非常方便的python包管理工具,本文主要介绍在windows10下安装pip方法。1.下载pip地址:https://pypi.python.org/pypi/pip#downloads注意选择tar.gz压缩包,目前最新版本为9.0.1,这里选择的版本是:pip-9.0.1.tar.gz(md5,pgp)点击:下载2.解压安装解压下载的压缩包至…

    2022年4月13日
  • Python3列表_python tuple

    Python3列表_python tuple列表列表特点:是一种序列结构,与元组不同,列表具有可变性,可以追加、插入、删除、替换列表中的元素新增元素appendappend添加一个对象,可以是任意类型a=['zhangsa

    2022年7月30日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号