《Linux 输入输出重定向与 VI 编辑器:全面操作指南与原理剖析》
系统凭借其高效、稳定和开源的特性占据着重要地位。而 Linux 输入输出重定向和 VI 编辑器作为系统中不可或缺的两大核心功能是每一位 Linux 使用者必须掌握的关键技能。输入输出重定向能够灵活控制命令的输入来源和输出去向大大提升了数据处理的效率VI编辑器则以其强大的文本编辑能力成为在命令行环境下编辑文件的首选工具。本文将带你深入探索这两个重要功能不仅会详细介绍它们的各种操作方法还会对其背后的原理进行剖析。无论你是初涉 Linux的新手还是希望进一步提升技能的专业人士相信都能从本文中获得有价值的知识和实践经验。2.12.1 VI编辑器1-1 移动光标代码语言javascriptAI代码解释## 左下上右如果键盘上没有上下左右键可以h,j,k,l ## 进入编辑模式有三个按钮i、a、o i在光标位置编辑、a是在光标后一位编辑、o是换行编辑新起一行 ctrlf 下翻一页 ctrlb 上翻一页 ctrlu 上翻半页 ctrld 下翻半页 ## 0 跳至行首不管有无缩进就是跳到第0个字符 ## ^ 跳至行首的第一个字符 ## $ 跳至行尾(shift4) ## gg 跳至文首 ## G 跳至文尾(shiftg) ## 5gg/5G 调至第5行或者命令行模式:5回车也是跳到第5行所以其实操作命令都不是唯一的1-2 删除复制代码语言javascriptAI代码解释## x删除单个字符 ## 10x删除10个字符 ## dd 删除光标所在行(其实dd是剪切的操作), ## 使用u撤销之前的操作使用ctrlr恢复 ## 6dd 从光标开始往下删除6行 ## dw 删除一个单词(word) ## 小p 粘贴粘贴板的内容到当前行的下面比如将dd剪切的行黏贴到下面 ## 大P 粘贴粘贴板的内容到当前行的上面 ## yy 复制行 ## 5yy复制5行复制的内容可以通过p\P来黏贴1-3 搜索和替换代码语言javascriptAI代码解释## 搜索 /pattern 向后搜索字符串pattern #辅助小n向下和大N向上一般都是用/来搜索 ?pattern 向前搜索字符串pattern #辅助小n向上和大N向下?搜索用的少 ## 替换 :1369s/shell/jaden/g # 将第1369行的shell替换为jaden/还可以用#或者符号来代替:1369s#shell#jaden#g :1369,1379s/shell/jaden/g # 将1369至1379这10行中的shell替换为jaden :1369,$s/shell/jaden/g # 将1369至文末中的shell替换为jaden :%s/old/new/g #搜索整个文件将所有的old替换为new :%s/old/new/gc #搜索整个文件将所有的old替换为new每次都要你确认是否替换(y/n/a/..)y表示确认替换一个、n表示不替换、a表示全部替换1-4 退出编辑器代码语言javascriptAI代码解释## :w 将缓冲区写入文件即保存修改到硬盘上但是不退出vi如果我们改到一半的时候可以提前保存一下以防断电因为新编辑的数据是在内存中的而且vi不会自动保存。 ## :wq 保存修改并退出 ## :x 保存修改并退出和wq一样的效果。 ## :q 退出如果对缓冲区进行过修改则会提示 ## :q! 强制退出放弃修改 ## :wq! 强制保存修改并退出1-5 vi注意问题和原理说明代码语言javascriptAI代码解释### vi编辑内容原理在这里插入图片描述注意如果内存中的数据没有修改没什么事儿如果修改了并且不小心断开连接了也就是没有正常退出vi比如我们看一下在这里插入图片描述那么这个隐藏文件会一直在硬盘上当我们再次vi修改jaden.txt的时候就会看到如下提示信息image-20230708151527097这是提示你已经有这个 .jaden.txt.swp 文件了。你看到这个提示信息就要考虑一下是不是自己之前不小心没保存就掉线了还是说有其他人正在编辑这个文件。如果是自己之前没有保存那么可以选择删除这个隐藏的swp文件再编辑就没有这个提示了这是最简单的方式。或者输入 vi -r jaden.txt 会看到自己之前保存的内容重新 wq! 保存一下然后再删除 .jaden.txt.swp 文件即可自己之前的修改也就还在。 vim编辑的时候会提示如下image-20230708151605312代码语言javascriptAI代码解释## 如果是有其他人在编辑这个文件你就输入O表示只读模式打开E是直接编辑R是恢复文件Q是退出不编辑了A是中止操作。其实还有个D指令直接删除隐藏文件。1-6 不会vi怎么办代码语言javascriptAI代码解释## 可以把文件拷贝到物理机通过物理机的记事本或者nodepad等编辑器修改修改完去替换原文件即可。 ## 比如xftp就可以帮我们下载文件。但是如果一个比较大的文件我们只改动一点内容就可以学学vi没必要上传下载文件来操作耗时。2.12.2 输入输出重定向2-1 输出重定向01–清空文件代码语言javascriptAI代码解释## 输出 ## 输出重定向 将命令执行结果不输出到屏幕上输出到文件里会清空原文件所以输出的时候一定要注意文件名称要看好了。 [rootlocalhost ~]# head -20 services 2.txt [rootlocalhost ~]# cat 2.txt [rootlocalhost ~]# seq 100 1.txt [rootlocalhost ~]# echo 123 1.txt [rootlocalhost ~]# cat 1.txt 123 ## 清空文件内容 [rootlocalhost ~]# 1.txt [rootlocalhost ~]# cat 1.txt2-2 输出重定向02–追加代码语言javascriptAI代码解释## 输出追加重定向不会清空原文件 [rootlocalhost ~]# echo aaaaa 2.txt [rootlocalhost ~]# cat 2.txt2-3 标准正确–错误输出重定向代码语言javascriptAI代码解释## 如果输出文件还没指定则自动创建 [rootlocalhost ~]# cat jaden.txt 11.txt 22.txt # 指令正确会将数据保存到1.txt中2-4 输入重定向代码语言javascriptAI代码解释## 输入 ## 输入重定向 [rootlocalhost ~]# cat jaden.txt 3.txt # 将jaden.txt的数据输入过来并写入3.txt中 [rootlocalhost ~]# cat jaden.txt ## 输入追加重定向(这个就不演示了遇到了再说) # 标准输入0支持用户直接输入内容 [rootlocalhost ~]# cat 0 1 2 2222 0 ## 输入0就退出 1 2 2222 [rootlocalhost ~]# cat 0 22.txt ## 给屏幕输入一些内容并保存到文件里 a b ddd 0 [rootlocalhost ~]# cat 22.txt a b ddd总结希望这篇文章能够为你在探索 Linux系统的道路上提供有力的帮助让你在操作 Linux 系统时更加得心应手。 对 Linux系统有着深入的研究和丰富的实践经验。我致力于分享各种系统相关的知识和技巧帮助大家解决在使用过程中遇到的各种问题。如果你觉得这篇文章对你有所帮助欢迎点赞、收藏和分享哦同时也希望你能关注我的博客我会持续为大家带来更多优质的系统技术文章包括但不限于 Linux 系统的深入探索、系统优化、故障排除以及各种有趣的实战案例。 如果你在学习和使用 Linux 系统的过程中遇到任何问题或者对某些内容有疑问欢迎在评论区留言我会尽力为大家解答。让我们一起在系统技术的海洋中遨游不断提升自己的技能水平共同探索系统世界的奥秘 再次感谢大家的阅读期待我们下次再见

