欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 美景 > (二)Linux下基本指令 1

(二)Linux下基本指令 1

2025/7/1 22:09:27 来源:https://blog.csdn.net/double__main__/article/details/147670562  浏览:    关键词:(二)Linux下基本指令 1

【知识预告】

  1. 快捷键补充
  2. ls指令
  3. pwd指令
  4. cd指令
  5. touch指令
  6. mkdir指令
  7. rmdir指令 && rm指令
  8. man指令
  9. cp指令
  10. mv指令
  11. cat指令
  12. more指令
  13. less指令
  14. head指令
  15. tail指令

1 快捷键补充

alt + Enter:Xshell自动全屏或退出全屏。
ctrl + d:退出Xshell。
ctrl + c:终止因程序异常,而导致无法输入的情况。(无脑退出)
Linux环境下ctrl + c / ctrl + v 是不行的。
复制: ctrl + insert
粘贴: shift + insert
上下按键,可以直接复制上一条输过的指令。

2 ls指令

语法: ls [选项][目录或文件]
功能:对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。
补充:文件 = 文件内容 + 文件属性
常用选项

  • -a 列出目录下的所有文件,包括以 . 开头的隐含文件。
  • -d 将目录象文件一样显示,而不是显示其下的文件。 如:ls –d 指定目录
  • -i 输出文件的 i 节点的索引信息。 如 ls –ai 指定文件
  • -k 以 k 字节的形式表示文件的大小。ls –alk 指定文件
  • -l 列出文件的详细信息。
  • -n 用数字的 UID,GID 代替名称。 (介绍 UID, GID)
  • -F 在每个文件名后附上一个字符以说明该文件的类型,“*”表示可执行的普通文件;“/”表示目录;“@”表示符号链接;“|”表示FIFOs;“=”表示套接字(sockets)。(目录类型识别)
  • -r 对目录反向排序。
  • -t 以时间排序。
  • -s 在l文件名后输出该文件的大小。(大小排序,如何找到目录下最大的文件)
  • -R 列出所有子目录下的文件。(递归)
  • -1 一行只输出一个文件。

2.1 单独的ls指令

ls // 查看当前路径下,存在哪些文件(只显示文件名这一种属性)

在这里插入图片描述

2.2 ls - l

ls -l   // 显示更多的文件属性,其中ls -l可以等价于ll

在这里插入图片描述

2.3 ls -la

ls -la    // 显示更多的文件属性(包括隐藏文件)-la和-al一样的,字母顺序可以换

在这里插入图片描述
其中一个点,两个点都是隐藏文件。一个点表示当前路径,两个点表示上级路径。

查看hyq路径下存在哪些文件(前提是当前路径下hyq文件要存在)
在这里插入图片描述
查看hyq路径下存在哪些文件,显示全部属性(前提是当前路径下hyq文件要存在)
在这里插入图片描述

2.4 ls -dl

ls -dl hyq   // 查看hyq这个文件夹,它自己的属性

在这里插入图片描述

2.5 -alF

ls -alF   // 显示当前文件夹的所有文件(包括隐藏文件),并且加上各种后缀

在这里插入图片描述

  • /:表示这是一个目录 (Directory)。
  • *:表示这是一个可执行的普通文件 (Executable Regular File)。
  • @: 表示这是一个符号链接 (Symbolic Link),即指向另一个文件或目录的快捷方式。
  • |: 表示这是一个 FIFO 特殊文件 (Named Pipe),用于进程间通信。
  • =: 表示这是一个套接字文件 (Socket),通常用于网络通信或本地进程间通信。
  • 什么都不带的就表示普通的文本文件。

3 pwd指令

语法: pwd
功能:显⽰⽤⼾当前所在的⽬录
在这里插入图片描述

4 cd指令

补充Linux理论知识:路径的认识
在这里插入图片描述

  • Linux系统中,磁盘上的⽂件和⽬录被组成⼀棵⽬录树,每个节点都是⽬录或⽂件。
  • 其中普通⽂件⼀定是⽬录树的叶⼦节点
  • ⽬录可能是叶⼦(空⽬录), 也可能是路上节点
  • 理解路径存在的意义: 树状组织⽅式,都是为了保证快速定位查找到指定的⽂件,⽽定位⽂件就需要具有唯⼀性的⽅案来进⾏定位⽂件。其中任何⼀个节点,都只有⼀个⽗节点,所以,从根⽬录开始,定位指定⽂件,路径具有唯⼀性
  • 绝对路径:⼀般从 / 开始,不依赖其他⽬录的定位⽂件的⽅式
  • 相对路径:相对于当前用户所处⽬录,定位⽂件的路径⽅式
  • 绝对路径⼀般不会随着⽤⼾的路径变化⽽丧失唯⼀性,⼀般在特定服务的配置⽂件中经常被使⽤
  • 相对路径因为它的便捷性,⼀般在命令⾏中使⽤较多

