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

《从终端到内核:Linux 指令体系的入门与技术解构(第二篇)》

前引:在数字化基础设施的底层架构中,Linux 操作系统以其开源性、稳定性与可定制性,成为服务器集群、嵌入式设备、云计算平台乃至人工智能训练环境的核心支撑。而指令行(Command Line Interface,CLI)作为与 Linux 内核交互的原生入口,不仅是系统管理、程序开发与自动化运维的效率利器,更是理解操作系统资源调度逻辑的技术窗口。对于初学者而言,Linux 指令体系并非零散命令的堆砌,而是一套遵循 “参数 - 选项 - 目标” 逻辑的结构化交互语言 —— 从最基础的ls目录遍历到grep文本过滤,从chmod权限控制到systemctl服务管理,每一条指令的背后都映射着 Linux “一切皆文件” 的设计哲学与分层架构思想。本文将以技术解构的视角,剥离指令学习的复杂性,帮助初学者建立从语法规则到实际应用的完整认知框架,逐步掌握通过终端高效操控系统的核心能力!

冷知识:

Linux操作的特点:纯命令,Windows等只是将命令图形化界面了

如果因为程序或者指令异常,无脑Ctrl+C即可退出

指令就是可执行程序,本质都是文件(which指令可验证)因此会存放在一个位置

如何从root切换为普通账号?

创建普通账号:useradd -m username(普通用户名)

设置普通用户密码:passwd username(普通用户名)

root与普通账号不断切换:su - root/username(普通用户名)

验证当前账户:whoami回车

目录

【一】man指令

man 参数(函数、基本命令等)

【二】cp指令

(1)cp -f

(2)cp -i

(3)cp -r

【三】echo指令

(1)echo

(2)echo >

(3)echo >>

【四】cat 指令

(1)cat -b 

(2)cat -n

(3)cat -s

【五】more指令

(1)more -n

【六】less指令

(1)less -i

(2)less -N

【七】head指令

(1)head -n

【八】tail

(1)tail -n

【九】head+tail管道

【十】date指令

(1)date

(2)date +s%

(3)date ...

【十一】cal指令

(1)cal -3

(2)cal -j

(3)cal -y

【十二】find指令

(1)find -name

(2)find ...

【十三】nano指令

【十四】grep指令

(1)grep

(2)grep -i

(3)grep -n

(4)grep -v 

【十五】mv指令

(1)mv -f

(2)mv -i

(3)mv


【一】man指令

Linux的命令有很多参数,我们不可能全记住,可以通过查看联机⼿册获取帮助

语法:man [选项] 命令

注意:选项默认为1,如果要退出查询界面,单机按键 q 即可

man 参数(函数、基本命令等)

查看某个命令的说明,例如:

如果输入某个参数,会默认从该选项1~9一直向下寻找,如果走完选项还找不到就会报错:

1是普通的命令

2是系统调⽤,如open,write之类的(通过这个,⾄少可以很⽅便的查到调⽤这个函数,需要加什么 头⽂件)

3是库函数,如printf,fread4是特殊⽂件,也就是/dev下的各种设备⽂件

4略

5是指⽂件的格式,⽐如passwd,就会说明这个⽂件中各个字段的含义

6是给游戏留的,由各个游戏⾃⼰定义

7是附件还有⼀些变量,⽐如像environ这种全局变量在这⾥就有说明

8是系统管理⽤的命令,这些命令只能由root使⽤,如ifconfig

9略

如果要查看C语言的函数等,可以指定第3个选项,例如:

【二】cp指令

作用:cp [选项] 源⽂件或⽬录 ⽬标⽂件或⽬录(复制⽂件或⽬录)

(1)cp -f

作用:强⾏复制⽂件或⽬录,不论⽬的⽂件或⽬录是否已经存在

(2)cp -i

作用:覆盖⽂件之前先询问⽤⼾

(3)cp -r

递归处理,将指定⽬录下的⽂件与⼦⽬录⼀并处理。若源⽂件或⽬录的形态,不属于⽬录或符 号链接,则⼀律视为普通⽂件处理

【三】echo指令

基本作用:输出字符串/写入文件

(1)echo

