Linux下的基本指令/命令(二)

热键

Tab : 连点两次 对命令进补齐 或者 显式 以目前所需字母 开头的指令。 也可以进行路径补齐 或者 显示所写的文件所处路径上的所有文件。 如果什么也没写,直接按Tab会显示所有命令

Ctrl + C : 一旦出现失控的状态,或者任何无法操作的状态就可以直接 Ctrl+C 解决

15. mv 命令:

语法: mv src[目录/文件] dest[路径/文件]

(1) 剪切文件/目录

mv src 路径 -> 剪切

(2) 对文件/目录进行重命名

mv src 文件 -> 将src命名为 文件名

(3) 如果dest即是路径,又有文件: 那么是把src剪切到目录下,并命名为文件名

Eg :该命令是把 test 文件 剪切到 上级目录中,并且命名为 hello.c

16. echo 命令: 向 显示器文件 进行 写入。

对显示器文件进行写入

语法: echo 字符串

Eg

符号: > , 可用于输出重定向。

Eg: echo "hello world" 本来字符串是向 显示器文件中进行写入, 而用了符号">",使得字符串向 test文件中进行写入。 这种操作叫做输出重定向。 如果文件不存在,就新建文件test,并将字符串在test中进行写入。如果文件已经存在,每次写入都是从文件开头开始写,并对老的文件进行清空,然后再写入。

如果直接使用 >文件。那么是将空内容重定向写入到文件中。那么可以通过该操作对文件进行清空/创建一个空文件

Eg

(1) 创建一个空文件

(2) 对文件进行清空

符号:>>:最加重定向。 作用和符号>的作用是一样的。 但是符号>>输入重定向的文件是已有文件的话,会在文件后面进行写入,不会对之前内容进行覆盖。 此处每次换行的原因不是符号>>的原因,而是 echo 在显示器文件中写入的时候自带了换行,因此输出重定向后,在重定向的文件中进行写入时也是自带了换行的

符号<:输入重定向。 本应该从 键盘文件中读取数据, 符号< 使得可以从指定文件中读取数据。

Eg 如果只有 cat , 是从键盘文件中读取数据。 而此处进行了输入重定向,是cat从test文件中进行读取数据

17. more 命令: 打印文件内容。 more用来查看长文件,more是当打印文件占满一屏时,不再进行打印,当用户 点击空格时会向下再翻一行。但是more不能向上翻

语法: more 【选项】 文件

18. less 命令: 打印文件内容。 Less可以通过方向键进行上下翻,空格也可以进行向下翻

语法: less 【选项】 文件

对于打印文件的命令: cat , more , less 而言,推荐使用less,因为less可以查看大文件和小文件,且支持上下翻

19. head 命令,tail命令: head 命令和tail命令和它们的命名一样简单。 head命令是显示文件开头的内容,tail是文件结尾的内容

head 命令和tail命令语法:

head/tail 【选项】 文件

【选项】: -数字,对于head命令表示查看开头几行, [1, 数字]。 对于tail命令是查看 结尾前几行至结尾的内容。 [结尾-数字 , 结尾]

管道:符号"|" , "|" 认为 为管道。 此处 head -5020 log.txt 的结果放入管道,而这个管道里的内容作为 tail -21的源。 实质上 在Linux下一切皆文件,管道也是文件,此处是 head -5020 log.txt的结果写入 管道文件中, 而后面的 tail -21 是对管道文件进行操作

正因为有了管道,才可以流水线的对数据加工处理

20. 时间相关的命令: date命令

语法: date +[显式方式] //这个 "+" 是要显式写的。

date +[ 显式方式] 以时间戳的形式显式。 本质上是将时间戳写入到显示器文件中。

选项:

时间戳: 实际上这个秒数是 从 1970年1月1日午夜12:00 到现在的 时间累计的秒数,称这个时间为时间戳。 时间戳的特点: 线性递增,唯一性。

时间对Linux下的重要性: 1. 日志中需要包含时间。

21. cal 命令:

语法: cal [ 参数][月份][年份]

常用参数:

-3 显示系统前一个月,当前月,下一个月的月历

-j 显示在当年中的第几天(一年日期按天算,从1月1号算起,默认显示当前月在一年中的天数)

-y 显示当前年份的日历

Eg

cal -j 2024 是打印2024的日历

22. find 命令: find是对树状结构的目录结构,进行广度和深度的搜索 目的文件。

语法: find 路径 【选项】 文件名

选项为 -name 时 ,按照文件名查找

如果不写路径和选项 ,是搜索文件,然后查看是否存在该文件。

-o 是 or的意思,可以同时查找多个文件

Eg 此处有两个hello.c ,因此对hello.c搜索 会打印两个地址

23. which 命令: 查找指令所在位置

语法: which 指令名

本质上指令就是一个可执行程序,就是文件。 下图可看到 指令文件是在bin目录下的

Eg

指令就是一个可执行程序,就是文件!!!

指令,可执行程序,命令 是一回事。都是文件

