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

【Linux基础指令】第二期

本期博客的主题依旧是 "基础指令" ;

上一期的基础指令链接: 【Linux基础指令】第一期-CSDN博客 ,话不多说,正文开始:

一、Linux的指令

1.cp
  • 拷贝功能:
    • cp [stc] [dest]    # 将 src文件 拷贝到dest目录中
    • cp -r [stc] [dest]    # 将 src目录 拷贝到dest目录中
    • 可同时拷贝多个文件(包括目录)
2.mv  
  • 1)剪切功能:
    • mv  [stc] [dest]    # 将 src文件 移动到dest目录中
    • mv  -r [stc] [dest]    # 将 src目录 移动到dest目录中
    • 可同时移动多个文件(包括目录)
  • 2)重命名功能:
    • mv  [stc] [filename]    # 将 src文件 重命名为 filename
3.echo / printf
  • 功能:输出字符串
    • echo 'xxxx'        # 将后序内容作为字符串输出到终端上
    • printf '%s\n' "xxx"      # 格式化 打印到终端上
4.cat / tac
  • 功能:查看目标文件内容功能
    • cat filename # 将文件的内容正着打印到终端上
    • tac filename # 将文件内容倒着打印到终端上
    • 常用选项:(cat 与 tac 选项一样)
      • -b 对⾮空输出⾏编号
      • -n 对输出的所有⾏编号
      • -s 不输出多行空行
5.more
  • 功能:查看目标文件
    • more filename # 逐页显示文件内容。
    • 操作流程:
      • 空格:向下翻页
      • b:向上翻页
      • / 字符串:向下查找字符串
      • ?字符串:向上查找字符串
      • q:退出
6.less
  • 功能:查看目标文件功能(较more更强)
    • 命令格式:less [选项] filename 
    • 常用选项:
      • -N:在显示的每一行行首添加行号。
      • -s:将多个连续的空行合并为一行显示。
      • -m:当文件内容超过一屏时,在屏幕底部显示状态行,包括当前显示的百分比、行数等信息。
    • 操作流程:
      • 空格:向下翻页
      • b:向上翻页
      • 箭头键:使用(上、下、左、右)可以逐行或逐列滚动查看文件内容。
      • / 字符串:向下查找字符串
      • ?字符串:向上查找字符串
      • n:重复前⼀个搜索(与 / 或 ? 有关)
      • N:反向重复前⼀个搜索(与 / 或 ? 有关)
      • q:退出
7.head / tail
  • 功能:它们用于查看文件的开头和结尾部分的内容
    • 命令格式:head filename    # 默认打印开头10行;
    • 命令格式:tail filename    # 默认打印结尾10行。
    • 常用选项:
      • -n <指定行号> # 打印开头或结尾指定行。
      • tail -f # tail还支持 -f 选项循环读取。
