一、前言
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可以用来查看命令、函数或者文件。另外也可以现实一些gzip格式的文件
man [选项] [命令名称]
(2)现实ls命令的man手册页
man ls
2.使用help命令
(1)只要在所查找的命令后面输入help命令,然后就可以看到搜查找命令的内容了
(2)命令语法: [命令] --help
(3)查看mkdir命令帮助
mkdir --help
3.whereis命令:查找命令所在的位置
(1)命令语法:whereis [选项] [命令名]
(2)查找ls命令在什么目录下
whereis ls
三、Shell基础
1.普通用户提示符"$",root用户提示符"#"
2.Shell命令可能含有一些可选项和参数,一般格式为:
[Shell命令] [可选项] [参数]
3.Linux系统由4个部分组成
(1)内核
(2)Shell
(3)文件系统
(4)应用程序
4.Shell位于核心和操作者之间的一层使用者界面
5.Shell类型和功能
6.开始使用bash
(1)命令类型:bash内置的命令;应用程序
7.bash通配符
8.常用控制组合键
9.快速补全Tab,Tab键称为"命令行自动补全"键
(1)快速跳转到/usr/src/redhat/目录
cd /u<Tab>/sr<Tab>/r<Tab>
10.命令历史记录
通过按下向上方向键,可以向后遍历最近在控制台下输入的命令,通过向下方向键,可以向前遍历命令
(1)通过光标和功能键(Home,End等键),可以浏览并编辑命令行,还可以用键盘的快捷方式来完成一般的编辑,其主要的功能如下:
【Ctrl+k】:删除从光标到尾部的部分
【Ctrl+u】:删除从光标到行首的部分
【Alt+d】:删除从光标到当前单次结尾的部分
【Ctrl+e】:将光标移到行尾
【Alt+a】:将光标移到当前单次头部
【Alt+e】:将光标移到当前单次尾部
【Ctrl+y】:插入最近删除的单词
【!$】:重复前一个命令最后的参数
(2)使用命令行记录功能键
#mkdir /root/aaa
//创建目录/root/aaa
#cd !$ <===>cd /root/aaa
!$是指重复前一个命令的最后的参数,参数是/root/aaa
#pwd (现实用户的当前目录,这里显示用户的当前目录是/root/aaa)
/root/aaa
11.可用的Shell快捷方式
"~"就是用户主目录的简写形式
12.命令的排列、替换和别名
(1)命令的排列:如果希望一次执行多个命令,Shell允许在不同的命令之间,放上特殊的排列字符。如下两种方式:
使用";"
使用“;”命令的时候限制性命令1,不管命令是否出错,接下来执行命令2
命令语法:
明林1:命令2
(2)[例4.14]使用排列命令";"同时执行两个命令
ls -l /boot;du -hs /root
先在屏幕上显示/boot目录中的所有内容,然后列出目录/root及其子目录所占的磁盘的大小。
(3)使用"&&":只有当命令1正确运行完毕后,才能执行命令2
命令语法:命令1&&命令2
(4)使用排列命令&&同事执行两个命令
(5)命令替换
命令替换这种机制的语法如下:
命令1 $(命令2)
出了使用$ ()命令之外,还可以使用后引号"`",命令语法如下所示:
命令1 `命令2`
(6)命令别名
命名语法:
alias [别名] = [需要定义别名的命名]
13文件名匹配和输出重定向
文件名匹配使得用户不必一一写出文件名称就可以指定多个文件
*可以匹配一个或者多个字符
第二个通配符是问号"?"。在匹配的时候,一个问号只能代表一个字符
(1)命令语法:
[命令1] | [命令2] | [命令3]
(2)使用简答的管道
#ls /etc|more
/命令ls /etc是现实etc目录的内容,命令more是分页现实内容
· (3)使用复杂的管道
rpm -qa| grep a |more
rpm -qa显示已经安装在系统上的RPM包,命令grep a 是过滤软件包,命令more是分页显示这些信息
(4)重定向文件
重定向的5种方式:输出重定向;输入重定向;错误重定向;追加重定向以及同事实现输出和错误重定向。
(5)输出重定向
即将command命令的输出保存到文件file中,如果存在相同的文件,则覆盖文件中的内容。
命令语法:command > file
(6)使用输出重定向将目录/boot的内容保存到文件/root/abc
(7)使用echo命令和输出重定向创建文本文件/root/mm,内容是hello
echo hello > /root/mm
cat /root/mm
//显示文件/root/mm,可以看到文件的内容是hello
(8)输入重定向
输入重定向,即将文件file的内容作为command命令的输入
命令语法:command<file
使用输入重定向将文件/root/mm的内容作为输入让cat命令执行
cat < /root/mm
(9)错误重定向:错误重定向,即将command命令执行的出错信息输出到文件file中去
命令语法:command 2 >file
查看根本不存在的/root/kk文件,出现报错信息,将其保存到文件/root/b中
cat /root/kk 2>root/b
cat:/root/kk:没有那个文件或者目录
//使用cat命令查看/root/b文件,可以看到其内容就是执行命令cat /root/kk的报错信息
(10)追加重定向,即将command命令执行的输出添加到已经存在的文件file中去
命令语法:command>>file
使用追加重定向将数据写入文件/root/a文件中去
#echo aaa>/root/a
//先创建文件/root/a,文件内容是aaa
(11)同时出现输出和错误重定向:可以同时实现输出重定向和错误重定向的功能
命令语法:command &>file
同时使用输出和错误重定向:
ls /boot &>/root/kk
cat /root/kk
同时使用输出和错误重定向
四、vi编辑器
文本编辑器有很多,文本模式下的编辑器有vi,vim和nano,vi和vim是Linux系统中最常用的编辑器。
1.vi的基本概念
(1)vi编辑器可以对文本进行创建、查找、替换、删除、复制和粘贴等操作
(2)vi编辑器有三种基本的工作模式,分别是命令行模式、插入模式和末行模式
(3)命令行模式:控制屏幕光宝的移动,字符、字或行的删除,移动、复制某区域及进入插入模式,或者末行模式
(4)插入模式:只有在插入模式下,才能将文字插入,按"ESC"键回到命令行模式
(5)末行模式:将文件保存或者退出vi编辑器,也可以设置编辑环境,如寻找字符串、列出行号等。
2.vi的基本操作
(1)进入vi编辑器,在Shell下输入vi及文件名称后,就可以进入vi编辑器画面
(2)切换至插入模式或者编辑模式
在命令行模式下按字母"I"就可以进入插入模式,这个时候就可以开始输入文字了
(3)退出vi以及保存文件
在命令行模式下,按冒号键":"可以进入末行模式。
输入"wq",存盘并退出vi
输入"q!",不存盘强制退出vi
3.命令行模式操作
在shell提示符下输入"vi 文件名"之后就进入了命令行模式,在命令行模式下是不能输入任何数据的
(1)进入插入模式
进入插入模式的操作如下:
按"i":从光标的当前位置开始输入文字
按"a":从目前光标的所在位置的下一个位置开始输入文字
按"o":从光标所在行的下面插入一行,从行首开始输入文字
按"I":从光标所在行的行首插入
按"A":从光标所在行的行末插入
按"O":在光标所在行的上面插入一行
按"s":删除光标所在位置的一个字符,然后进入插入模式
按"S":删除光标所在的行,然后进入插入模式
4.从插入模式切换为命令行模式
(1)从插入模式切换为命令行模式
从插入模式切换到命令行模式只需要按下"ESC"键
(2)存盘退出:"ZZ"表示存盘退出
(3)不存盘退出:"ZQ"
5.使用末行模式进行操作
(1)在使用末行模式之前,请记住先按“Esc”键确定已经处于命令行模式后,再按冒号“:”即可进入末行模式。
(1)列出行号:set nu,会在文件中的每一行前面列出行号
(2)取消列出行号:"set nonu"
(3)跳到文件中的某一行
"n"表示一个数字,在冒号后面输入一个数字,然后再按下“回车键”就会跳到该行了,