第 4章字符界面与 Shell
4-1 字符界面简介
4-1-1 虚拟终端
– Linux字符界面即虚拟终端 。 默认有 7个,1~6是字符界面,第 7个是图形化用户界面 ( 启动后 ) 。
4-1-2 字符界面下的用户登录
4-1-3 Shell命令
4-1-4 字符界面下注销,重启与关机
4-1-3 Shell命令
Shell可执行的用户命令可分为两大类:内置命令和实用程序;实用程序又分为:
– Linux程序、应用程序,Shell脚本、用户程序
1,Shell命令提示符
2,Shell命令格式命令名 [选项 ] [参数 ] ↓
注意:
– Linux系统严格区分英文字母的大小写
– Shell自动过滤多余的空格,
[ root@localhost root ] #
用户名 主机名 目录名 提示符
4-1-4 字符界面下注销,重启与关机
1,注销
– 注销即退出登录状态 。,exit‖ 命 令 或
CTRL+D。
– 注销一个用户不影响其他 登录 用户的操作 。
2,重启
–,reboot‖或,shutdown –r now‖命令
3,关机 ( 不是简单地关闭电源 )
–,halt‖或者,shutdown –h now‖命令
shutdown为 root用户命令
4-2 简单 Shell命令实例
4-2-1 与时间相关的 Shell命令
4-2-2 与文件和目录相关的 Shell命令
4-2-3 获得帮助
4-2-4 其他 Shell命令
4-2-1 与时间相关的 Shell命令
1,date命令格式,date [MMDDhhmm[YYYY]]
功能:查看或修改系统时间 。
[例 4-1] 查看系统时间 。
2,cal命令格式,cal [YYYY]
功能:显示日历 。
[例 4-3] 显示本月的日历 。
4-2-2 与文件和目录相关的
Shell命令( pwd)
1,pwd命令:
格式,pwd
功能:显示当前目录的绝对路径 。
注:
– 绝对路径是指从根目录 ( /) 开始到到当前目录 ( 文件 ) 的路径;
– 而相对路径是指从当前目录到其下子目录 ( 文件 )
的路径 。
– 目录之间的层次关系总是用,/‖来表示 。
4-2-2 与文件和目录相关的
Shell命令( cd)
2,cd命令:
格式,cd [目录 ]
功能:切换到指定目录 。
[例 4-4] 切换到用户主目录 。
注:
– 超级用户的主目录是 /root;
– 而普通用户的主目录是 /home下与该用户同名的子目录,普通用户 hellen主目录默认就是 /home/hellen。
4-2-2 与文件和目录相关的
Shell命令( ls)
3,ls命令格式,ls [选项 ] [文件 |目录 ]
功能:显示指定目录中的文件和子目录信息 。
主要选项说明:
-a( all),-l( list),-d( directory),-t( time)
-R( recursive)
[例 4-6] 查看当前目录下文件和子目录信息 。
[例 4-8] 查看 /home目录的详细信息 。
4-2-2 与文件和目录相关的
Shell命令( cat)
4,cat命令格式,cat [选项 ] 文件列表功能:显示文本文件的内容 。
主要选项说明:
-n( number) 在每一行前显示行号
[例 4-9] 查看当前目录下的 dd文件的内容,
并在每一行前加行号 。
4-2-2 与文件和目录相关的
Shell命令( more和 less)
5,more命令格式,more 文件功能:分屏显示文本文件的内容 。
[ 例 4-10] 分 屏 显 示 /usr/share/doc/bash-
2.05b/loadables/print.c文件的内容 。
注,按 Enter键显示下一行内容;按空格键显示下一屏的内容:按 q键,则退出 more命令 。
less 命令和 more命令唯一的不同是 more命令只能向后翻页,而 less命令可以向前向后翻页 。
4-2-2 与文件和目录相关的
Shell命令( tail和 head)
6,tail命令格式,tail [选项 ] 文件功能:显示文本文件的结尾部分,默认显示文件的最后
10行 。
主要选项说明:
-n 数字 ( number) 指定显示的行数
[例 4-11] 显示以下文件的最后 5行内容 /usr/share/doc/bash-
2.05b/loadables/print.c。
head命令可以显示文本文件的开头部分
4-2-3 获得帮助( man)
1,man命令格式,man 命令名功能:显示指定命令的手册页帮助信息 。
[例 4-12] 查看 ls命令的手册页帮助信息 。
man ls
注:
屏幕显示出该命令在 Shell手册页的第一屏帮助信息,用户可使用上下方向键,PgDn,PgUp键前后翻阅帮助信息,按 q键则退出 man命令 。
4-2-3 获得帮助( --help)
2,--help选项格式:命令名 --help
功能:显示指定命令的帮助信息 。
使用 --help选项也可获取命令的的帮助信息,
但不是所有的命令都有此选项 。 help选项提供的帮助信息多为中文 。
[例 4-13] 查看 ls命令的帮助信息 。
4-2-4 其他 Shell命令
1,clear命令:
格式,clear
功能:清除当前终端的屏幕内容 。
2,wc命令:
格式,wc [选项 ] 文件功能:显示文本文件的行数,字数和字符数 。
主要选项说明,-c( character),-l( line),-w
( word)
[例 4-14] 显示 dd文件的统计信息 。
4-3 深入 Shell
4-3-1 Shell命令的通配符
4-3-2 输入输出重定向
4-3-3 管道
4-3-4 历史记录
4-3-5 别名
4-3-6 自动补全
4-3-7 复制与粘帖
4-3-1 Shell命令的通配符
( 1) 通配符,*”
– 通配符,*” 代表任意长度的任何字符 。
( 2) 通配符,?‖
– 通配符,?‖代表任何一个字符 。
( 3) 字符组通配符,[ ]‖,,-‖ 和,!,
–,[ ]‖表示指定的一个字符范围,而,[ ]‖内的任意一个字符都用于匹配 。
–,-‖在,[ ]‖内表示连接符 。 如,[abc]*‖或,[a-
c]*‖
– ―!,表示不在这个范围之内的其他字符 。
4-3-2 输入输出重定向(输出)
Linux的标准输入是指键盘,标准输出和标准错误输出是屏幕。
1,输出重定向输出重定向就是命令执行的结果不在标准输出
( 屏幕 ) 上显示,而是保存到某一文件的操作 。
Bash通过符号,>‖来实现输出重定向功能 。
[例 4-15] 将当前目录下所有文件和子目录的详细信息保存到 list文件 。
4-3-2 输入输出重定向( 附加 )
2,附加输出重定向功能与输出重定向基本相同,不同的之处在于:附加输出重定向将输出内容添加在原来文件已有内容的后面,而不会覆盖其内容 。 Bash通过符号,>>‖来实现 。
[例 4-18] 向 f1文件添加内容 。
4-3-2 输入输出重定向( 错误 )
3,输出重定向
Shell中标准输出与错误输出是两个独立的操作 。
– 程序的执行结果显示在屏幕上,而错误信息重定向到指定文件,使用,2>‖符号 。
– 程序的执行结果和错误信息都重定向到同一文件,
使用,&>‖符号 。
[例 4-19] 查看 /temp目录的文件和子目录信息,如果有错误信息,则保存到 err文件 。
4-3-2 输入输出重定向( 输入 )
4,输入重定向
– 不从标准输入 ( 键盘 ) 读入数据,而是从文件读入数据,用,<‖符号来实现 。
– 因为大多数的命令都以参数的形式在命令行上指定输入文件,所以输入重定向并不常使用 。
– 但是少数命令 ( 如 patch命令 ) 不接受文件名作为参数,必须使用输入重定向 。
,cat < f1‖命令的输出结果与,cat f1‖命令完全相同。
4-3-3 管道管道将多个命令前后连接起来形成一个管道流 。
管道流中的每一个命令都作为一个单独的进程运行,前一个命令的输出结果作为后一个命令的输入,从左到右依次执行 。
利用,|‖符号可实现管道功能 。
[例 4-21] 利用管道统计当前目录下的文件和子目录的数目 。
4-3-4 历史记录
每 个 用 户 在 自 己 的 主 目 录 下 都 有 一 个 名为,bash_history的隐藏文件,保存曾执行过的
Shell命令 。 Bash默认最多保存 1000。
– 用上下键,PgUp或 PgDown键查找,按 Enter再次执行或命令行进行编辑,修改后再执行 。
– history命令格式,history [数字 ]
功能:查看 Shell命令的历史记录 。
[例 4-22] 查看最近执行过的 5个 Shell命令 。
4-3-5 别名
别名是按照 Shell命令的标准格式所写的命令行的缩写格式,alias [别名 =’标准 Shell命令行 ’ ]
功能:查看和设置别名 。
[例 4-25] 查看当前用户可使用的别名命令。
[ 例 4-26] 设 置别 名 命令 tab,其功 能 是在 vi 中打开
/etc/inittab文件 。
4-3-6 自动补全
当用户输入不完整命令时,系统会自动找出匹配的文件或命令的功能。用 Tab键。
1,自动补全文件或目录名
[例 4-27] 当前目录下查看某 n打头文件的内容 。
输入,cat f‖,连续按两次 TAB键
2,自动补全命令名
[例 4-30] 自动补全以,ca‖开头的命令 。
输入,ca‖,连续按两次 TAB键
4-3-7 复制与粘帖
RHEL 3 AS每次启动后都会自动运行 gpm
守护进程。
这个进程运行后,用户在字符界面可利用鼠标实现复制与粘贴功能。
具体操作方法是:用户按住鼠标左键拖动需要复制的文本,使其反白显示,即完成复制,然后按鼠标右键则复制内容粘贴到光标所在的位置。
4-4 文本编辑器 vi
4-4-1 vi的三种工作模式
– 命令模式,文本编辑模式和最后行模式
4-4-2 启动 vi
– 格式,vi [文件 ]
– 界面:编辑区和状态 /命令区
4-4-3 编辑文件
4-4-4 保存文件与退出 vi
4-4-3 编辑文件
1,输入文本
– 在命令模式下输入 i,I,a,A,o,O命令中的任一个进入文本编辑模式,按 ESC键回到命令模式 。
2,查找字符串
– 在命令模式下输入 /字符串,?字符串,n,N命令可查找指定的字符串 。
3,撤消与重复
– 在命令模式下输入 u,,可撤消或重复编辑工作 。
4,文本块操作
– 在最后行模式下可对多行文本 ( 文本块 ) 进行操作 。
–,set nu,,set nonu,,n1,n2 m n3,,n1,n2 d,,n1,n2 s/
字符串 1/字符串 2/g
4-4-4 保存文件与退出 vi
在命令模式下连续按两次 ZZ键,将保存编辑的内容并退出 vi。
最后行模式下
–,w 文件 保存为指定的文件。
–,q 退出 vi。
–,q! 不保存文件,直接退出 vi。
–,wq 存盘并退出 vi。
4-5 图形化用户界面与字符界面
4-5-1 图形化用户界面的启动方式
– 自动启动:安装系统时选择登录类型为 「 图形化 」
系统将自动启动图形化用户界面
– 手工启动:若选择 「 文本 」 则出现字符界面 。
4-5-2 运行级别
4-5-3 手工启动图形化用户界面
– 可在任何一个虚拟终端手工启动图形化用户界面:
输入,startx‖命令;该虚拟终端号即改为 7号 。
4-5-2 运行级别
是指 Linux为了适应不同的需求,在启动的时候规定的不同运行模式。
– 3 完整多用户模式,仅提供字符界面。
– 5 完整多用户模式,自动启动图形化用户界面。
通过修改 /etc/inittab文件可改变启动时的运行级别。
–,id:数字,initdefault‖的行指定启动时的运行级别,改变在下次启动时生效。
4-5-3 手工启动图形化用户界面
桌面操作完成在关闭图形化用户界面后返回到半部字符界面:
– 单击 「主菜单」 —「注销」 —「确定」
– 按 CTRL+ALT+BACKSPACE
启动前,用户还设定启动哪种桌面环境:
格式,switchdesk gnome|kde
功能:将桌面环境切换为 GNOME或 KDE中任一个 。
[例 4-31] 将桌面环境切换为 KDE后手工启动 。
switchdesk kde
startx
4-6* zhcon中文平台
zhcon是工作于 Linux字符界面的外挂式中日韩语言平台 。
利用 zhcon中文平台可解决 RHEL 3 AS字符界面下中文无法正确显示的问题 。
安装光盘不包含 zhcon 软件,用户可从
http://zhcon.sourceforge.net/index_cn,html 网站可下载 rpm格式的 zhcon软件包 。
,zhcon‖命令启动 zhcon中文平台
按 CTRL+D组合键则可退出 zhcon中文平台 。