【看表情包学Linux】man 手册 | 复制文件或目录 | 移动文件和重命名操作 | 查看目标文件内容(二)

简介: 本篇将继续讲解 Linux 基本命令行操作,对 Linux 手册、复制文件或目录、移动文件与重命名操作和查看目标文件内容进行讲解。我会手把手去演示操作每一个指令的用法以及常用选项,这些命令不需要可以的去记它,记不得就去翻一翻,用多了自然就会记住滴

Ⅲ. 移动文件与重命名操作


0x00 引入:剪贴功能

如果我们想把一个文件移动的到指定的目录下,在 Windows 里我们都是直接拖动的。


还可以右键文件,使用 "剪贴" 功能然后粘贴到你想要放置它的目录下,


点击粘贴后,原来的位置就没有了,文件就移动过去了。

6f90772f256674efea0357d5e4b27875_f8d8a0cddbf4465ea442b33d1adff490.png



刚才我们说了复制,除了复制外,当然还有剪贴功能。


同样的,在 Linux 下我们用 mv 指令去移动我们的文件:

8d1f93af051ac00b7f44134815a5ece2_852aab343fe5443e835a69067098b5e1.png


 下面我们来正式介绍一下。


0x01 mv 命令

mv [选项] 源文件或目录 目标文件或目录

🔨  功能:① 剪贴文件或目录(可以剪贴普通文件,也可以整体剪贴目录)


                 ② 重命名(类似于Windows中的重命名)


📃  说明:


视 mv 命令中第二个参数类型的不同(是目标文件还是目标目录),mv 命令将文件重命名或将其移至一个新的 目录中。

当第二个参数类型是文件时,mv 命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。

当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv 命令将各参数指定的源文件均移至 目标目录中。

📜  常用选项:


-f  force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖。

-i  若目标文件 (destination) 已经存在时,就会询问是否覆盖。

0x02 重命名目录文件

💭 mv 命令除了剪贴功能,还有一个重命名的功能。

$ mv [文件] [新名字]       # 重命名

00abd49dc8647e6e98ef97eb3787e45c_d6b2eed6b6ba4cd18a9ce2b6703c004f.png


0x03 对于删除文件的补充

 Linux 中,一定要注意不要轻易地删除文件,除非你特别的确认。


因为 Linux 没有真正的回收站,不像 Windows 你删了可以去回收站找。


Linux 中你删了就真的删了,但是如果你想 Linux 里也有像 Windows 那样的回收站,


我们通过 shell 脚本把 rm 改造成 mv,这个需要用 vim 去改。


💬 感兴趣可以试试:(将 rm 改造成 mv)


vim ~/.bashrc #修改这个文件
mkdir -p ~/.trash
alias rm=trash
alias ur=undelfile
undelfile() {
    mv -i ~/.trash/\$@ ./
}
trash() {
    mv $@ ~/.trash/
}

定义两个 Linux 命令,把 rm 命令用 mv 命令重改,做一个回收站。


Ⅳ. 查看目标文件内容


0x00 cat 指令

 我们前面已经用过这个命令了,现在我们来正式讲解一下这个命令。


cat [选项][文件]

🔨  功能:打印文件内容(查看目标文件的内容)


📜  常用选项:


-b 对非空输出行编号

-n 对输出的所有行编号

-s 不输出多行空行

ab9ed9ffb8c8d2cbcf959591c876d04e_68829533d05443fd9de079e2075fd3b2.png


📜 cat -n 选项:打印的内容带上行号


$ cat -n     # 打印,但是带行号

90647297a2e521afb4b3df1f295cfbf4_a24c7cb161ac4d86afd46f5c44e549a1.png


❓ 思考:cat 把文件内容打印出来,有什么用?


cat 有点像C语言中把文件内容全部读出来然后打印到屏幕上,


它比较适合用来查看短的文本或者代码,如果我们只是单纯的想把文件打开看看,


我们就可以 cat 一下这个文件,这就像 Winodws 里双击打开记事本一样。

3443861e9e4d0a37d79582d532d5a017_aa7790a0b5ec47c3a407864b9dae0479.png



0x01 tac 指令

这是一个比较有意思的指令!


cat 倒过来就是 tac,它的功能自然不言而喻,倒着打印文件内容:


$ tac [文件]

d05d0febe9f5899a14cd26423278fbc7_d3d5b79f6e694077a5ad7056763b1117.png

📌 注意事项:tac 不能像 cat 一样 cat -n 带行号打印!

fbdeccacd202e0370c79e55bf57a1fe8_2bc4145a52cc41f48165bd5de8d27b4b.png


0x02 cat 不适合打印长文本

cat 命令适合短文本的打印,那长文本我们可以用什么打印呢?


