Shell和Vi编辑器

合集下载

shell.管道.重定向

shell.管道.重定向

Shell 脚本
• Shell Scripts是一个包含shell指令的文本文
件。 • Shell脚本支持变量与简单的语法来完成批 量工作。 • Shell脚本支持交互的方式,在执行时从标 准输入读取数据。 • 有大量的系统工作都是通过Shell脚本的方 式来完成,例如系统开机,服务控制。
编辑shell脚本
设备文件
• 设备在Linux中以特殊文件的形式存在 • 块(block)设备文件 • 字符(character)设备文件 • 设备文件所在位置 • 查看设备类型
虚拟控制台及用户身份切换
• 在系统中有12个虚拟控制台,前6个可供用
作本地登录 • 用户可以用Alt+Fn(n=1~12)来切换。 • 用su可以用来切换用户身份 su - username
常用快捷键
• Ctrl + d:输入已结束。在shell下相当于一
个exit • Ctrl + c:键盘中断请求。 • Ctrl +s & Ctrl + q:暂停/恢复屏幕输出 • Ctrl + l:清屏,相当于clear。 • Tab:自动补完命令行与文件名
– Tab键双击可以列出所有可能匹配的选择
创建用户
#useradd [用户名] #passwd [用户名] • example: • [root@localhost root]# useradd student • [root@localhost root]# passwd student • Changing password for user student • New password: (无回显) • Retype new password: (无回显) • passwd: all authentication tokens updated successfully • [root@localhost root]#

linux复习3:linux字符界面的操作

linux复习3:linux字符界面的操作

linux复习3:linux字符界⾯的操作⼀、前⾔ 1.对linux服务器进⾏管理的时候,经常要进⼊字符界⾯进⾏操作,使⽤命令需要记住该命令的相关选项和参数。

vi编辑器可以⽤于编辑任何ASCII⽂本,功能⾮常的强⼤,可以对⽂本进⾏创建、查找、替换、删除、复制和粘贴等操作。

⼆、Linux字符界⾯ 1.安装Fedora17系统之后,系统启动默认进⼊的是图形化界⾯,可以通过使⽤如下命令修改进⼊字符界⾯:ln -sf /lib/systemd/system/runlevel3.target /etc/systemd/system/default.target (1)⽤户登录分为两步:第⼀步输⼊⽤户名,系统根据该⽤户名识别⽤户 第⼆部输⼊⽤户的⼝令。

在正确的输⼊了⽤户名和⼝令之后就可以对系统进⾏各种操作了。

(2)超级⽤户登录后的提⽰符是“#”,⽽其他⽤户登录后的提⽰符是“$” 2.关闭和重启系统 (1)在linux系统下常⽤的关闭和重启系统的命令有"shutdown","halt","reboot"和"init",但是每个命令的内部⼯作过程是不同的。

shutdown命令可以安全的关系系统。

命令语法:shutdown [选项] [时间] [警告信息] ⽴即关闭系统:shutdown -h now 定时45分钟之后关闭系统shutdown -h 45 重新启动系统,并发出警告信息:shutdown -r now "system will be reboot now" (2)halt命令。

使⽤"halt"命令就是调⽤"shutdown -h"命令执⾏关闭系统 命令语法:halt [选项] 使⽤"halt"命令关闭系统:halt (3)reboot命令 "reboot"是引发主机重启,"halt"命令是引发主机关闭系统  使⽤reboot命令重启计算机:reboot (4)init命令: 所有进程的祖先,进程号始终为1 发送TERM信号给"init"会终⽌所以的⽤户进程和守护进程 "init 0"是关闭系统;"init 6为重启系统" 3.系统运⾏级别 (1)Linux系统运⾏级别是⼀种状态,由列在/etc/rc.d/rc<x>.d⽬录中的服务来定义的,其中x代表运⾏级别的符号 (2)Linux运⾏的7中级别: 0:停⽌运⾏,所有进程中⽌,关闭系统 1.单⽤户模式,⽤于维护系统,只有少数进程运⾏ 2.多⽤户模式,出了NFS服务没有启动之外,其他的和运⾏级别3⼀样 3.完整的多⽤户模式,进⼊Linux系统的字符界⾯ 4.没有使⽤(可以由⽤户定义) 5.完整的多⽤户模式 6.重启引导计算机 (3)现实当前系统运⾏级别:runlevel 当前系统运⾏级别为5,没有上⼀次运⾏级别 (4)切换运⾏级别为2,并现实当前系统运⾏级别 当前系统级别为5,上⼀次的运⾏级别为3⼆、在linux下获取帮助 1.使⽤man⼿册页 (1)man可以⽤来查看命令、函数或者⽂件。