相关新闻

Spring中的IOC详解

Spring中的IOC详解

文章目录 IOC IOC容器的工作原理Bean的生命周期Bean的自动装配 AutowiredResourceInject 使用Spring底层组件 IOC Spring的核心之一是IOC,IOC全称为Inversion of Control,中文译为控制反转,是面向对象编程中的一种设计原则,可…

2026/5/17 10:29:22 阅读更多 →
天远企业司法认证API实战:Python构建企业级供应链合规审查防火墙

天远企业司法认证API实战:Python构建企业级供应链合规审查防火墙

规避百亿商业踩雷:从盲目授信到数据驱动的合规穿透 在现代B2B商业交易、信贷审批以及大规模并购案中,目标企业表面上的财务报表往往无法真实反映其底层的合规健康度。许多企业看似正常运营,实则深陷合同纠纷、劳动争议或侵权责任等诉讼泥潭之…

2026/7/6 23:01:54 阅读更多 →
立体库SolidWorks三维

立体库SolidWorks三维

立体库的三维模型构建是仓储系统设计中的关键环节,其核心作用在于通过数字化手段直观呈现库体结构、货架布局及物流路径。在SolidWorks环境下,三维模型可精准定义各组件的几何参数与空间关系,例如货架的层高、跨度及承重结构,托盘…

2026/7/3 23:32:09 阅读更多 →

最新新闻

MP2672A充电管理芯片与PIC18微控制器的电池管理系统设计

MP2672A充电管理芯片与PIC18微控制器的电池管理系统设计

