Linux实操篇-文件目录类>/>>/echo/head/tail/ln/history

传送门

SpringMVC的源码解析(精品)
Spring6的源码解析(精品)
SpringBoot3框架(精品)
MyBatis框架(精品)
MyBatis-Plus
SpringDataJPA
SpringCloudNetflix
SpringCloudAlibaba(精品)
Shiro
SpringSecurity
java的LOG日志框架
Activiti(敬请期待)
JDK8新特性
JDK9新特性
JDK10新特性
JDK11新特性
JDK12新特性
JDK13新特性
JDK14新特性
JDK15新特性
JDK16新特性
JDK17新特性
JDK18新特性
JDK19新特性
JDK20新特性
JDK21新特性
其他技术文章传送门入口

前言

不懂点Linux,都不好意思和别人说自己是开发,所以一些基础的必须掌握,同样的也是面试高频。

以下文章不定时更新…
Linux基础篇
Linux实操篇
Linux定制篇

一、>、 >>概念

在这里插入图片描述

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

二、>、 >>实战

在 Linux 和 Unix 系统的命令行中,>>> 都是用于输出重定向的符号,但它们的行为略有不同:

1. >(输出重定向)

  • 功能:将命令的标准输出重定向到指定文件。如果文件已经存在,>覆盖 文件内容。

  • 语法

    command > filename
    
  • 示例

    echo "Hello, World!" > output.txt
    

    这会将字符串 "Hello, World!" 写入到 output.txt 文件。如果 output.txt 文件已经存在,它的内容将会被新的输出覆盖。

2. >>(追加输出)

  • 功能:将命令的标准输出 追加 到指定文件的末尾。如果文件不存在,>> 会创建该文件。

  • 语法

    command >> filename
    
  • 示例

    echo "Hello, again!" >> output.txt
    

    这会将 "Hello, again!" 追加到 output.txt 文件的末尾,而不会覆盖原来的内容。

区别总结:

  • >:覆盖文件中的内容。
  • >>:追加内容到文件末尾。

这两个符号非常有用,尤其在处理日志文件或需要保存多次输出时,可以根据需求选择覆盖或追加。

三、echo、head、tail概念

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

四、echo、head、tail实战

echoheadtail 是 Linux 和 Unix 系统中常用的命令,分别用于输出字符串、查看文件的开头和结尾部分。以下是它们的详细说明:

1. echo

echo 命令用于在终端中显示(输出)文本字符串或变量的值。

用法
echo [options] [string...]
常用选项
  • -n:不输出换行符,即输出后不换行。
  • -e:启用转义字符解析(比如 \n 表示换行,\t 表示制表符等)。
  • -E:禁用转义字符解析(默认行为)。
示例
$ echo "Hello, World!"
Hello, World!

在终端输出 "Hello, World!"

$ echo -n "Hello, World!"
Hello, World!  # 不会换行
$ echo -e "Hello\nWorld"
Hello
World

启用转义字符,输出字符串并换行。

2. head

head 命令用于查看文件的 开头部分,默认情况下显示文件的前 10 行。

用法
head [options] [file...]
常用选项
  • -n <num>:指定输出的行数,例如 -n 5 输出前 5 行。
  • -c <num>:指定输出的字节数(而不是行数)。
  • -q:静默模式,不输出文件头(用于多个文件时)。
示例
$ head filename.txt

显示 filename.txt 文件的前 10 行。

$ head -n 5 filename.txt

显示 filename.txt 文件的前 5 行。

$ head -c 20 filename.txt

显示 filename.txt 文件的前 20 个字节。

3. tail

tail 命令用于查看文件的 结尾部分,默认情况下显示文件的最后 10 行。

用法
tail [options] [file...]
常用选项
  • -n <num>:指定输出的行数,例如 -n 5 输出最后 5 行。
  • -c <num>:指定输出的字节数(而不是行数)。
  • -f:持续跟踪文件内容的变化(用于查看日志文件的实时更新)。
示例
$ tail filename.txt

显示 filename.txt 文件的最后 10 行。

$ tail -n 5 filename.txt

显示 filename.txt 文件的最后 5 行。