实验三Shell和Vi编辑器

实验三Shell和Vi编辑器
[student@enjoy abc]$ ./abc
1+2+3+...+99+100=5050
[student@enjoy abc]$
[student@enjoy abc]$
4)从如上内容的基础上总结vi的启动、存盘、文本输入、现有文件的打开、光标移动、复制/剪贴、查找/替换等命令。
5)编写一个程序解决“鸡兔同笼”问题。
main()
{
int i,sum=0;
for(i=0;i<=100;i++)
{
sum=sum+i;
}
printf("\n1+2+3+...+99+100=%d\n",sum);
}
[student@enjoy abc]$ gcc -o abc abc.c
[student@enjoy abc]$ ls
abc abc.c
再次查看文件list中的内容,和前两次的结果相比较,注意list文件大小和创建时间的区别,完成课后第一题。
(2)输入重定向
使用输入重定向,把上面生成的文件list用mail命令发送给自己:#mail root < list。
查看新邮件,看看收到的新邮件中其内容是否为list文件中的内容。
(3)管道
利用管道和grep命令,在上面建立的文件list中查找字符串list:#cat list | grep list。
显示别名ls代表的命令,确认设置生效:#alias ls。
使用别名ls显示当前目录中的文件列表。
在使定义的别名不失效的情况下,使用系统的ls命令显示当前目录的命令列表:#\ls。

vi应用场景

vi应用场景

"vi" 是一个文本编辑器,它广泛用于各种应用场景,因为它是 Unix 和类Unix 操作系统中默认的文本编辑器。

以下是一些常见的 vi 应用场景:
1. 文件编辑:用户可以利用 vi 对文件进行创建、编辑、保存和退出等基本操作。

2. 代码编写:程序员使用 vi 来编写、修改和调试代码。

3. 配置文件编辑:系统管理员经常使用 vi 来编辑系统配置文件,如`.bashrc`、`vi`、`vimrc` 等。

4. 日志查看:在 Unix 系统中,许多日志文件都是以文本形式存在的,vi 可以用来查看和分析这些日志。

5. 查看命令输出:有时候,用户希望通过 vi 查看命令的输出,尤其是当输出内容很多,需要滚动查看时。

6. 学习基础命令:对于刚接触 Unix 或 Linux 系统的用户,学习 vi 的基本命令是了解操作系统的基础之一。

7. 文本处理:vi 提供了强大的文本处理功能,如搜索、替换、剪切、复制、粘贴等。

8. 多个文件编辑:用户可以同时编辑多个文件,并在它们之间快速切换。

9. 远程编辑:通过 SSH 或其他远程登录工具,用户可以在远程服务器上使用 vi。

10. 脚本编写:vi 可以用来编写脚本,进行自动化操作。

尽管现在有许多更现代的文本编辑器,如 Vim、Nano、Sublime Text、Visual Studio Code 等,vi 仍然因其简单、高效和强大的功能而在许多场景中得到应用。

linux vi用法

linux vi用法

linux vi用法
LinuxVI编辑器是一个非常强大的文本编辑器,通常用于在命令行界面中编辑文本文件。

它不仅可以编辑文本文件,还可以用于编写脚本,记笔记等。

以下是一些常用的Linux VI编辑器用法:
1. 打开文件:在终端中输入vi filename,即可打开一个名为filename的文件。

2. 插入模式:按下i键即可进入插入模式,此时可以开始编辑文本。

3. 保存并退出:按下Esc键,输入:wq即可保存并退出文件。