语法:cd 目录名。
功能:改变工作目录。将当前工作目录改变到指定的目录下。
补充:

  • /可以表示Linux的根目录,或是Linux下的分隔符。\是Window下的分隔符
  • Linux的用户可以分为root(超级用户)和其它用户(普通用户),使用 whoami即可查看当前用户

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

cd ..   // 意思是返回上级目录
cd /home/HYQ/hyq/dir1    // 绝对路径
cd ../dir2   // 相对路径
cd ~   // 进入用户家目
cd -   // 返回最近访问目录

5 touch指令

语法:touch [选项]… 文件…
功能:touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件
常用选项

  • -a:只改变访问时间 (access time, atime)
  • -c:不创建任何不存在的文件

在这里插入图片描述

6 mkdir指令

语法:mkdir [选项] dirname
功能:在当前目录下创建一个名为 “dirname”的目录
常用选项

  • -p, --parents 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录。

补充:先进入root账号,输入yum install -y tree安装tree环境,然后输入tree .即可查看,以当前目录为根,系统帮忙画出的树状结构。
在这里插入图片描述
在这里插入图片描述
如果我想创建一串路径,即:创建一个文件夹d1,然后在d1文件夹里面创建d2,d2文件夹里面创建d3,d3文件夹里面创建d4。可以使用:mkdir -p d1/d2/d3/d4
在这里插入图片描述

7 rmdir指令 && rm指令

rmdir是一个与mkdir相对应的命令。mkdir是建立目录,而rmdir是删除命令。

语法:rmdir [dirName]
适用对象:具有当前目录操作权限的所有使用者。
功能:删除空目录。
常用选项

  • -p 当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除。

rm命令可以同时删除文件或目录
语法:rm [-f-i-r-v][dirName/dir]
适用对象:所有使用者
功能:删除文件或目录
常用选项

  • -f 即使文件属性为只读(即写保护),亦直接删除
  • -i 删除前逐一询问确认
  • -r 删除目录及其下所有文件

总结:删除命令只用记住一个:rm -rf 要删除的对象

在这里插入图片描述
补充一点:Linux操作系统下,文件删除就是真的删除了,它不像Windows环境,还会提醒一下,或是有个回收站,删除就是真的没了,错过了,就真的错过了

再补充一个点:

ls *    // *表示通配符,可以匹配任意类型的文件

在这里插入图片描述
在这里插入图片描述

8 man指令

Linux的命令有很多参数,我们不可能全记住,我们可以通过查看联机手册获取帮助。访问Linux手册页的命令是
man 语法: man [选项] 命令

  • -k 根据关键字搜索联机帮助
  • num 只在第num章节找
  • -a 将所有章节的都显示出来,比如 man printf 它缺省从第一章开始搜索,知道就停止,用a选项,当按下q退出,他会继续往后面搜索,直到所有章节都搜索完毕
man ls   // 查看ls指令的使用说明

在这里插入图片描述

9 cp指令

语法:cp [选项] 源文件或目录 目标文件或目录
功能: 复制文件或目录

  • -f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在
  • -i 或 --interactive 覆盖文件之前先询问用户
  • -r递归处理,将指定目录下的文件与子目录一并处理。
cp src dest   // 把src拷贝到dest,只能移动txt文件,还不能移动文件夹

在这里插入图片描述

cp -r dir3 dir2    // -r有递归的意思,把文件夹dir3拷贝一份到文件夹dir2里面去

在这里插入图片描述

10 mv指令

mv命令是move的缩写,可以用来移动文件或者将文件改名(move (rename) files),是Linux系统下常用的命令,经常用来备份文件或者目录。

语法: mv [选项] 源文件或目录 目标文件或目录
功能:大白话就是剪切+重命名

  1. 视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。
  2. 当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。
  3. 当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中。
    常用选项
  • -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
  • -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖

在这里插入图片描述
补充:
在这里插入图片描述
alias hyq1='ls -l -a'是重命名操作。也是临时的,Xshell关机后,重命名失效。
在这里插入图片描述

11 cat指令

语法:cat [选项][文件]
功能: 查看目标文件的内容
常用选项

  • -b 对非空输出行编号
  • -n 对输出的所有行编号
  • -s 不输出多行空行

在这里插入图片描述
在这里插入图片描述
>:是输出重定向的符号

它的特点是:先清空内容,再重新写入。(覆盖写入)

我想让a.txt文件的内容不断增加,不要覆盖写入,怎么办?
答:引入>>,追加重定向符号。
在这里插入图片描述
在这里插入图片描述
cat后面什么都不接,默认从键盘获取数据,并且打印出来
在这里插入图片描述
cat < a.txt 从a.txt文件读取数据并且打印。(输出重定向)
在这里插入图片描述
在这里插入图片描述
现在创建一个文本文件,不一定要touch指令。> d.txt也可以创建文本文件
在这里插入图片描述
正常打印a.txt文件
在这里插入图片描述
cat -n a.txt指令,带个编号。(空行也带编号)
在这里插入图片描述
cat -b a.txt指令,空行不带编号
在这里插入图片描述
cat -s a.txt指令,不输多行空行(多行空行,合并成一行)
在这里插入图片描述

往a.txt文件里面写入10000行代码,内容是:数字 hello hyq,然后查看a.txt的内容。

// Xshell脚本,我也看不懂,先用着
cnt=1; while [ $cnt -le 10000 ]; do echo "hello hyq $cnt"; let cnt++; done > a.txt

在这里插入图片描述
这样查看文件内容很麻烦,所以cat不适合查看大文本。

12 more指令

语法: more [选项]
功能:more命令,功能类似 cat
常⽤选项

  • -n 指定输出⾏数
  • q 退出more

在这里插入图片描述

/1500   // 也可以直接跳转到对应的行数

在这里插入图片描述

在这里插入图片描述
more指令用的很少,只需要了解一下就行。

13 less指令

  • less ⼯具也是对⽂件或其它输出进⾏分⻚显⽰的⼯具,应该说是linux正统查看⽂件内容的⼯具,功能极其强⼤
  • less 的⽤法⽐起 more 更加的有弹性,在 more 的时候,我们并没有办法向前⾯翻, 只能往后⾯看
  • 但若使⽤了 less 时,就可以使⽤ [pageup] [pagedown] 等按键的功能来往前往后翻看⽂件,更容易⽤来查看⼀个⽂件的内容
  • 除此之外,在 less ⾥头可以拥有更多的搜索功能,不⽌可以向下搜,也可以向上搜

语法: less [参数] ⽂件
功能:less与more类似,但使⽤less可以随意浏览⽂件,⽽more仅能向前移动,却不能向后移动,⽽且less在查看之前不会加载整个⽂件。
选项

  • -i 忽略搜索时的⼤⼩写
  • -N 显⽰每⾏的⾏号
  • /字符串:向下搜索“字符串”的功能
  • ?字符串:向上搜索“字符串”的功能
  • n:重复前⼀个搜索(与 / 或 ? 有关)
  • N:反向重复前⼀个搜索(与 / 或 ? 有关)
  • q:quit

功能比more更强大(感觉就是多了一个上翻的功能)。

14 head指令

语法:head [参数]… [⽂件]…
功能:head ⽤来显⽰档案的开头⾄标准输出中,默认head命令打印其相应⽂件的开头10⾏。
选项

-n<⾏数> 显⽰的⾏数

在这里插入图片描述
在这里插入图片描述

15 tail指令

语法: tail 必要参数 [⽂件]
功能:⽤于显⽰指定⽂件末尾内容,不指定⽂件时,作为输⼊信息进⾏处理。常⽤查看⽇志⽂件。
选项

  • -f 循环读取
  • -n<⾏数> 显⽰⾏数

在这里插入图片描述
在这里插入图片描述

例子:要想查看1000~1015行的数据,怎么截取?

head -1015 a.txt > temp.txt  // 先截取前1015行数据,输送到临时文本
tail -16 temp.txt   // 在截取后16行数据,即1000~1015行数据

在这里插入图片描述
上述方法的一个缺点是:会创建一个临时文件,占用磁盘内存。

head -1015 a.txt | tail -16    // 也可以拿到1000~1015行数据

在这里插入图片描述

|是管道的符号,管道也支持流水线
在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词