8.date
  • 功能:用于显示或设置系统的日期和时间。
    • date:默认格式显示当前时间。
    • 通过占位符格式化显示当前时间:date +"XXX"
      • %Y:年
      • %m:月
      • %d:日
      • %H:时
      • %M:分
      • %S:秒
      • %s:时间戳
      • %F:相当于 %Y-%m-%d
      • %X:相当于 %H:%M:%S
  • 修改时间需要root权限,其操作可自行百度了解。
  • 时间戳:是从1970年1⽉1⽇(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒。
  • 时间->时间戳:date +%s。
  • 时间戳转时间:date -d@1508749502。
9.cal
  • 功能:⽤于查看⽇历等时间信息,如只有⼀个参数,则表⽰年份(1-9999),如有两个参数,则表⽰⽉份和年份,,三个参数,则表示日,月,年。
    • 命令格式:cal [options] [[[day] month] year]
    • 常⽤选项:
      • -3 显⽰系统前⼀个⽉,当前⽉,下⼀个⽉的⽉历
      • -j 显⽰在当年中的第⼏天
      • -y 显⽰当前年份的⽇历
10.grep
  • 功能:在文件中搜索字符串,将找到的行打印出来
    • 命令格式:grep [选项] "要搜索的字符串" filename
    • 常用选项:
      • -i:搜索时,忽略大小写
      • -n:打印行号
      • -v:反向选择,亦即显⽰出没有 '搜寻字符串' 内容的那⼀⾏。
11.find
  • 功能:用于在指定路径中根进行查找文件
    • 根据文件名进行查找:find [pathname] -name filename
12.uname
  • 功能:uname可显⽰linux主机所⽤的操作系统的版本、硬件的名称等基本信息。
    • 常用选项:
      • uname -r:内核版本号。
      • uname -a:详细输出所有信息。

二、Linux基础知识讲解

1.Linux下一切皆文件
        a.文件类型
  • '-' :普通文件(Linux下最常见的文件类型,包括可执行程序)
  • 'd':目录文件
  • 'c':字符(文件)设备(比如用的显示器,键盘)
  • 'b':块(文件)设备(比如硬盘)
  • 'l':链接文件
  • 's':套接字文件
  • 'p':管道文件
        b.所有的文件都需要先打开,再使用
  • 我们在windos上学习C语言文件操作的时候,会学到fopen:打开文件;fclose:关闭文件;
  • 我们可以get到,我们先要读取或写入数据到一个file.txt文件中,需要先fopen打开文件,fclose关闭文件。
  • 我们也初次接触到流的概念,以及站在内存角度的理解了输入、输出流。针对不同的流,我们操作方法都是一致的:打开流,读取或写入数据,关闭流。
  • 总结上面两个理解,以及Linux下一切接文件,我们可以得出此结论。
        c.默认打开的三个文件(流)
  • 标准输入文件:(stdin)
  • 标准输出文件:(stdout)
  • 标准错误文件:(stderr)
        d.用windows简单验证一下自己的桌面其实也是一个文件
  • Linux下的“一切皆文件”理念不仅简化了系统架构,还提高了灵活性和可扩展性。
  • 你们可以通过AI帮助,做一个试验,验证一下自己使用的终端也是一个文件(字符文件)。
2.重定向
        a.输出重定向( > )
  • [指令] > filename : 将指令的标准输出(通常是显示在终端上的内容)重定向到一个文件中.
  • 1. 若filename文件不存在,则新建之;
  • 2. 清空filename文件;
  • 3. 改变 > 前面指令的输出路径,输出到指定filename中.
  • 如echo 默认输出字符串到终端中,配合输出重定向,可输出到文件中test.txt;
  • 再如ls 默认打印目录的文件信息到终端中,配合输出重定向,也可输出到文件中test.txt.
        b.追加重定向 >>
  • 与输出重定向的唯一区别是,对已有的filename文件,不会清空。
        c.输入重定向( < )
  • 先看一下cat指令的例子
  • 我们发现cat < file1与catfile1都能打印file1的内容并打印到终端中,但意义是不同的。
  • cat filename # 直接查看filename内容并打印到终端显示器上。
  • cat  < filename # 使用输入重定向( < )将文件内容作为标准输入传递给 cat 命令。

http://www.kler.cn/a/522017.html

相关文章:

  • WebSocket 详解:全双工通信的实现与应用
  • mybatis(112/134)
  • uniapp 地图添加,删除,编辑标记,在地图中根据屏幕范围中呈现标记
  • TypeScript 学习 -类型 - 7
  • lightweight-charts-python 包 更新 lightweight-charts.js 的方法
  • ESP32 I2S音频总线学习笔记(二):I2S读取INMP441音频数据
  • Oracle 12c 中的 CDB和PDB的启动和关闭
  • 数字人+展厅应用方案:开启全新沉浸式游览体验
  • SimpleFOC STM32教程10|基于STM32F103+CubeMX,速度闭环控制(有电流环)
  • IO进程线程复习
  • 新项目上传gitlab
  • 日志收集Day007
  • RK3588平台开发系列讲解(ARM篇)ARM64底层中断处理
  • 一文讲解Java中的equals和hashCode方法
  • VSCode 设置为中文(Configure Display Language)
  • HarmonyOS:ForEach:循环渲染
  • HPO3:提升模型性能的高效超参数优化工具
  • 24小R的随机播放顺序
  • 使用TensorFlow实现逻辑回归:从训练到模型保存与加载
  • 信息学奥赛一本通 2110:【例5.1】素数环
  • 2025数学建模美赛|A题成品论文
  • 神经网络|(六)概率论基础知识-全概率公式
  • 爱快 IK-X9 吸顶AP 简单开箱评测和拆解,三频WiFi7,BE5000,2.5G网口
  • Continuous Batching 连续批处理
  • 基于ESP8266的多功能环境监测与反馈系统开发指南
  • 嵌入式C语言:结构体