4. 放弃修改退出:按下Esc键,输入:q!即可放弃修改并退出文件。

5. 查找字符串:在命令模式下输入/字符串,即可查找当前文件中包含该字符串的位置。

6. 替换字符串:在命令模式下输入:s/old/new/g,即可将所有的old替换为new。

7. 删除一行:在命令模式下输入dd即可删除一行。

8. 撤销操作:在命令模式下输入u即可撤销上一次操作。

9. 复制粘贴:在命令模式下将光标移动到需要复制的文本上,按下yy即可复制,将光标移动到需要粘贴的位置,按下p即可粘贴。

总之,Linux VI编辑器是一个非常实用的编辑器,它的功能非常强大,掌握一些基本的用法,可以提高工作效率。

vi 基本用法

vi 基本用法

vi 基本用法vi是一款常用的文本编辑器,拥有强大的功能和灵活的操作方式。

它通常在Linux和其他UNIX系统中使用,可以用于编辑各种类型的文件。

vi的基本用法包括以下几个方面:1. 打开文件:在命令行中输入vi命令,后面跟上文件名,即可打开相应的文件。

如果文件不存在,则会创建一个新文件。

2. 三种工作模式:vi有三种工作模式:命令模式、插入模式和底线模式。

在命令模式下,可以使用各种命令进行文件的编辑、复制、粘贴等操作;插入模式下,可以输入和修改文本;底线模式下,可以保存文件、退出vi等。

3. 切换工作模式:在命令模式下,按下i键可以进入插入模式,可以在光标处插入文本;按下Esc键可以退出插入模式,回到命令模式。

4. 保存文件:在底线模式下,输入:w命令可以保存文件。

如果想要另存为其他文件名,可以使用另存命令,如:w newfile.txt。

5. 退出vi:在底线模式下,输入:q命令可以退出vi。

如果文件有改动并且未保存,需要使用强制退出命令:q!。

6. 光标移动:在命令模式下,可以使用h、j、k、l键来左移、下移、上移和右移光标。

也可以使用Page Up、Page Down等键进行页面的快速滚动。

7. 删除文本:在命令模式下,可以使用x命令删除光标所在位置的字符。

可以使用dd命令删除整行文本。

8. 复制和粘贴:在命令模式下,可以使用yy命令复制整行文本;使用p命令将复制的内容粘贴到光标位置下方。

9. 撤销操作:在命令模式下,可以使用u命令撤销上一次的操作。

以上是vi的基本用法介绍,掌握了这些基本操作,可以高效地使用vi进行文本编辑。

linux vi可视化用法

linux vi可视化用法

Linux中的vi编辑器是一款强大的文本编辑器,它具有可视化功能,可以帮助用户更方便地编辑文本。

以下是关于vi可视化用法的一些介绍:1. 基本概念vi编辑器有三种基本状态:命令模式、插入模式和底行模式。

在命令模式下,你可以使用各种命令来控制光标的移动、删除文本、复制文本等。

插入模式是在命令模式下输入文本时使用的状态。

底行模式用于保存或退出编辑器,以及设置编辑环境,如查找字符串、列出行号等。

2. 可视化操作vi编辑器提供了多种可视化操作功能,使得编辑文本更加直观。

以下是一些常用的可视化操作:a. 选择文本:在命令模式下,你可以使用鼠标或键盘来选择文本。

按住鼠标左键或按住键盘上的某个键(如Shift或Ctrl)并移动光标,可以选中一段文本。

b. 移动和复制文本:你可以使用鼠标或键盘将选中的文本移动或复制到其他位置。

按住鼠标左键或按住键盘上的某个键并拖动光标,可以移动选中的文本。

按住Ctrl+鼠标左键或Ctrl+键盘上的某个键,可以复制选中的文本。

c. 删除文本:在命令模式下,你可以使用鼠标或键盘来删除文本。

按住鼠标左键或按住键盘上的某个键(如Del或Backspace)并移动光标,可以删除选中的文本。

