当前位置: 首页 > news >正文

【Linux基础】Linux 必学基础指令:echo/cat/ 重定向 / 查找命令全解析



🎬 博主名称:键盘敲碎了雾霭

🔥 个人专栏: 《C语言》《数据结构》 《C++》《Matlab》 《Python》 《Linux》
⛺️指尖敲代码,雾霭皆可破

文章目录

  • 一、指令
    • 1.1 回显字符串
    • 1.2 重定向
    • 1.3 cat
    • 1.4 一切皆文件的思想
    • 1.5 文件的类型
    • 1.6 mv
    • 1.7 tac
    • 1.8 以日志为例
  • 二、更多指令
    • 2.1 date
    • 2.2 查找命令对比
    • 2.3 grep
  • 文章结语

一、指令

1.1 回显字符串

echo:把后续内容当作字符串打印出来
cat:显示指定文件里面的内容

1.2 重定向

在Linux当中,一切皆文件(文件包括自己创建的文件、键盘、显示器等)
程序在启动时默认打开三个文件(stdinstdoutstderr

  • 输出重定向
    比如默认echo默认写入到了显示器文件里,而>可以写到指定的普通文件


如果>后面后续文件不存在,新建之,存在则先清空,再写入
所以后面想新建普通文件,或者清空文件,都可以用>

  • 追加重定向
    >>

1.3 cat

默认从键盘文件读内容,然后反向的写到显示器文件里

也可以从指定的文件里面读

还有-n选项
对输出的所有行编号

1.4 一切皆文件的思想

终端的本质在linux系统里就是一个文件/devV/pts/XX,当你执行命令时,默认会打开这个终端文件,由于重定向可以向文件写入,那也可以向设备文件写入,当你登入设备时,系统默认会新建一个叫0/1/2的设备文件,指令只需要向终端对应的设备文件去写,把执行结果打印到显示器上

echo 'hello Linux' > /dev/pts/2:代表向第二台机器进行写入,指令也同样可以写到不同的文件里ls > /dev/pts/2

  • 也可以自己写C/C++程序对文件操作
    > redir.c
    nano redir.c输入代码

    gcc redir.c -o redir
    ./redir
    在另一个机器就会显示

1.5 文件的类型

Linux上不看后缀,看输入ll的第一个字母

  • 普遍文件
    文本,可执行,库,图片,视频(系统不关心后缀(当成文件名的一部分),不代表工具(gcc)不关心!)
  • 字符文件
  • 块设备文件

    *链接文件
    可以通过ls /usr/bin -l看到
  • 管道文件

1.6 mv

  • 剪切

  • 重命名
    与前面剪切如何区分


如果最后一个不是目录或不存在,就是命名(对文件也是一样,如果存在会把一整个递归剪切过去

1.7 tac

查看日志cat /var/log/syslog,如果想要看第一个操作的人是谁,可以反向打印

1.8 以日志为例

less:与more相比更推荐less,可以上下翻,可以查找

  • less选项:
  • -i忽略搜索时的大小写
  • -N显示每行的行号
  • /字符串:向下搜索“字符串”的功能
  • ?字符串:向上搜索“字符串”的功能
  • n:重复前一个搜索(与/或?有关)
  • N:反向重复前一个搜索(与/或?有关)
  • q:quit
  • head与tail

head 用来显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行(tail规则也是一样)。
head /var/log/syslog
还可以显示几行
head -2 /var/log/syslog
head -3 /var/log/syslog
同理tail一样
如果想从一个文件拿中间文件(比如拿500-510行的内容)
方法一

这种需要建立临时文件
head -510 log.txt >tmp.txt
tail -10 tmp.txt
方法二
head -510 log.txt | tail -10,|称为管道,可以把它当作文件,把前一个命令结果往管道里面写,后一个命令往管道里面读,如果还想逆序打印,head -510 log.txt | tail -10 | tac,如果先打印出来,cat log.txt | head -510 | tail -10 | tac,想统计多少行,则wc -l

二、更多指令

2.1 date

在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中常用的标记列表如下(有大小写之分)

%H:小时
%M:分钟
%S:秒
%X:相当于%H:%M:%S
%d:日
%m:月份
%Y:完整年份
%F:相当于%Y-%m-%d

时间戳

时间->时间戳:date+%s

时间戳->时间:date-d@1508749502

时间戳可以转化为普通时间,可以帮用户进行区间查找

Unix时间戳(英文为Unixepoch,Unix time, POSIXtime或 Unix timestamp)是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒

2.2 查找命令对比

  • which:which查找命令,指定的目录下(/usr/bin),去查找指定的命令
  • whereis man:在系统指定的目录下去查
  • find:可用于查找文件(根据文件名)

用法:find pathname -options,用于在文件树中查找文件,并作出相应的处理(可能访问磁盘),选项:-name

2.3 grep

行文本过滤工具,会把保含关键字的行保留下来进行筛选

  • 场景一:日志
    cat var/log/syslog | grep "system"
    grep "systemd" /var/log/syslog | tail -10
  • 场景二:进程
    新建文件:nano myprogress.c
    打开文件nano myprogress.c输入以下代码
#include<stdio.h>#include<unistd.h>intmain(){while(1){sleep(1);}return0;}

编译gcc myprogress.c -o myprogress
放后台执行./myprogress &
grep用来查找进程ps ajx | grep "myprogress"

  • 查找文本

    选项
    先用这段指令建立大文件(hello 1——hello 2)

cnt=0; while [ $cnt -le 100 ]; do echo "hello $cnt"; let cnt++; done > log.txt

  • -n:显示在原本文件的行号
  • -v:相反的,成功匹配的那一行去掉
  • -i:忽略大小写,都可以匹配

还可以混合使用
-vi:忽略大小写匹配到的全都不要

文章结语

感谢你读到这里~我是「键盘敲碎了雾霭」,愿这篇文字帮你敲开了技术里的小迷雾 💻

如果内容对你有一点点帮助,不妨给个暖心三连吧👇
👍点赞| ❤️收藏| ⭐关注
(听说三连的小伙伴,代码一次编译过,bug绕着走~)

你的支持,就是我继续敲碎技术雾霭的最大动力 🚀

🐶 小彩蛋:

/^ ^\ / 0 0 \ V\ Y /V / - \ / | V__) ||

摸一摸毛茸茸的小狗,赶走所有疲惫和bug~我们下篇见 ✨

http://www.gsyq.cn/news/1584686.html

相关文章:

  • 阿里通义千问,8元叠加券,真的可以领到,真没有套路,真不用拉人头,实打实的,就是这么简单!
  • 信创业务技术全景解析:从项目实施到国密安全,一文读懂信创落地核心技术体系(PPT)
  • 《个人头像上传》二、Preferences用户首选项使用指南
  • TVA在机电产品视觉检测的创新应用(11)
  • 华为OD机试真题-预测新能源发电量(C/C++/Py/Java/Js/Go)
  • MacBook的实用小技巧
  • 高股息投资笔记-股票的人性2
  • 2 建立连接
  • LIVE项目解析:基于图像先验与时间一致性的AI视频编辑技术
  • 研发与业务协同工具怎么选?2026 主流团队云存储架构深度横评与避坑指南
  • [崛起]大国纪录片系列合集
  • 极小超曲面与Yau猜想:对称流形中的无限存在性定理
  • 2026新能源下乡155款车型全拆解:从625亿国补到铁锂涨价,全产业链机会地图
  • 百考通AI,论文降重与去AI痕迹,更安心,让数据为你说话
  • 东南亚多人手游区域 CDN 调优实战:新加坡、曼谷本地边缘节点降低联机延迟、过滤 UDP 异常流量
  • 视觉语言模型中的熵梯度证据定位技术解析
  • 基于通路交互图与GNN的多组学癌症转移预测模型构建指南
  • LLM提示词工程2.0:从Prompt到Prompt DSL的范式演进2026
  • RAP 里的 managed 与 unmanaged,别把它们理解成自动档和手动档那么简单
  • Linux环境下部署Zookeeper3.9.5(最新版)集群部署
  • 基于MobileNetV3的轻量化人脸年龄估计模型构建与移动端部署实战
  • 【学习心得 ● 运维】nginx 常用命令(烦人的Nginx)
  • DOSE:基于现成模型的多模态LLM训练数据筛选实战指南
  • DNA动力学可视化:深度学习与生物物理信息融合的ViDa框架解析
  • 大语言模型参数恢复的数学框架与实现
  • 北京离婚财产分割律师联系方式推荐 资深律师曹子燕执业服务指南
  • temu商家端加密分析
  • CQR与马氏距离:为VLA机器人构建不确定性感知的安全决策框架
  • 2026年LLM API智能路由:多模型网关的工程选型与实战
  • 基于深度强化学习的多目标SAR无人机智能路径规划实战解析