实际上输入指令的时候,就是执行的/bin目录下的可执行程序. 例如cp ,实际上是/bin/cp。而输入cp也可以用的原因是因为系统把/bin隐藏了,默认就是在/bin目录下搜索 名字为cp的文件。 这也是为什么要执行当前目录下的可执行程序要写为 ./程序名 ,这是因为不加 ./ 的情况下,是默认在/bin目录下查找

安装的本质就是拷贝,就是把目的软件 安装拷贝到目录下。

24. alias 命令: 对指定命令进行取别名。 alias起别名是一个内存级的别名

语法: alias 别名=指定命令

后续可以通过别名来调用指定命令

Eg:

而ll命令是什么呢?

ll 是对 ls -l 起的别名

所以此处zhangsan本质上是对 ls -l 命令起别名

25. grep 命令: 把文件中 包含 目的字符串的 行的内容进行打印。 默认字符串的内容是区分大小写的

语法: grep [ 选项] 要搜索的字符串 文件

-i 选项: 忽略 目前字符串的大小写

-v 选项: 把 除了目的字符串的内容 进行打印,匹配上的行不进行打印

-n 选项: 打印时 标记行号。 这个行号打印的是 在原始文件中的行号

26. zip/unzip 命令:

zip 语法: zip [ 选项] 压缩包名字 要压缩的文件。

对目录文件进行打包时,要用 -r 选项,这样才能把目录及其目录的内容进行压缩。 如果没有-r选项,只是对目录本身进行打包,而没有其中内容,只是一个空目录

unzip 语法: unzip 压缩包文件 [选项]

对压缩包文件进行解压。

指定解包的位置: -d 选项, -d 选项可以指定一个路径, 将压缩包解压到 -d 指定的路径中

为什么要打包和压缩: 打包压缩的本质就是 把 多个文件 压缩为 一个文件。 作用:(1)减少网络传输的数据量 (2) 避免出现 一个文件出现问题而导致 整个程序不能用的情况,只有这一个文件,只有下载成功和不成功的情况

27. tar 指令: 打包/解包,不打开,直接看内容

语法: tar [-cxtzjvf] 文件与目录...参数:

-c: 建立一个压缩文件的参数指令

-x: 解开一个压缩文件的参数指令

-t: 查看 tarfile里面的文件

-z: 是否同时具有gzip的属性? 也就是 是否需要用gzip压缩?

-j: 是否同时具有bzip2的属性? 也就是 是否需要用bzip2压缩?

-v: 压缩的过程中显示文件。 这个常用,但不建议用在背景执行过程

-f: 使用档名,请留意,在f之后要立即接档名。不要再加参数

-C: 解压到指定目录

压缩文件的后缀为 .tgz

压缩:

tar -czf 压缩包名字 要压缩的文件 //不显示压缩过程

tar -cvzf 压缩包名字 要压缩的文件 //显示压缩过程的文件

解压:

tar -xzf 压缩包名字 //不显示解压过程

tar -xvzf 压缩包名字 //显示解压过程

tar -xvzf 压缩包名字 -C 指定目录 //把压缩包解压到指定目录

28. bc 指令: 命令行计算器

Eg

29. uname 指令:用于获取电脑或者操作系统的相关信息。 Uname命令可以查看Linux主机所用的操作系统的版本,硬件的名称等基本信息

语法: uname [ 选项]

-r 选项: 显示内核信息。

-a 选项:详细显示

Eg: uname -a 中显示的 el7 是指操作系统是centos7。 UTC后面是芯片的体系结构的信息,这里芯片的体系结构是x86_64。

Uname -r 中可知: 内核版本是3.10 , 操作系统是el7 即centos7 , 体系结构是x86_64

体系结构:问体系结构是想要问计算机的芯片,即cpu。Eg: X86 , amd ,arm

X86 --- 指32位的

X86_64 --- 指64位的

快捷键:

Ctrl+D : 通常代表着:【键盘输入结束】的意思。另外,它也可以用来取代exit。 在用户使用时,Ctrl+D是退出用户。 在用户退出后,Ctrl+D是退出XShell

相关推荐
Annuo、19 分钟前
php中根据指定日期获取所在天,周,月,年的开始日期与结束日期
java·服务器·前端
FGGIT33 分钟前
使用Docker快速本地部署RSSHub结合内网穿透访问RSS订阅源
运维·docker·容器
x66ccff33 分钟前
【linux】轻松掌握文件管理:安装Ranger并设置Micro为默认编辑器
linux·运维·编辑器
荔枝要好学40 分钟前
node.js从入门到快速开发一个简易的web服务器
服务器·前端·node.js
2401_8260976243 分钟前
linux-vim的使用
linux·运维·vim
速盾cdn1 小时前
速盾:cdn一般多长时间清理下缓存?
服务器·网络·安全·web安全
疯狂学习GIS1 小时前
通过MobaXterm操作远程服务器电脑的方法
linux·学术工作效率
-纸短情长1 小时前
负载均衡--会话保持失败原因及解决方案(五)
运维·负载均衡
乱蜂朝王1 小时前
Ubuntu篇——Ubuntu20.04备份成ISO镜像文件并安装到其他电脑上(完整步骤)
linux·运维·ubuntu
第六五1 小时前
ubuntu命令行设置wifi和宽带连接
服务器·ubuntu