Linux操作系统4:Vim编译器

简介: Linux操作系统4:Vim编译器

写在最前面

原文发布时间:2022-11-12 19:43:32

质量分过低,进行完善

原文

一、 实验目的:

掌握Vim编译器的启动与推出方法

掌握Vim编译器的三种模式及使用方法

熟悉C/C++编译器gcc的使用方法

掌握 Vim编辑器的使用方法

使用Shell进行简单编程

二、 实验内容:

练习Vim编译器的启动与退出;

练习Vim编译器的使用方法;

练习C/C++编译器gcc的使用方法

练习Vim编辑器的使用,达到熟练应用的目的

练习使用shell进行简单编程

三、实验结果:

(1)创建一个script,当运行该script时,该script可以显示:

①你目前的身份(用whoami);②你目前所在的目录(用pwd)

(注意:这个地方打错了,应该是script)

我们发现,需要安装vim才能使用这个命令,因此我们先进入root模式,安装vim。

1.安装vim编辑器

或者直接使用命令,进行安装

可以看到:因为虚拟机不是最新的,所以安装失败了,他建议我们先更新再安装。

所以,我们在安装之前先更新。

这样就是更新成功了,我们再次进行vim的安装。

下载成功后,可以在图形界面看到vim图标。

然后再次使用vim

进入vim界面后,按i进入编辑模式(可以看到,左下角有INSERT)

写完之后,按esc :wq

最后运行,得到如下结果:

(3) 让用户输入一个数字,程序可以由”1+2+3+…”一直累加到用户输入的数字为止

(注意:for语句为双括号(()))

错误代码及相应的输出:(错误原因:注意指针的调用)

(4) 撰写一个程序,其作用是:①先查看一下/root/test/logical这个名称是否存在;②若不存在,则创建一个文件,使用touch来创建,创建完成后离开;③如果存在,判断该名称是否为文件,若为文件则将之删除后创建一个目录,文件名为logical,之后离开;④如果存在,而且该名称为目录,则移除此目录。

(注意,可以右键复制粘贴)

报错:

  1. 权限不够,先进入root模式

  1. 不存在这个目录,先创建一个/root/test/的目录

  1. 报错 语句错误(原因:这个语句中,存在很多空格,需要注意)

尝试:

将第8行语句修改为:

(5) 我们知道/etc/passwd里面以”:”来分隔,第一栏为账号名称。请写一个程序,可以将/etc/passwd的第一栏取出,而且每一栏都以一行字串“The 1 accout is “root” ”来显示,那个1表示行数。

完善

Linux操作系统4:Vim编译器

在Linux操作系统中,Vim(Vi IMproved)是一款强大的文本编辑器,它具有多种功能,包括文本编辑、代码编写以及编程环境的支持。Vim以其高度可定制性和快捷键驱动的编辑方式而闻名,是许多程序员和系统管理员的首选工具之一。本实验将帮助您掌握Vim编译器的启动、退出以及使用方法,同时还将涵盖C/C++编译器gcc的使用和Shell脚本编程。

一、实验目的

本实验的主要目的是让您熟悉Vim编辑器的基本用法和C/C++编译器gcc的使用方法,同时通过使用Shell进行简单编程来提高Linux操作系统的熟练度。具体的实验目的包括:

  1. 掌握Vim编译器的启动和退出方法。
  2. 熟悉Vim编译器的三种模式(命令模式、插入模式和底行模式)以及它们的使用方法。
  3. 学习C/C++编译器gcc的基本使用,包括编译和运行源代码。
  4. 掌握Vim编辑器的高级使用方法,包括搜索、替换、复制、粘贴等操作。
  5. 了解Shell脚本编程的基础知识,可以编写简单的Shell脚本。

二、实验内容

2.1 启动与退出Vim编译器

首先,我们将学习如何启动和退出Vim编译器。在Linux终端中,只需输入以下命令来启动Vim:

vim

这将打开一个新的Vim编辑窗口。在Vim中,有三种主要的模式,包括命令模式、插入模式和底行模式。下面将介绍这些模式的基本用法。

2.2 Vim的三种模式

2.2.1 命令模式

默认情况下,Vim处于命令模式。在这个模式下,您可以使用各种命令来执行操作,如移动光标、复制粘贴文本等。以下是一些常见的命令:

  • 使用 hjkl 键来分别向左、下、上和右移动光标。
  • 使用 i 键进入插入模式。
  • 使用 x 键删除光标所在位置的字符。
  • 使用 yy 命令复制当前行。
  • 使用 p 命令在光标位置粘贴剪贴板中的文本。