d. 撤销和恢复操作:在命令模式下,你可以使用U(撤销)和Ctrl+R(恢复)来撤销和恢复操作。

3. 其他可视化功能a. 查找字符串:在底行模式下,你可以使用/(正向查找)或?(反向查找)来查找字符串。

b. 列出行号:在底行模式下,你可以使用":"来列出行号。

c. 设置环境变量:在底行模式下,你可以使用set来设置环境变量。

4. 退出vi编辑器在底行模式下,你可以使用":q"(退出并保存修改)或":wq"(退出并保存修改,并提示是否退出)来退出vi编辑器。

总之,vi编辑器提供了丰富的可视化功能,可以帮助用户更方便地编辑文本。

通过学习和熟练使用这些功能,你将能更好地利用vi编辑器的高效编辑能力。

Linux网络操作系统项目教程 项目7 熟练使用vim程序编辑器与shell(20190726)

Linux网络操作系统项目教程  项目7 熟练使用vim程序编辑器与shell(20190726)

职业能力目标和要求
① 学会使用vim编辑器。 ② 了解shell的强大功能和shell的命令解释过程。 ③ 学会使用重定向和管道的方法。 ④ 掌握正则表达式的使用方法。
3 项目七 熟练使用vim程序编辑器与shell
7.1 熟练使用vim程序编辑器 7.2 熟练掌握shell环境变量 7.3 熟练掌握正则表示法
n<space>
0或功能键“Home” $ 或功能键“End” H M L G
nG
gg n<Enter>
移动光标的方法 光标向左移动一个字符 光标向下移动一个字符 光标向上移动一个字符 光标向右移动一个字符 屏幕向下移动一页,相当于“Page Down”键(常用) 屏幕向上移动一页,相当于“Page Up”键(常用) 屏幕向下移动半页 屏幕向上移动半页 光标移动到下一行的第一个非空格字符 光标移动到上一列的第一个非空格字符
表7-4 进入输入模式的说明
类型 进入输入模式
类型
进入输入模式
命令
i I 命令 a A o O Esc
说明
从光标所在位置前开始插入文本 该命令是将光标移到当前行的行首,然后插入文本
说明 用于在光标当前所在位置之后追加新文本 将光标移到所在行的行尾,从那里开始插入新文本 在光标所在行的下面新开一行,并将光标置于该行行首,等待输入
3.命令模式的按键说明
如果是输入模式,先按“Esc”键进入编辑模式。在编辑模式下按“:”进入命令模式。
14
保存文件、退出编辑等的命令按键如表7-5所示。 表7-5 命令模式的按键说明
:w :w! :q :q! :wq ZZ :w [filename] :r [filename] :n1,n2 w [filename]
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