$ tail -f filename.txt

实时跟踪并显示 filename.txt 文件的新增内容(用于日志文件等)。

$ tail -c 20 filename.txt

显示 filename.txt 文件的最后 20 个字节。


总结:

  • echo:输出文本或变量的值,常用于打印信息到终端。
  • head:查看文件的开头部分,默认显示前 10 行。
  • tail:查看文件的结尾部分,默认显示最后 10 行,-f 选项可用于实时查看文件更新。

这些命令在日常文件操作和数据处理中非常常用,尤其在脚本和日志查看过程中,能够帮助用户快速获取文件的开头或结尾信息。

五、ln、history概念

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
执行了前面编号为 178的指令 !178 秒啊

六、ln、history实战

在 Linux 和 Unix 系统中,ln(用于创建链接)和 history(用于查看命令历史)是两个常用的命令。以下是它们的详细介绍和用法:

1. ln 命令

ln 命令用于创建硬链接或符号链接(软链接)。链接是文件系统中一个非常重要的概念,它允许你通过多个路径引用同一个文件。

创建硬链接

硬链接是指一个文件的多个目录条目(即文件名),它们都指向相同的磁盘数据块。硬链接有相同的 inode 号,但它们没有区分原文件和链接文件,删除任何一个链接,数据仍然存在,直到所有链接都被删除。

用法

ln [original_file] [link_name]
  • original_file:原始文件。
  • link_name:硬链接的名称。

示例

$ ln file.txt link.txt

这将创建一个名为 link.txt 的硬链接,指向 file.txt。如果删除 file.txtlink.txt 仍然有效。

创建符号链接(软链接)

符号链接(软链接)类似于 Windows 系统中的快捷方式,它是一个指向目标文件的路径引用。符号链接有自己的 inode 和文件名,但它指向的是目标文件的路径。如果目标文件被删除,符号链接会失效(变成“断链”)。

用法

ln -s [original_file] [link_name]
  • -s 选项表示创建符号链接。

示例

$ ln -s /path/to/file.txt link.txt

这将创建一个符号链接 link.txt,指向 /path/to/file.txt 文件。删除 file.txt 会导致 link.txt 失效。

总结:
  • 硬链接:指向相同的 inode,删除原文件后,数据依然存在,链接有效。
  • 符号链接:创建一个指向目标文件路径的快捷方式,目标文件被删除后,链接会失效。

2. history 命令

history 命令用于显示当前用户的命令历史。它可以帮助用户查看之前输入的命令,便于重复使用或查找之前的命令。

用法
history [n]
  • n:可选参数,表示显示最近执行的 n 条命令。默认情况下,history 会显示所有命令历史。
常用选项
  • -c:清空历史记录。
  • -d offset:删除指定的历史记录条目。
  • -a:将当前会话的历史命令追加到历史文件中。
  • -r:从历史文件中读取命令并将它们加载到当前会话。
示例
$ history

显示所有的命令历史。

$ history 10

显示最近的 10 条命令。

$ history -c

清空历史记录。

$ history -d 15

删除历史记录中第 15 条命令。

在命令历史中使用命令
  • 重复上一个命令:按上下箭头键,或者输入 !!

    $ !!
    

    执行上一次的命令。

  • 执行某个特定命令:使用 !n,其中 n 是历史记录的编号。

    $ !100
    

    执行历史记录中的第 100 条命令。

  • 搜索历史命令:使用 Ctrl + r,然后开始输入命令的一部分,系统会显示匹配的历史命令。

历史记录文件
  • 默认情况下,历史记录会保存在用户的家目录下的 .bash_history 文件中(对于 Bash shell)。其他 shell 可能会使用不同的文件(例如 Zsh 使用 .zsh_history)。

总结:

  • ln:用于创建硬链接和符号链接,硬链接指向相同的 inode,符号链接是一个指向文件路径的快捷方式。
  • history:显示和操作命令历史,帮助用户查看、重复和删除先前执行的命令。

这些命令是日常 Linux 使用中的基础工具,有助于管理文件链接和提高命令行操作的效率。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蓝影铁哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值