2.2.2 插入模式

要进入插入模式,您可以按下 i 键。在插入模式下,您可以像在普通文本编辑器中一样输入文本。要退出插入模式并返回到命令模式,只需按下 Esc 键。

2.2.3 底行模式

要进入底行模式,您可以按下 : 键。在底行模式下,您可以执行更高级的操作,如保存文件、退出Vim等。以下是一些底行模式的命令:

  • :w 保存文件。
  • :q 退出Vim。
  • :wq 保存并退出。
  • :q! 强制退出,不保存修改。

2.3 C/C++编译器gcc的使用

在本实验中,我们还将学习如何使用C/C++编译器gcc来编译和运行C/C++源代码文件。以下是一些基本的gcc命令:

  • 编译C源代码文件:gcc -o output_file source_file.c
  • 编译C++源代码文件:g++ -o output_file source_file.cpp
  • 运行可执行文件:./output_file

2.4 Vim编辑器的高级使用

除了基本的文本编辑功能,Vim还提供了许多高级功能,如搜索、替换、复制和粘贴文本。这些功能可以提高您的编辑效率。以下是一些示例命令:

  • 搜索文本:在命令模式下,按 / 键,然后输入要查找的文本,按下回车。
  • 替换文本:在命令模式下,输入 :s/old_text/new_text/g 来替换文本。
  • 复制和粘贴:使用 y 命令复制文本,使用 p 命令粘贴文本。

2.5 使用Shell进行简单编程

Shell编程是在Linux中自动化执行一系列命令的强大方式。通过编写Shell脚本,您可以执行复杂的任务,自动处理文件、目录和系统操作,以及定期运行特定的任务。在本部分,我们将详细介绍如何使用Shell进行简单编程。

什么是Shell脚本?

Shell脚本是一系列Shell命令的文本文件,它们按顺序执行,以完成特定任务。脚本的文件扩展名通常是.sh,并且可以在Linux终端中执行。

编写和执行Shell脚本
  1. 打开文本编辑器,比如Vim或Nano,创建一个新文件并添加以下行:
#!/bin/bash
# 这是一个Shell脚本示例
echo "Hello, World!"

以上脚本的第一行 #!/bin/bash 声明了使用Bash Shell来执行脚本。然后,echo "Hello, World!" 命令将字符串 “Hello, World!” 输出到终端。

  1. 保存文件并退出文本编辑器。
  2. 授予脚本执行权限。在终端中运行以下命令:
chmod +x your_script.sh

此命令将使脚本文件具有执行权限。

  1. 执行脚本。在终端中运行以下命令:
./your_script.sh

脚本将执行并输出 “Hello, World!”。

Shell脚本示例

以下是一个更实际的Shell脚本示例,它创建一个名为 “backup” 的目录,并将当前目录中的所有.txt 文件复制到 “backup” 目录:

#!/bin/bash
# 创建名为 "backup" 的目录
mkdir backup
# 复制所有 .txt 文件到 "backup" 目录
for file in *.txt; do
  cp "$file" backup/
done
echo "备份完成!"

这个脚本首先使用 mkdir 命令创建一个名为 “backup” 的目录,然后使用 for 循环遍历当前目录中的所有.txt 文件,并将它们复制到 “backup” 目录。最后,脚本输出 “备份完成!”。

特殊变量

Shell脚本中有一些特殊变量,您可以在脚本中使用它们来获取有关脚本执行环境的信息。一些常见的特殊变量包括:

  • $0:脚本的名称。
  • $1$2$3 等:脚本的参数。
  • $#:传递给脚本的参数个数。
  • $?:上一个命令的退出状态。
  • $$:脚本的进程ID。

您可以使用这些特殊变量来根据需要编写更灵活的脚本。

实验任务

在学习了Shell脚本的基础知识后,尝试编写自己的Shell脚本,执行一些自定义的任务。您可以编写备份脚本、日志清理脚本、定时任务等。 Shell编程是Linux系统管理和自动化的重要工具,帮助您更高效地处理各种任务。

这就是使用Shell进行简单编程的简要介绍。希望这些基础知识能帮助您更好地理解和使用Linux操作系统。

小结

以上是本次实验的主要内容。通过学习Vim编译器的基本用法、C/C++编译器gcc的使用和Shell脚本编程,将能够更好地应用Linux操作系统进行编程和系统管理工作。

