一、字符界面简介
1.进入Linux字符界面
①Linux命令行界面
启动计算机系统后默认进入Linux命令行界面
root@rhel ~]# systemctl get-default
graphical.target
//查看计算机系统启动后要进入的默认目标,graphical.target表示图形化界面
[root@rhel ~]# systemctl set-default multi-user.target
//将multi-user.target目标设置为启动计算机系统后要进入的默认目标,multi-user.target表示命令行界面
第一步输入用户的登录名,系统根据该登录名识别用户;
第二步输入用户的密码。
②使用终端
在Linux系统图形化桌面环境中提供了打开终端命令行界面的方式,终端方式允许用户通过输入命令来管理计算机。
③使用虚拟控制台
在字符界面下,虚拟控制台的选择可以通过按下[Alt]键和一个功能键来实现,通常使用F1~F6键。按下[Alt+F2]键,说明用户进入了第二个虚拟控制台。然后只需按[Alt+F1]键,就可以回到第一个虚拟控制台。
在图形界面下,可以使用[Ctrl+ Alt+F2]~[Ctrl+ Alt+F6]键切换字符虚拟控制台,使用[Ctrl+Alt+F1]可以切换到图形界面。
2.关闭和重启Linux系统
①shutdown命令
②halt命令
③reboot命令
3.目标
在RHEL 7之前的版本,使用运行级别代表特定的操作模式。运行级别被定义为七个级别,用数字0到6表示,每个运行级别可以启动特定的一些服务。RHEL 8使用目标替换运行级别。目标使用目标单元文件描述,目标单位文件扩展名是.target,目标单元文件的唯一目标是将其他systemd单元文件通过一连串的依赖关系组织在一起。
每一个目标都有名字和独特的功能,并且能够同时启用多个。一些目标继承其他目标的服务,并启动新服务。systemd 提供了一些模仿System V init启动级别的目标,仍可以使用旧的telinit启动级别命令切换。
预定义目标和运行级别对应关系
运行级别 |
目标 |
目标的链接文件 |
功能 |
0 |
poweroff.target |
runlevel0.target |
关闭系统 |
1 |
rescue.target |
runlevel1.target |
进入救援模式 |
2 |
multi-user.target |
runlevel2.target |
进入非图形界面的多用户方式 |
3 |
multi-user.target |
runlevel3.target |
进入非图形界面的多用户方式 |
4 |
multi-user.target |
runlevel4.target |
进入非图形界面的多用户方式 |
5 |
graphical.target |
runlevel5.target |
进入图形界面的多用户方式 |
6 |
reboot.target |
runlevel6.target |
重启系统 |
在Linux系统下获取帮助
1.使用man手册页
一般情况下,Linux系统中所有的资源都会随操作系统一起发行,包括内核源代码。而在线手册是操作系统所有资源的一本很好的使用手册。有不懂的命令时可以用man查看这个命令,写程序时有不会用的函数可以用man查看这个函数,有不懂的文件时也可以用man查看文件。
一般情况下man手册页的资源主要位于/usr/share/man目录下。
通常使用者只要在命令man后,输入想要获取的命令的名称,man就会列出一份完整的说明,其内容包括命令语法、各选项的意义以及相关命令等。
命令语法:
man [选项] [名称]
2.使用--help选项获取帮助
使用--help选项可以显示命令的使用方法以及命令选项的含义。
命令语法:
[命令] --help
二、Shell基础
1.Shell简介
Bourne Shell(通称为sh)的开发,由S.R.Bourne创建。
Shell接收用户命令,然后调用相应的应用程序,同时它还是一种程序设计语言, 是系统管理维护时的重要工具。 作为命令语言,它交互式的解释和执行用户输入的命令或者自动地解释和执行预先设定好的一连串的命令。作为程序设计语言,它可以定义各种变量和参数,并提供了许多在高级语言中才具有的控制结构(循环和分支)。
Shell命令重新初始化用户的登录会话。当给出该命令时,就会重新设置进程的控制终端的端口特征,并取消对端口的所有访问。然后Shell命令为用户把进程凭证和环境重新设置为缺省值,并执行用户的初始程序。根据调用进程的登录用户标识建立所有的凭证和环境。
目前流行的Shell 有sh、csh 、ksh、tcsh 和bash等。大部分Linux系统的默认Shell类型为bash。
2.bash简介
bash最早是在1987年由布莱恩·福克斯开发的一个为GNU计划编写的Unix Shell。bash目前是大多数Linux系统默认的Shell。
bash的命令语法是Bourne shell命令语法的超集。数量庞大的Bourne shell脚本大多不经过修改就可以在bash中执行,只有那些引用了Bourne特殊变量或使用了Bourne内置命令的脚本才需要修改。bash的命令语法很多来自ksh和csh,比如命令行编辑、命令历史、目录栈、$RANDOM变量、$PPID变量以及POSIX命令置换语法。
3.bash命令
Linux系统的标准提示符包括了用户登录名、登录的主机名、当前所在的工作目录路径和提示符号。
以普通用户zhangsan登录名为rhel的主机,他的工作目录是/home/zhangsan。
[zhangsan@rhel ~]$
以root用户登录系统。
[root@rhel ~]#
Shell命令一般格式
命令语法:
[Shell命令] [选项] [参数]
所有选项在该命令的man手册页中都有详细的介绍,而参数则由用户提供。选项决定命令如何工作,而参数则用于确定命令作用的目标。
选项有短命令行选项和长命令选项两种。
Linux系统命令分类
bash 内置的命令。
应用程序。
使用bash
1.常用控制组合键
2.光标操作
①Linux命令中粘贴
在终端中使使用鼠标,直接在命令行界面中点击鼠标中键(通常是滚轮按钮)来粘贴文本。
3.特殊字符
4.通配符
三、Shell实用功能
1.命令行自动补全
在Linux系统中,有太多的命令和文件名称需要记忆,使用命令行补全功能可以快速的写出文件名和命令名。
2.命令历史记录
在操作Linux系统的时候,每一个操作的命令都会被记录到命令历史中,在以后可以通过命令历史查看和使用以前操作的命令。
bash启动的时候会读取~/.bash_history文件,并将其载入到内存中,$HISTFILE变量就用于设置~/.bash_history文件,bash退出时也会把内存中的历史记录回写到~/.bash_history文件中。
使用history命令可以查看命令历史记录,每一条命令前面都会有一个序列号标示。
命令语法:
history [选项]
3.命令排列
如果希望一次执行多个命令,Shell允许在不同的命令之间,放上特殊的排列字符。命令排列可以使用两种排列字符:“;”和“&&”。
(1)使用“;”
使用“;”命令时先执行命令1,不管命令1是否出错,接下来就执行命令2。
命令语法:
命令1; 命令2
(2)使用“&&”
使用“&&”命令时只有当命令1正确运行完毕后,才能执行命令2。
命令语法:
命令1&&命令2
4.命令替换
Shell命令的参数可以由另外一个命令的结果来替代,这种称之为命令替换。
1.使用“$( )”
命令语法:
命令1 $(命令2)
2.使用“``”
命令语法:
命令1 `命令2`
5.命令别名
在需要执行某一个非常长的命令时,所有的命令以及命令的选项、参数都要一一输入,很枯燥也容易出现错误。可以为常用命令定义快捷方式,这些快捷方式可以用比较简单的命令别名来定义。
1.创建别名
使用alias命令可以为命令定义别名。如果命令中有空格的话,就需要使用双引号。
命令语法:
alias [别名]=[需要定义别名的命令]
2.取消别名
当用户需要取消别名的定义时,可以使用unalias命令。
命令语法:
unalias [别名]
6.文件名匹配
文件名匹配使得用户不必一一写出文件名称就可以指定多个文件。这将用到一些特殊的字符,称之为通配符。
1.通配符“*”
“*”可匹配一个或多个字符。
2.通配符“?”
“?”可匹配一个字符。
7.管道
复杂的任务不是由大型软件完成,而是运用Shell 的机制,组合许多小程序共同完成。管道就在其中发挥着重要的作用,它可以将某个命令的输出信息当作某个命令的输入,由管道符号“|”来标识。
命令语法:
[命令1]|[ 命令2]|[ 命令3]
四、重定向
希望将命令的输出结果保存到文件中,或者以文件内容作为命令的参数,这时就需要用到重定向。重定向不使用系统的标准输入端口、标准输出端口或是标准错误端口,而是进行重新的指定。
四种方式:输出重定向、输入重定向、错误重定向以及同时实现输出和错误的重定向。
1.输出重定向
输出重定向,即将某一命令执行的输出保存到文件中,如果已经存在相同的文件,那么覆盖源文件中的内容。
命令语法:
[命令] > [文件]
输出追加重定向,即将某一命令执行的输出添加到已经存在的文件中。
命令语法:
[命令] >> [文件]
2.输入重定向
输入重定向,即将某一文件的内容作为命令的输入。
命令语法;
[命令] < [文件]
输入追加重定向,这种输入重定向告诉Shell,当前标准输入来自命令行的一对分隔符之间的内容。
命令语法;
[命令] << [分隔符]
> [文本内容]
> [分隔符]
3.错误重定向
错误重定向,即将某一命令执行的出错信息输出到指定文件中。
命令语法:
[命令] 2> [文件]
错误追加重定向,即将某一命令执行的出错信息添加到已经存在的文件中。
命令语法:
[命令] 2>> [文件]
4.同时实现输出和错误重定向
同时实现输出和错误的重定向,即可以同时实现输出重定向和错误重定向的功能。
命令语法:
[命令] &> [文件]
五、vi编辑器
vi编辑器是Linux系统字符界面下最常使用的文本编辑器,用于编辑任何ASCII文本,对于编辑源程序尤其有用。vi编辑器功能非常强大,通过使用vi编辑器,可以对文本进行创建、查找、替换、删除、复制和粘贴等操作。
在Linux系统Shell提示符下输入vi和文件名称后,就进入vi编辑界面。如果系统内还不存在该文件,就意味着创建文件,如果系统内存在该文件,就意味着编辑该文件。