作用:echo 字符串,直接打印字符串的内容,例如:

(2)echo >

作用:输入重定向,向文件写入内容(每次 > 都会清空文件,重新写入)

(3)echo >>

作用:追加重定向,向文件写入内容(保留上次写入内容,持续写入)

【四】cat 指令

基本作用:输出文件内容

(1)cat -b 

作用:对⾮空输出⾏编号,空⾏不做编号

例如:

[whb@bite-alicloud test]$ cat -b temp.txt

1 hello bite

2 hello bite

3 hello bite

4 hello bite

5 hello bite

6 hello bite

7 hello bite

...

(2)cat -n

作用:对输出的所有⾏编号

例如:

[whb@bite-alicloud test]$ cat -b temp.txt

1 hello bite

2 hello bite

...

(3)cat -s

作用:不输出多⾏空⾏

hello bite

hello bite

hello bite

hello bite

hello bite

hello bite

hello bite

hello bite

【五】more指令

作用:向后翻滚式的查看文件内容

(1)more -n

作用:指定输出行数(通过回车可以继续查看,按 q 可以退出)

【六】less指令

作用:less与more类似,但使⽤less可以随意浏览⽂件,⽽more仅能向前移动,却不能向后移动,⽽ 且less在查看之前不会加载整个⽂件

(1)less -i

作用:忽略搜索时的⼤⼩写

(2)less -N

作用:显⽰每⾏的⾏号

【七】head指令

作用:head⽤来显⽰档案的开头⾄标准输出中,默认head命令打印其相应⽂件的开头10⾏

(1)head -n

作用:显⽰的⾏数

【八】tail

作用:tail命令从指定点开始将⽂件写到标准输出,⽤于显⽰指定⽂件末尾内容,不指定⽂件时,作为输⼊信息进⾏处理,默认是10行

(1)tail -n

作用:从尾部开始显示行数

【九】head+tail管道

管道简而言之就是利用 head 和 tail 截取一段数据:head -n 文件 | tail -n

例如:现在有20行文件内容,提取中间5~10行文件内容

管道:先把左边head读取的数据写进中间的 | (管道),然后tail再从中间读取
连续多次管道也是可以的:

【十】date指令

作用:打印时间/时间戳

(1)date

(2)date +s%

打印时间戳:

(3)date ...

%Y:完整年份

%m:月份

%d:日

%F:相当于 %Y %m %d

%H:时

%M:分

%S:秒

%X:相当于 %H %M %S

【十一】cal指令

作用:输出日历

(1)cal -3

作用:显⽰系统前⼀个⽉,当前⽉,下⼀个⽉的⽉历

(2)cal -j

作用:显⽰在当年中的第⼏天(⼀年⽇期按天算,从1⽉1号算起,默认显⽰当前⽉在⼀年中的天数)

(3)cal -y

作用:显⽰当前年份的⽇历

【十二】find指令

作用:find 是 Linux 系统中用于实时搜索文件和目录的强大命令,它能根据文件名、类型、大小、修改时间、权限等多种条件精确查找文件

(1)find -name

可以指定路径查找:

或者直接查找:

(2)find ...

其它选项可以通过查找文档进行学习,确实是太复杂了!

【十三】nano指令

作用:写入文档

使用 nano 向文档写入内容:

保存退出:Ctrl+o保存、回车、Ctrl+x退出

【十四】grep指令

作用:在⽂件中搜索字符串,将找到的⾏打印出来

(1)grep

查找指定关键字内容:

(2)grep -i

作用:不区分大小写进行查找内容

(3)grep -n

作用:顺便对输出的内容标上行号

(4)grep -v 

作用:反向选择,即选择不包含指定内容的内容

【十五】mv指令

作用:移动⽂件或者将⽂件改名

1.视mv命令中第⼆个参数类型的不同(是⽬标⽂件还是⽬标⽬录),mv命令将⽂件重命名或将其 移⾄⼀个新的⽬录中

2. 当第⼆个参数类型是⽂件时,mv命令完成⽂件重命名,此时,源⽂件只能有⼀个(也可以是源⽬ 录名),它将所给的源⽂件或⽬录重命名为给定的⽬标⽂件名

