今天补充学习了一下linux的文件与目录操作,来复习一下


明明linux发行版的图形操作界面做的已经完全足够我们日常使用了,为什么我们还是一定要学linux的命令?
那是由linux的主要功能决定的,目前来说linux操作系统主要应用于服务器与嵌入式设备当中。
嵌入式设备不用多说,大部分的嵌入式设备是不可能拥有像是我们电脑这样完善的界面和操作方式的。
那么对于服务器来说,服务器就是一台电脑,装载了linux系统,被放置在公司或者学校的机房中,像这样。

为了电脑的散热和安全,机房里面温度十分低,并且机房里面噪音非常大。难道我们还能每个人搬个小板凳坐在机房里面,一群人围着柜子操作嘛?环境与效率都不允许我们这么做。
那么我们怎么做呢?记住一点,linux是基于Unix开发的,而Unix设计的初衷就是为了多个用户同时在一台电脑上工作,共享一台电脑的硬件,我们通常是远程来对服务器进行维护。
这里又扯远一点,远程维护,如果我们使用的是苹果系统,那么直接可以在终端连上服务器对它进行维护,如果是Windows上我们需要安装工具连上服务器对它进行操作。但是无论是哪种方式。都是没有界面的!!!只有一个黑框框,也就是终端命令框! 这也就是为什么我们要学命令的原因。

下面我们开始讲一下基础命令


目录操作

这里讲两个最最最常用重要的命令,ls和cd

ls(选项)(参数)

选项:
-a:显示所有档案及目录(ls内定将档案名或目录名称为“.”的视为影藏,不会列出);
-C:多列显示输出结果。这是默认选项;
-l:以长格式显示目录下的内容列表。输出的信息从左到右依次包括文件名,文件类型、权限模式、硬连接数、所有者、组、文件大小和文件的最后修改时间等;
-i:显示文件索引节点号(inode)。一个索引节点代表一个文件;
-t:用文件和目录的更改时间排序;

拿我自己的ubuntu举例子:

↑↑↑这是默认情况下,可以看到呈多行显示,并且只显示个文件名

↑↑↑这个是加了选项 -a之后,我们发现以 . 开头的隐藏文件也显示出来了

↑↑↑ 这个就是长格式显示文件和目录,出的信息从左到右依次包括文件名,文件类型、权限模式、硬连接数、所有者、组、文件大小和文件的最后修改时间等。

剩下的选项请自己去尝试喔

有个小提示:我们可以多个选项一起使用,放在一个 - 后面,例如 ls -al

又有一个小提示:平时我们喜欢用 ls -al ,用的多了觉得它麻烦怎么办,这里有个 ll 操作,是它的别名, ls -al == ll 。相信我你会喜欢上它的。

cd (选项) (参数)

关于cd命令,一般情况下我们也是不需要使用选项的,直接带着参数跑

但是这里有些特殊的参数需要记忆一下