1. MP2672A充电管理芯片深度解析MP2672A是MPS公司推出的一款高度集成的开关电池充电器IC,专为双节串联锂离子电池设计。这款芯片在便携式设备电源管理领域具有显著优势,其核心功能在于实现了NVDC电源路径管理和集成电池平衡功能。1.1 关键电气特性与工作…

2026/7/8 10:21:11 阅读更多 →
STM32与MCP3428高精度数据采集系统设计

STM32与MCP3428高精度数据采集系统设计

1. 项目背景与核心需求 在工业自动化和物联网应用中,高精度数据采集系统扮演着关键角色。传统基于MCU内置ADC的方案往往面临分辨率不足(通常仅12位)、通道数量有限以及抗干扰能力弱等问题。这正是我们选择MCP3428这款18位Δ-Σ ADC搭配STM32F…

2026/7/8 10:21:11 阅读更多 →
KLayout完整指南:免费开源版图设计软件的终极入门教程

KLayout完整指南:免费开源版图设计软件的终极入门教程

KLayout完整指南:免费开源版图设计软件的终极入门教程 【免费下载链接】klayout KLayout Main Sources 项目地址: https://gitcode.com/gh_mirrors/kl/klayout KLayout是一款功能强大的开源版图设计软件,专为半导体芯片设计和集成电路布局而生。无…

2026/7/8 10:19:09 阅读更多 →
机器人世界模型:预测-动作-学习三大范式协同架构

机器人世界模型:预测-动作-学习三大范式协同架构

1. 为什么“世界模型”这个词突然在机器人圈被反复提起——从机械臂失控到自主导航的底层逻辑跃迁过去三年,我带团队做过七款不同形态的实体机器人:从实验室里只能抓取固定颜色积木的六轴机械臂,到后来能绕开办公室椅子、自主递送咖啡的轮式移…

2026/7/8 10:19:09 阅读更多 →
Wand-Enhancer:重新定义游戏修改体验的开源增强方案

Wand-Enhancer:重新定义游戏修改体验的开源增强方案

Wand-Enhancer:重新定义游戏修改体验的开源增强方案 【免费下载链接】Wand-Enhancer Advanced UX and interoperability extension for Wand (WeMod) app 项目地址: https://gitcode.com/gh_mirrors/we/Wand-Enhancer 你是否曾为游戏修改器的功能限制而感到沮…

2026/7/8 10:19:09 阅读更多 →
2026年,高性价比的张力围栏服务商推荐,带你解锁安全防护新选择!

2026年,高性价比的张力围栏服务商推荐,带你解锁安全防护新选择!

在当今注重安全防护的时代,张力围栏凭借其独特的优势,成为了众多场所安全防护的热门选择。然而,面对市场上众多的张力围栏服务商,如何挑选到高性价比的服务商成为了一个关键问题。今天,就为大家推荐一家值得关注的张力…

2026/7/8 10:17:06 阅读更多 →

日新闻

3大核心能力重塑《明日方舟》游戏体验:MAA自动化助手的革命性突破

3大核心能力重塑《明日方舟》游戏体验:MAA自动化助手的革命性突破

3大核心能力重塑《明日方舟》游戏体验:MAA自动化助手的革命性突破 【免费下载链接】MaaAssistantArknights 《明日方舟》小助手,全日常一键长草!| A one-click tool for the daily tasks of Arknights, supporting all clients. 项目地址: …

2026/7/8 0:00:48 阅读更多 →
MyBatis 批量操作深度优化——从 N+1 到批处理的全路径

MyBatis 批量操作深度优化——从 N+1 到批处理的全路径

MyBatis 批量操作深度优化——从 N1 到批处理的全路径 一、从"功能正确"到"性能可接受"——MyBatis 批量操作的三段式进化 MyBatis 在日常增删改查场景中几乎是无感的——实体映射直观、SQL 控制灵活。但当数据量从千级上升到十万级、百万级,许…

2026/7/8 0:00:48 阅读更多 →
工业负载控制方案:TPD2015FN与PIC18F45K22应用解析

工业负载控制方案:TPD2015FN与PIC18F45K22应用解析

1. 工业负载控制方案概述在工业自动化、电机驱动和照明控制等高需求场景中,可靠地控制电感和电阻负载是核心挑战之一。TPD2015FN作为东芝的8通道高端智能功率开关IC,配合PIC18F45K22微控制器,能够构建一套稳定、高效的负载控制系统。这套组合…

2026/7/8 0:02:48 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/7 14:24:45 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/7 12:34:47 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/7 15:59:06 阅读更多 →

月新闻