3. 当第⼆个参数是已存在的⽬录名称时,源⽂件或⽬录参数可以有多个,mv命令将各参数指定的源 ⽂件均移⾄⽬标⽬录中

(1)mv -f

作用:如果⽬标⽂件已经存在,不会询问⽽直接覆盖(相当于是将当前文件/目录移动到指定位置)

例如:

(2)mv -i

作用:若⽬标⽂件(destination)已经存在时,就会询问是否覆盖!

例如:A目录有一个文件path1,现将B目录的文件path1用 mv -i 移动到 A 目录,出现同名会询问              是否覆盖

(3)mv

作用:重命名文件


文章转载自:

http://w87LnAfx.Lbbrw.cn
http://TkcRmOVf.Lbbrw.cn
http://fp4hOPUS.Lbbrw.cn
http://ynuwX5Li.Lbbrw.cn
http://cSeiCefD.Lbbrw.cn
http://szHqDBLk.Lbbrw.cn
http://y21eLbaU.Lbbrw.cn
http://s7N1cxYa.Lbbrw.cn
http://jTeAIOFQ.Lbbrw.cn
http://qRDCMtuB.Lbbrw.cn
http://opoGXode.Lbbrw.cn
http://scASp9oz.Lbbrw.cn
http://CJs0TEOB.Lbbrw.cn
http://fOj4tbto.Lbbrw.cn
http://DwnFTFyn.Lbbrw.cn
http://qFMmO86l.Lbbrw.cn
http://5FMeaqIa.Lbbrw.cn
http://RCNCiA0E.Lbbrw.cn
http://EcKtMCDA.Lbbrw.cn
http://OOOeH1d5.Lbbrw.cn
http://zyqdbFZO.Lbbrw.cn
http://X2BAFluM.Lbbrw.cn
http://kFcdfKWI.Lbbrw.cn
http://WAAI1LBO.Lbbrw.cn
http://MCLtFSIM.Lbbrw.cn
http://JzrXo1LZ.Lbbrw.cn
http://KMsteWkE.Lbbrw.cn
http://ELCvobpU.Lbbrw.cn
http://Uq52Hryx.Lbbrw.cn
http://EM7fHx0s.Lbbrw.cn
http://www.dtcms.com/a/387420.html

相关文章:

  • 实验5:组件应用(4学时)
  • 精选40道Kafka面试
  • web自动化随笔
  • HarmonyOS 多线程编程:Worker 使用与性能优化指南
  • 卫星通信大爆发:未来,你的手机将不再“失联”
  • 带你了解STM32:EXTI外部中断
  • Charles抓包工具新手入门教程 安装配置、手机代理与基础使用指南
  • 鸿蒙智能设备自动诊断实战:从传感器采集到远程上报的完整实现
  • 第五章 Arm C1-Premium 内存管理单元详解
  • 第七章 Arm C1-Premium L1数据内存系统解析
  • ARM(10) - I2C
  • 计算机视觉(opencv)实战二十六——背景建模与运动目标检测
  • 《详解Maven的继承与聚合》一篇理解分模块设计理念,以及私服的使用
  • Linux系统服务Syslog服务
  • 985高校标杆项目:基于大数据的商店销售数据分析与可视化系统技术解析
  • OpenCV内置分类器实现简单的人脸识别
  • 基于vue社区养老管理系统3849x(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
  • 破解云VR教育普及难题:点量实时云渲染——实现跨终端无界协同
  • 智能合约安全常见攻击与防御
  • Docker多容器编排:Compose 实战教程
  • StarRocks 助力数禾科技构建实时数仓:从数据孤岛到智能决策
  • 重构多任务爬虫
  • 语音DDS系统核心组件详解与实现方案
  • 部署CephFS文件存储
  • 元宇宙与物流产业:数字孪生重构物流全链路运营
  • 通信算法之328:Vivado中FIFO的IP核
  • Android MediaCodec 编解码
  • Resolve JSON Reference for ASP.NET backend
  • 十一、vue3后台项目系列——封装请求,存储token,api统一化管理,封装token的处理工具
  • 一个OC的十年老项目刚接手编译报错:No Accounts: Add a new account in Accounts settings.