系统内核用于在计算机启动时载入基本内存、 管理基本输入输出、管理进程初始化和进程的调度。
Shell
系统的命令解释器,翻译成中文也就叫壳,外壳的意思,就是最表面的,用于操作系统与用户的通信,相当于Dos中的command.com。Red Hat Linux 默认的shell 是Bash !
Shell与系统及子进程的层次关系
+ - - - - - - - - - - - - - - - - -- - - - - - - - +
| 用户进程 |
| + - - - - - - - - - - - - - - - - - - - - - -+ |
| | shell | |
| | + - - - - - - - - - - - - - - - - - - -+ | |
| | | Kernel | | |
| | | + - - - - - - - - - - - - -- - - -+ | | |
| | | | Hardware | | | |
| | | + - - - - - - - - - --- - - - - -+ | | |
| | + - - - - - - - - - - - - - - - - - - - + | |
| + - - - - - - - - - - -- - - - - - - -- - - - - + |
+ - - - - - - - - - - -- - - -- - - - - - - - - - - -+
Terminal Emulator 用户交互的窗口界面
终端模拟器是用户shell运行的平台,在终端模拟器上用户可以交互的操作系统及运行程序并得到提示和反馈,就像在文本编辑器中一样。
X Window 以C/S模式提供的图形界面接口
在X中操作,你会重新找回Windows的感觉。当然不只是这样Red Hat Linux中图形界面的易用性已经有了显著的提高,并且通过像GTK+和QT这样的开放的开发工具包,你可以创立自己的图形应用程序。
Window Manager 提供图形功能
Window manager是个可以帮你移动窗口和改变它们大小的程序。它通常也支持把一个窗口缩成一个图标或任务条。通常有某种程序执行机构。用户可以使用window manager来做他想做的——任何X应用程序应该可以在任何窗口管理器上工作。但是你一次只能运行一个Window Manager。也就是说,你可以切换于任何多个window manager,但是同一时刻你只能运行一个。屏幕上的所有程序都可以被正在运行的window manager管理。
Desktop Environment 桌面环境
GNOME和KDE不是窗口管理器(它们是桌面环境)。KDE是和一个叫KWM的窗口管理器一起的。GNOME则没和任何窗口管理器做在一起,你可以使用任何你想用的窗口管理器,虽然有一些是特地为GNOME写的(Enlightenment就是一个)。但是它Bash是GNU计划的一个组件。
在Linux里有很多的变量,大致可分为3种:
环境变量
内部变量
用户变量
用户可以通过这些变量获得系统、环境的信息
HOME:当前用户的主目录
PATH:当前用户的可执行文件搜索路径
LANG:程序应该使用的默认语言
PS1:行提示符
赋值:变量名=变量值
获取变量值 ${变量名}
例:VAR=hellorhce ;赋值
echo ${VAR} ;显示变量值
echo “hello world”
VAR=“hello”
echo ${VAR} world
read 从标准输入读取数据来为var1这个变量赋值
-p输出提示字符
read -p "Enter a filename: " FILE
!l:重复执行上一条以l为首的指令
!!:重复执行上一条指令
!-number:重复执行前第number条指令
!$:表示获得前面命令行中的最后一项内容
可以用<ctrl+r>来在history表中查询某条过往指令
命令行输出——‘ ’ 将一串字符当成一个字符串来对待,如果字符串中包含特殊含义的字符,不转义。
执行引用符——` ` 引用命令的执行结果
hello good everone
命令行输出——“ ”
将一串字符当成一个字符串来对待,如果字符串中包含特殊含义的字符,则转义。
命令行输出——‘ ’
将一串字符当成一个字符串来对待,如果字符串中包含特殊含义的字符,不转义
执行引用符——` `
引用命令的执行结果
在中括号内的表达式会被数学计算
用于取消命令行中字符的特殊含义
用于表示一行未结束
命令行结束符——;
例:pwd ; ls –l
子shell激活——()
在小括号内的命令行表示激活一个子shell后在子shell中运行
shell命令行支持在同一行的两条命令中插入&&(逻辑与)与 ||(逻辑或)
&&:当前一条指令执行成功时再执行后一条指令
||:当前一条指令执行失败时再执行后一条指令
全局设置文件:
① /etc/profile
② /etc/bashrc
用户设置文件:
④ ~/.bashrc\
用户可以alias来为一条命令取一个简单的别名
用户也可以用unalias来取消一条别名记录。
alias记录在shell中总是先行。
Ctrl + c:键盘中断请求。
Ctrl +s &Ctrl + q:暂停/恢复屏幕输出
Ctrl + l:清屏,相当于clear。
Tab:自动补完命令行与文件名
Tab键双击: 可以列出所有可能匹配的选择
Ctrl+u: 删除当前光标前的所有字符
ctrl+k: 删除当前光标后的所有字符