💭 为了有实际场景方便讲解,我们先伪造出一个十万行的文本:

d130a2dcd615122598f0d4bb29fd941a_47eae84c4d3f4188996f6f05db2220fc.png

(建议直接复制粘贴到XShell里)


cnt=1; while [ $cnt -le 100000 ]; do echo "Hello! $cnt"; let cnt++; done

d6c1208b8ac392e2bda22d1d81a41995_4b43eccf83834eb08ade726c77027cbb.png


打印了十万行 Hello,如果我们想把它存起来,我们可以在末尾加一个 > [文件名]


(直接把下面的命令复制粘贴 shift+insert 进去就行,至于这里的 > 我们下一篇会详细讲解)


$ cnt=1; while [ $cnt -le 100000 ]; do echo "Hello! $cnt"; let cnt++; done > large.txt

482875b1bfc4fd947ad0ca2fa8b95674_ce2d2f7cdb0f4d49a1b3cb1b2a563f6a.png

(我们用 vim 打开看看)


搞定,现在我们就形成了一个十万行的文本了。


💭 像这种大的文件,我们用 cat 显示看看:

92b17f5b764d9c56d606b22015c1ab66_f2061084a0b9424482ff34af82d39491.png


🔺 结论:cat 不适合查看大文本,因为它会刷屏,最后让我们查到的永远都是最后几段。


我们刚才创建的 latge.txt 足足有十万行,把 cat 都吓傻了。


💭 对于这种长文本,我们如果想查看可以使用 more 指令:


$ more large.txt

c02a9be6909f223b83d8e8e4a085f6c1_83eceaed3f6646c999932b40e32cc68d.png


占满一个屏幕后就不往下显示了,如果想继续往下显示,按回车:

e7dcd0834a33043bf885549f6ff4bb4c_97079d3c2a6644948a1850f73f974577.png

当然,more 还有许多选项,我们下面来正式介绍一下。


0x03 more 指令

more [选项][文件]

🔨  功能:类似于cat,但是更适合查看长文本


📜  常用选项:


-n 对输出的所有行编号

按 Q 退出查看

💭 more -n :比如我们想直接查看第 10000 行的内容


$ more 10000 large.txt     # 查看第10000行

fb4924be0516c7703d5400777fe0656f_8038d92cae044bf0a2658c79d8075ada.png


0x04 less 指令

less 更是重量级!


more 仅能向前移动,却不能向后移动,但 less 支持前后翻,我们更推荐使用 less。

less [参数] 文件

🔨  功能:less 与 more 类似,但 使用 less 可以随意浏览文件。


📃  说明:


less 工具也是对文件或其它输出进行分页显示的工具,应该说是 linux 正统查看文件内容的工具,功能极 其强大。

less 的用法比起 more 更加的有弹性。在 more 的时候,我们并没有办法向前面翻, 只能往后面看

但若使用了 less 时,就可以使用 [pageup][pagedown] 等按键的功能来往前往后翻看文件,更容易用 来查看一个文件的内容!

除此之外,在 less 里头可以拥有更多的搜索功能,不止可以向下搜,也可以向上搜。

📜  常用选项:


-i    忽略搜索时的大小写

-N  显示每行的行号 /字符串:向下搜索“字符串”的功能 ?字符串:向上搜索“字符串”的功能

n    重复前一个搜索(与 / 或 ? 有关)

N   反向重复前一个搜索(与 / 或 ? 有关)

按 Q 推出查看

38e2f1529944d57c06388ba1c9f7de73_aa4c208bf3674ce99cca57348a70ceea.png


less 可以帮助我们进行查看文本,可以用它来进行日志查看!

cde6569f771b574f5468fe5ec913de3e_447e99c5cc0d444c85c3b276c625248e.png


0x05 head & tail 指令

head [参数]... [文件]...
tail [参数]... [文件]...

📃 指令说明:


head 默认打印前10行内容,tail 默认打印后10行内容。如果想指定行数可以加 -n 选项。

head 与 tail 就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块。

head 用来显示档案的开头至标准输出中,而 tail 自然就是看档案的结尾。

📜  常用选项:


-n 显示的行数

💭 用法演示:我们拿之前创建的有十万行的 large.txt 去测试效果:

09027a8e3119bd1cd3ec28d59538e949_8bee7efa65e146758536b7f2a5716ff6.png



0x06 管道 |

❓ 思考:如果我想查看 large.txt 文本的  行的内容呢?


① 方法1:临时文件法

ffb37ad52f59ad0771eac7fab689832e_851577fb76e34ae2b4a52c7ee8d5c940.png


② 方法2:走管道


$ head -30020 large.txt | tail -20