变量的定义和引用
变量定义的语法格式: 变量定义的语法格式: name=string 其中:name是变量名称 它的值是string 是变量名称, string, 其中:name是变量名称,它的值是string,“=”是赋值 符号。变量名是以字母或者下画线开头的字母、 符号。变量名是以字母或者下画线开头的字母、数字和下 画线字符组合。 画线字符组合。 通过变量名(name)前加$字符( $name) 通过变量名(name)前加$字符(如$name)引用变量 的值,引用的结果就是用字符串string代替$name,称为 的值,引用的结果就是用字符串string代替$name, string代替$name 变量替换。 变量替换。 string中包含空格 Tab和换行符 中包含空格、 和换行符, string必须 若string中包含空格、Tab和换行符,则string必须 string’或者“string”的形式;双引号允许变量替换, 用’string’或者“string”的形式;双引号允许变量替换, 而单引号则不可以。 而单引号则不可以。
字符表达式: 字符表达式: 匹配单个任意字符; .:匹配单个任意字符; [list]:匹配字符串列表中的其中一个字符 匹配字符串列表中的其中一个字符; [list]:匹配字符串列表中的其中一个字符; [range]:匹配指定范围中的一个字符 匹配指定范围中的一个字符; [range]:匹配指定范围中的一个字符; ]:匹配指定字符串中或者指定范围中以外的一个字符 匹配指定字符串中或者指定范围中以外的一个字符; [^ ]:匹配指定字符串中或者指定范围中以外的一个字符; 例如: 例如: ...:匹配包含 个字母的行。 匹配包含3 ...:匹配包含3个字母的行。 [at]:匹配包含a或者t [at]:匹配包含a或者t的行 [a-z]: [a-z]:匹配含有一个小写字母的行 path的行 [^path]:匹配 含有path的行; 匹配不 [^path]:匹配不含有path的行;
第4章 Shell和Vi编辑器 Shell和Vi编辑器
4.1 Shell 4.2 Vi编辑器
学习目标
了解Shell的强大功能和Shell的命令解释过程 学会使用重定向和管道 掌握正则表达式的使用方法 学会使用Vi编辑器
本章难点
正则表达式 Vi编辑器的3种模式及各模式下面的常用命令
4.1.1 4.1.2 4.1.3 4.1.4 4.1.5
环境设置文件
2.个人环境配置文件: 2.个人环境配置文件: 个人环境配置文件
系统环境配置文件对所有用户对会起作用,只有root 系统环境配置文件对所有用户对会起作用,只有root 用户才有权对其进行修改。 用户才有权对其进行修改。普通用户如果想定制自己的工 作环境。可以编辑自己的个人环境设置文件。 作环境。可以编辑自己的个人环境设置文件。个人环境设 置文件主要有二个: 置文件主要有二个: $HOME/.bash_profile $HOME/.bashrc
量词: 量词: 匹配前一个字符零次或多次; *:匹配前一个字符零次或多次; {n\}:匹配前一个字符 匹配前一个字符n \{n\}:匹配前一个字符n次; {n,\ :匹配前一个字符至少 匹配前一个字符至少n \{n,\}: :匹配前一个字符至少n次; {n,m\ :匹配前一个字符 次至m 匹配前一个字符n \{n,m\}: :匹配前一个字符n次至m次; 例如: 例如: [a-z][0-9]\{1\}[a-z]:匹配包含中间是数字、 [a-z][0-9]\{1\}[a-z]:匹配包含中间是数字、前后是字 母的3个字符串行; 母的3个字符串行; [0-9]\{1, 匹配包含数字的行; [0-9]\{1,\}:匹配包含数字的行; PATH\{1,2\ 匹配包含含有1 path或者 或者2 path的行 的行; PATH\{1,2\}:匹配包含含有1个path或者2个path的行;
常用Shell环境变量说明 常用Shell环境变量说明 Shell
环境变量 LOGNAME PATH PS1 PWD SHELL TERM 说明 登陆名,也就是账户名 命令搜索路径 命令提示符 用户的当前目录 用户的shell类型 终端类型
HOME
用户主目录的位置,通常是 /home/用户名
环境设置文件
1.系统环境配置文件: 1.系统环境配置文件: 系统环境配置文件
/etc/profile和 /etc/profile和/etc/bashrc profile文件在每个用户登陆系统时都会被执行, profile文件在每个用户登陆系统时都会被执行,把其中 文件在每个用户登陆系统时都会被执行 的设置加入到用户的环境中. 的设置加入到用户的环境中. bashrc文件用于对subshell的环境进行设置 文件用于对subshell的环境进行设置。 bashrc文件用于对subshell的环境进行设置。比如新启动 了一个shell 此时启动的shell就是subshell shell, shell就是subshell, 了一个shell,此时启动的shell就是subshell,新的 shell会从/etc/bashrc文件中读取环境配置 会从/etc/bashrc文件中读取环境配置. shell会从/etc/bashrc文件中读取环境配置.
Shell的基本概念 Shell的基本概念 Shell环境变量 Shell环境变量 正则表达式 输入输出重定向与管道 Shell脚本 Shell脚本
什么是Shell? 什么是Shell? Shell
Shell是linux的一个外 Shell是linux的一个外 它包在linux内核的外面, linux内核的外面 壳,它包在linux内核的外面, 为用户和内核之间的交互提 供了一个接口。当用户下达 供了一个接口。 指令给操作系统的时候, 指令给操作系统的时候,实 际上是把指令告诉shell,经 际上是把指令告诉shell, shell shell解释 解释, 过shell解释,处理后让内核 作出相应的动作。 作出相应的动作。而系统的 回应和输出的信息也由shell 回应和输出的信息也由shell 处理, 处理,然后显示在用户的屏 幕上. 幕上.
控制字符: 控制字符: 只在行头匹配正则表达式; ^:只在行头匹配正则表达式; $:只在行末匹配正则表达式 只在行末匹配正则表达式; $:只在行末匹配正则表达式; 转义字符,引用特殊字符; \ :转义字符,引用特殊字符; 例如: 例如: ^[0-9]: ^[0-9]:匹配以数字开头字符的行 ^[0-9][a-z]$:匹配以数字开头、以字母结尾字符的行; ^[0-9][a-z]$:匹配以数字开头、以字母结尾字符的行; ..$:匹配倒数第二个字符是句点的行 匹配倒数第二个字符是句点的行; \..$:匹配倒数第二个字符是句点的行;
正则表达式字符可以包含某些特殊的模式匹配字符。 正则表达式字符可以包含某些特殊的模式匹配字符。 通常用来表示特定要求的模式匹配。 通常用来表示特定要求的模式匹配。 例如: 例如: 句点表示匹配任意一个字符; .:句点表示匹配任意一个字符; .*:点和星号组合匹配零个或者多个任意字符; .*:点和星号组合匹配零个或者多个任意字符;
Shell的功能 Shell的功能
命令解释 Shell环境变量 Shell环境变量 正则表达式 输入输出重定向 命令记忆 命令和文件补全 命令别名设置
Shell的版本 Shell的版本 sh: sh:sh 就 是 Bourne Shell 的 缩 写 , 是 UNIX 系 统 最 早 的
shell。 shell。 bash: bash:bash 就 是 Bourne Again Shell 的 简 称 , 是 Bourne Shell的扩展 完全兼容Bourne Shell。 的扩展, Shell的扩展,完全兼容Bourne Shell。 csh: Shell是一种比 是一种比Bourne shell更适于编程的 shell, 更适于编程的shell csh:C Shell 是一种比 Bourne shell 更适于编程的 shell , 是美国加州大学Berkeley分校开发出来的,具有核C Berkeley分校开发出来的 是美国加州大学Berkeley分校开发出来的 , 具有核C 语言 相似的语法,但和sh不兼容。 sh不兼容 相似的语法,但和sh不兼容。 tcsh:tcsh是 Shell, Shell的一个增强 tcsh:tcsh 是 Enhanced C Shell , 是 C Shell 的一个增强 版。 ksh是 Shell的缩写 集合了C shell和 的缩写, ksh:ksh是Korn Shell的缩写,集合了C shell和Bourne shell的优点并且和Bourne shell完全兼容。 shell的优点并且和Bourne shell完全兼容。 的优点并且和 完全兼容 其它:ash, 其它:ash,zsh
4.1.4 输入输出重定向与管道
重定向
重定向:不使用系统的标准输入、 重定向:不使用系统的标准输入、标准输出或标准错误端 而进行重新指定,通常是重定向到一个文件中。 口,而进行重新指定,通常是重定向到一个文件中。 重定向包括:输入重定向、 重定向包括:输入重定向、输出重定向和错误重定向
如何在文件中查找只含有字母的电子邮件? 如何在文件中查找只含有字母的电子邮件? 如何在文件中查找只含有字母的行? 如何在文件中查找只含有字母的行? `\ grep `\..$` /etc/profile 这条命令是什么意思? 这条命令是什么意思? grep `^[0-9]\{3\}[^0-9] /etc/profile `^[0-9]\{3\}[^0这条命令又是什么意思? 这条命令又是什么意思? …… ………. ………. ……………
Shell的两种命令 Shel来自的两种命令1.内置命令:
包含在shell自身当中的,在编写shell的时候就已经 包含在shell自身当中的,在编写shell的时候就已经 shell自身当中的 shell 包含在内了。比如cd cd。 包含在内了。比如cd。
相关文档
最新文档