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

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

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

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

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/165879.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 利用nginx搭建RTMP视频点播、直播、HLS服务器「建议收藏」

    利用nginx搭建RTMP视频点播、直播、HLS服务器「建议收藏」开发环境Ubuntu14.04servernginx-1.8.1nginx-rtmp-modulenginx的服务器的搭建安装nginx的依赖库sudoapt-getupdatesudoapt-getinstalllibpcre3libpcre3-devsudoapt-getinstallopenssllibssl-dev配置并编译nginx使用nginx的默

  • Python + allure 报告[通俗易懂]

    Python + allure 报告[通俗易懂]安装Windows安装allure需要先安装scoop,确保安装了PowerShell5(或更高版本,包括PowerShellCore)和.netFramework4.5(或更高版本)。然后打开PowerShell运行:iex(new-objectnet.webclient).downloadstring(‘https://get.scoop.sh’)安装allure:sco…

  • c++overload_override和重载的区别

    c++overload_override和重载的区别重载的含义是什么?重载有哪些?重载方法,重载函数该怎么写?重载的特点是什么?重载的作用是什么?使用重载时应该注意什么?

  • oracle数据库sequence的作用_oracle dataguard

    oracle数据库sequence的作用_oracle dataguardsequence概念及作用sequence是用来在多用户环境下产生唯一整数的数据库对象。序列产生器顺序生成数字,它可用于自动生成主键值,并能协调多行或者多表的主键操作。没有sequence,顺序的值只能靠编写程序来生成。先找出最近产生的值然后自增长。这种方法要求一个事务级别的锁,这将导致在多用户并发操作的环境下,必须有人等待下一个主键值的产生。而且此方法很容易产生主键冲突的错误,如下图:如上

    2022年10月18日
  • java注解拦截_轻松实现java拦截器+自定义注解

    java注解拦截_轻松实现java拦截器+自定义注解本文将用简洁的代码构建一个springboot的拦截器。拦截器的使用很简单,定义一个自己的拦截器,向配置中添加一下就可以使用。为了方便,之后又引入了注解。目录和概述概述假设需求:访问项目的controller是都要进行”token验证”,除了某些像登录之类的方法。项目结构:TokenInterceptor.java自定义拦截器InterceptorConfig.java添加拦截器进入项目NoN…

  • org.springframework.web.context.ContextLoaderListener

    org.springframework.web.context.ContextLoaderListener

发表回复

您的电子邮箱地址不会被公开。

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