81370b240491916b4d82bf3d2bd74eb3_5db891ff9af84a43b446b2264b5f6a3b.png


是不是非常的爽?我们下面就来说说这个 "管道 | " 究竟是什么。


现实生活中的管道,运输石油、天然气的管道,是运送资源的枢纽。


(高中地理:管道运输是五大运输方式之一)


而在计算机世界中,资源是 "数据",可以理解为是计算机互联网世界的石油。


而这个符号 "  |  "  就像是一个管道一样,所以我们称之为管道,我们来看看它的作用:


📚 管道的作用:级联多个命令,来完成流水线式的数据处理工作。


💭 用法演示:我们提取一些 large.txt 文件中的数据

3e5a214bd98d7a8782bcd07f681bde54_c28f1ba8a17f452683b83b062e2031a9.png07c03ae6d77b4b153f6d1ec710be7c14_7a80245f0b5f4021a033b3789a9efdeb.png

相关文章
|
1月前
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
78 3
|
6天前
|
Linux Shell 网络安全
Kali Linux系统Metasploit框架利用 HTA 文件进行渗透测试实验
本指南介绍如何利用 HTA 文件和 Metasploit 框架进行渗透测试。通过创建反向 shell、生成 HTA 文件、设置 HTTP 服务器和发送文件,最终实现对目标系统的控制。适用于教育目的,需合法授权。
33 9
Kali Linux系统Metasploit框架利用 HTA 文件进行渗透测试实验
|
27天前
|
运维 监控 网络协议
运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面
本文介绍了运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面,旨在帮助读者提高工作效率。从基本的文件查看与编辑,到高级的网络配置与安全管理,这些命令是运维工作中的必备工具。
110 3
|
1月前
|
Linux Python
Linux 中某个目录中的文件数如何查看?这篇教程分分钟教会你!
在 Linux 系统中,了解目录下文件数量是常见的需求。本文介绍了四种方法:使用 `ls` 和 `wc` 组合、`find` 命令、`tree` 命令以及编程实现(如 Python)。每种方法都附有详细说明和示例,适合不同水平的用户学习和使用。掌握这些技巧,可以有效提升系统管理和日常使用的效率。
340 6
|
28天前
|
分布式计算 Java Hadoop
linux中HADOOP_HOME和JAVA_HOME删除后依然指向旧目录
通过以上步骤,可以有效地解决 `HADOOP_HOME`和 `JAVA_HOME`删除后依然指向旧目录的问题。确保在所有相关的配置文件中正确设置和删除环境变量,并刷新当前会话,使更改生效。通过这些措施,能够确保系统环境变量的正确性和一致性。
25 1
|
1月前
|
Linux 开发工具 Perl
在Linux中,有一个文件,如何删除包含“www“字样的字符?
在Linux中,如果你想删除一个文件中包含特定字样(如“www”)的所有字符或行,你可以使用多种文本处理工具来实现。以下是一些常见的方法:
41 5
|
1月前
|
安全 Linux 数据安全/隐私保护
在 Linux 系统中,查找文件所有者是系统管理和安全审计的重要技能。
在 Linux 系统中,查找文件所有者是系统管理和安全审计的重要技能。本文介绍了使用 `ls -l` 和 `stat` 命令查找文件所有者的基本方法,以及通过文件路径、通配符和结合其他命令的高级技巧。还提供了实际案例分析和注意事项,帮助读者更好地掌握这一操作。
48 6
|
1月前
|
Linux 网络安全 数据安全/隐私保护
Linux 超级强大的十六进制 dump 工具:XXD 命令,我教你应该如何使用!
在 Linux 系统中,xxd 命令是一个强大的十六进制 dump 工具,可以将文件或数据以十六进制和 ASCII 字符形式显示,帮助用户深入了解和分析数据。本文详细介绍了 xxd 命令的基本用法、高级功能及实际应用案例,包括查看文件内容、指定输出格式、写入文件、数据比较、数据提取、数据转换和数据加密解密等。通过掌握这些技巧,用户可以更高效地处理各种数据问题。
91 8
|
1月前
|
监控 Linux
如何检查 Linux 内存使用量是否耗尽?这 5 个命令堪称绝了!
本文介绍了在Linux系统中检查内存使用情况的5个常用命令:`free`、`top`、`vmstat`、`pidstat` 和 `/proc/meminfo` 文件,帮助用户准确监控内存状态,确保系统稳定运行。
251 6
|
1月前
|
监控 安全 Linux
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景,包括 ping(测试连通性)、traceroute(跟踪路由路径)、netstat(显示网络连接信息)、nmap(网络扫描)、ifconfig 和 ip(网络接口配置)。掌握这些命令有助于高效诊断和解决网络问题,保障网络稳定运行。
71 2