cd 进入用户主目录;
cd ~ 进入用户主目录;
cd - 返回进入此目录之前所在的目录;
cd … 返回上级目录(若当前目录为“/“,则执行完后还在“/";"…"为上级目录的意思);
cd …/… 返回上两级目录;

其中cd 和cd ~ 的效果是一样的,但是这里有一点,如果我们使用的是普通账户的话,我们的主目录就是账户主目录,如果我们比较牛批,是root账户,那么使用这个操作是会直接到达根目录下的 root/ 目录下面。

cd的命令都很简单啦,相信你肯定可以的。


文件操作

这部分讲一下 touch, mkdir, rm, cp, mv, cat, more, less 这几个命令,各个都是很常用的命令!

touch(选项)(参数)

touch命令有两个用法,第一个用法是创建一个空文件,就是啥都没有的文件,前提是这个文件如果在当前目录不存在的话。

第二个用法,就是改变一个已经存在的文件的存取时间,又拿我的Ubuntu举例子:

mkdir (选项)(参数)

mkdir是一个创建目录的命令,默认是在当前路径下创建新的目录,这里着重介绍一个选项 -r
这个选项能干嘛呢?先用我的Ubuntu(我的Ubuntu:你没完没了了啊!)来给大家演示一下:

ok,演练结果如上,首先我在桌面利用mkdir创建了一个目录csdn,但是如果我想直接用mkdir创建多级目录的时候,它不干活了,于是我加上了一个 -r 选项,就可以了,如图我已经成功创建了三级目录 a/b/c , 所以大家就将-r选项理解成可以帮助我们创建多级目录的选项好了

rm (选项)(参数)
rm命令可以删除一个目录中的一个或多个文件或目录,也可以将某个目录及其下属的所有文件及其子目录均删除掉。对于链接文件,只是删除整个链接文件,而原有文件保持不变。
注意:使用rm命令要格外小心。因为一旦删除了一个文件,就无法再恢复它。所以,在删除文件之前,最好再看一下文件的内容,确定是否真要删除。rm命令可以用-i选项,这个选项在使用文件扩展名字符删除多个文件时特别有用。使用这个选项,系统会要求你逐一确定是否要删除。这时,必须输入y并按Enter键,才能删除文件。如果仅按Enter键或其他字符,文件不会被删除。

选项
-d:直接把欲删除的目录的硬连接数据删除成0,删除该目录;
-f:强制删除文件或目录;
-i:删除已有文件或目录之前先询问用户;
-r或-R:递归处理,将指定目录下的所有文件与子目录一并处理;
-v:显示指令的详细执行过程。

这可是个大杀器啊,首先,听我一句话,千万不要获取了root权限之后跑到根目录 rm -rf *, (或者你也可以试试,如果是公司的服务器的话,先把逃生机票买好)。这个我就不用我的Ubuntu来演示了。
rm,由remove简化而来,是一个删除文件和目录的命令,如果想要删除目录就要加上-r 选项,代表递归删除,否则只能删除文件。话不多说,用我的Ubuntu给大家演示一下

cp(选项)(参数)
cp命令用来将一个或多个源文件或者目录复制到指定的目的文件或目录。它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下。cp命令还支持同时复制多个文件,当一次复制多个文件时,目标文件参数必须是一个已经存在的目录,否则将出现错误。

这个选项就介绍一个吧,递归复制

-R/r:递归处理,将指定目录下的所有文件与子目录一并处理;

不多说,我的Ubuntu,上:

mv(选项)(参数)

mv, 由move简化而来,顾名思义,移动,这就是移动文件的命令

选项
-b:当文件存在时,覆盖前,为其创建一个备份;
-f:若目标文件或目录与现有的文件或目录重复,则直接覆盖现有的文件或目录;
-i:交互式操作,覆盖前先行询问用户,如果源文件与目标文件或目标目录中的文件同名,则询问用户是否覆盖目标文件。用户输入”y”,表示将覆盖目标文件;输入”n”,表示取消对源文件的移动。这样可以避免误将文件覆盖。

我的Ubuntu,开始演练:

写多了就开始懒,我这里演练的是最基础的用法,各种选项请大家自行尝试,毕竟写的还是很清楚滴。

cat(选项)(参数)
cat命令连接文件并打印到标准输出设备上,cat经常用来显示文件的内容

选项:
-n或-number:有1开始对所有输出的行数编号;
-b或–number-nonblank:和-n相似,只不过对于空白行不编号;

我的Ubuntu,发功:

这里我用了-b参数,空白行不记录行号,如果是-n的话空白行也有行号,我们平时用的比较多的是-n 喔!

more, less这两个命令都是读取文件内容并打印在终端上的。就我个人来说我更钟情于less,没别的原因,因为less比more强!

less(选项)(参数)

选项
-e:文件内容显示完毕后,自动退出;
-N:每一行行首显示行号;
-s:将连续多个空行压缩成一行显示;
-S:在单行显示较长的内容,而不换行显示;

less与more的共同点在哪呢?都是可以一屏一屏显示文档内容。啥?什么叫一屏一屏显示?我的Ubuntu,上!

来围观一下,我使用cat直接读取我写的hello.txt 文件,因为太多行了,我一显示,直接给我窜底部来了,那我还要自己滑进度条滑上去看嘛?太不人性化了,这就叫,不是一屏一屏显示。
现在开始我们的一屏一屏显示,我的Ubuntu(Ubuntu:明白了您嘞):

看到第一行没有!“我是开头!”,这就是第一行,刚刚直接给我窜到底,现在我能看见第一行了,并且我只要按一下空格,它就给我翻一屏,对,翻一屏,而如果我按回车,它就给我翻到下一行!按q退出,按方向键的↑还可以向上翻——这就是和more不同的地方,more是不支持向上翻的,但是less支持!所以我选less,其他地方less和more基本相同。

好了,好累啊,让我的Ubuntu来跟大家道个别:(Ubuntu:*******(口吐芬芳))

谢谢你来看我!
关注我的公众号【阳仔不想当码农】, 给你更多愉快体验!
欢迎来访

为什么要学linux命令以及linux(ubuntu)的文件与目录命令相关推荐

  1. Linux之复制、移动文件及目录命令

    Linux之复制.移动文件及目录命令 1. 复制.移动文件及目录命令的使用 命令 说明 cp 拷贝文件.拷贝目录 mv 移动文件.移动目录.重命名 cp命令效果图: 说明: 拷贝目录需要加上-r选项, ...

  2. ubuntu创建、删除文件及目录命令

    创建.删除文件及目录命令 1. 创建.删除文件及目录命令的使用 touch命令效果图: mkdir命令效果图: rm命令效果图: rm删除目录效果图 能够使用Linux命令创建文件夹 1. 创建.删除 ...

  3. linux安装bz2压缩文件,Linux下*.tar.gz/.tar.bz2 文件解压缩安装命令

    Linux tar 命令 在Linux平台,tar是主要的打包工具.tar命令通常用来把文件和目录压缩为一个文件( tarball 或 tar, gzip 和 bzip). Tar选项: c – 创建 ...

  4. linux安装tar解压命令,Linux下*.tar.gz/.tar.bz2 文件解压缩安装命令

    Linux tar 命令 在Linux平台,tar是主要的打包工具.tar命令通常用来把文件和目录压缩为一个文件( tarball 或 tar, gzip 和 bzip). Tar选项:c – 创建压 ...

  5. Linux下显示前10个占用空间最大的文件或目录命令

    Linux下显示前10个占用空间最大的文件或目录命令 du -s * | sort -nr | head 转载于:https://blog.51cto.com/wapcn/933177

  6. linux rm命令参数及用法详解---linux删除文件或目录命令

    http://www.linuxso.com/command/rm.html linux下rm命令使用详解---linux删除文件或目录命令 用户可以用rm命令删除不需要的文件.该命令的功能为删除一个 ...

  7. Linux操作系统:文件和目录命令

    dba基础课程-Linux操作系统:文件和目录命令 cd /home 进入 '/ home' 目录' cd .. 返回上一级目录 cd ../.. 返回上两级目录 cd 进入个人的主目录 cd ~us ...

  8. Linux基本命令之文件及目录命令02

    接上一个博客 文件及目录01:https://blog.csdn.net/qq_40520912/article/details/119224154 2.9. rm:删除目录或文件 语法: rm [参 ...

  9. linux系统下shell命令使用通配符批量创建文件或目录

    linux系统下shell命令使用通配符批量创建文件或目录 批量创建log文件 批量创建文件夹 批量删除目录 批量创建log文件 touch {1..5}.log 批量创建文件夹 mkdir dir_ ...

  10. Linux操作系统下删除文件及目录命令

    命令:rm:英文remove,删除的意思 命令格式: rm [参数] 文件或目录 常用命令 "rm -f" 强行删除,忽略不存在的文件,不提示确认.(f为force的意思) &qu ...

最新文章

  1. Python 之 pip拒绝访问
  2. MyGeneration学习笔记(10) :配置数据库连接
  3. python正态分布随机数_Python使用numpy产生正态分布随机数的向量或矩阵操作示例...
  4. sd-wan公司组网解决方案效果如何?
  5. Hello Blazor:(6)你必须踩过这5个坑,才算学会部署Blazor WebAssembly到静态网站
  6. 商丘高中计算机考试成绩查询系统,2019商丘中考招生成绩查询时间及网站公布...
  7. 2021“MINIEYE杯”中国大学生算法设计超级联赛(2)I love counting(Trie树)
  8. 国土空间规划师提升指南
  9. 被劝退的准中年人日记——劝退后第一天
  10. C语言之数据类型,C语言之数据类型
  11. 百度 PaddlePaddle开源视频分类模型Attention Cluster,曾夺挑战赛冠军
  12. html语言添加点击事件,vue 中拼接html时添加点击事件
  13. python期货量化交易_基于vnpy搭建期货量化交易机器人(一)准备工作
  14. 经典面试题-什么是java序列化,如何实现java序列化?
  15. 利用seven 7zip的API来进行压缩和解压文件夹
  16. 设置android应用闪屏图片_android 闪屏设计
  17. [每周心学]示弟立志说(附译文)
  18. 概率论与数理统计 1 Overview and Descriptive Statistics(概述和描述性统计) (上篇)
  19. javaScript 实现表格table分页
  20. FreeBSD与Linux再比较

热门文章

  1. jquery特效 商品SKU属性规格选择实时联动
  2. Python查看文章中每个单词的出现频率
  3. [C#]Main(String[] args)参数输入问题
  4. 一道面试题,设计电路,set,reset
  5. [jQuery] 按比例缩小图片
  6. 【网摘】ActiveX组件及其注册
  7. 宇瞻筹划转型 标准型内存不再是重头产品
  8. Hibernate HQL基础
  9. 《Web测试囧事》——1.3 测试Web Service能否正常提供JSON数据
  10. Netflix是如何针对云构建和部署代码的