希望这些技能对Linux学习之旅有所帮助。

目录
相关文章
|
13天前
|
安全 Linux 数据安全/隐私保护
Vanilla OS:下一代安全 Linux 发行版
【10月更文挑战第30天】
34 0
Vanilla OS:下一代安全 Linux 发行版
|
26天前
|
人工智能 分布式计算 大数据
Linux操作系统:开源力量的崛起与影响###
一场技术革命的火种,如何燎原? 本文将带您深入探索Linux操作系统的诞生背景、核心特性及其对现代科技世界的深远影响。从1991年芬兰学生Linus Torvalds的一个小众项目,到如今成为支撑全球无数服务器、超级计算机及物联网设备的基石,Linux的发展既是一部技术创新史,也是开源文化胜利的见证。通过剖析其设计哲学、安全性、灵活性等关键优势,结合实例展示Linux在云计算、大数据处理等领域的广泛应用,本文旨在揭示Linux为何能在众多操作系统中脱颖而出,以及它如何塑造了我们今天的数字生活。 ###
|
24天前
|
安全 Linux 编译器
探索Linux内核的奥秘:从零构建操作系统####
本文旨在通过深入浅出的方式,带领读者踏上一段从零开始构建简化版Linux操作系统的旅程。我们将避开复杂的技术细节,以通俗易懂的语言,逐步揭开Linux内核的神秘面纱,探讨其工作原理、核心组件及如何通过实践加深理解。这既是一次对操作系统原理的深刻洞察,也是一场激发创新思维与实践能力的冒险。 ####
|
6天前
|
缓存 资源调度 安全
深入探索Linux操作系统的心脏——内核配置与优化####
本文作为一篇技术性深度解析文章,旨在引领读者踏上一场揭秘Linux内核配置与优化的奇妙之旅。不同于传统的摘要概述,本文将以实战为导向,直接跳入核心内容,探讨如何通过精细调整内核参数来提升系统性能、增强安全性及实现资源高效利用。从基础概念到高级技巧,逐步揭示那些隐藏在命令行背后的强大功能,为系统管理员和高级用户打开一扇通往极致性能与定制化体验的大门。 --- ###
27 9
|
6天前
|
缓存 运维 网络协议
深入Linux内核架构:操作系统的核心奥秘
深入Linux内核架构:操作系统的核心奥秘
22 2
|
10天前
|
缓存 网络协议 Linux
Linux操作系统内核
Linux操作系统内核 1、进程管理: 进程调度 进程创建与销毁 进程间通信 2、内存管理: 内存分配与回收 虚拟内存管理 缓存管理 3、驱动管理: 设备驱动程序接口 硬件抽象层 中断处理 4、文件和网络管理: 文件系统管理 网络协议栈 网络安全及防火墙管理
31 4
|
9天前
|
安全 网络协议 Linux
Linux操作系统的内核升级与优化策略####
【10月更文挑战第29天】 本文深入探讨了Linux操作系统内核升级的重要性,并详细阐述了一系列优化策略,旨在帮助系统管理员和高级用户提升系统的稳定性、安全性和性能。通过实际案例分析,我们展示了如何安全有效地进行内核升级,以及如何利用调优技术充分发挥Linux系统的潜力。 ####
28 1
|
12天前
|
物联网 Linux 云计算
Linux操作系统的演变与未来趋势####
【10月更文挑战第29天】 本文深入探讨了Linux操作系统从诞生至今的发展历程,分析了其在服务器、桌面及嵌入式系统领域的应用现状,并展望了云计算、物联网时代下Linux的未来趋势。通过回顾历史、剖析现状、预测未来,本文旨在为读者提供一个全面而深入的视角,以理解Linux在当今技术生态中的重要地位及其发展潜力。 ####
|
17天前
|
边缘计算 人工智能 运维
Linux操作系统:开源力量的崛起与影响###
一场技术革命的回顾 回溯至1991年,当Linus Torvalds宣布Linux操作系统的诞生时,世界或许并未意识到这一举措将如何深刻地改变技术领域的面貌。本文旨在探讨Linux操作系统的发展历程、核心特性、以及它如何引领了一场开源运动,重塑了软件行业的生态。从最初的个人爱好项目成长为全球最广泛采用的服务器操作系统之一,Linux的故事是技术创新与社区精神共同推动下的辉煌篇章。 ###
|
16天前
|
人工智能 安全 Linux