[dmtsai@study ~]$
echo $SHELL
/bin/bash
<==
可
顺
利
显
示!
没
有
错误
!
[dmtsai@study ~]$
echo $.
0
<==
因
为没问题
,所以回
传
值
为
0
[dmtsai@study ~]$
12name=VBird
bash: 12name=VBird: command not found...
<==
发
生
错误
了!
bash
回
报
有
问题
[dmtsai@study ~]$
echo $.
127
<==
因
为
有
问题
,回
传错误
代
码
(
非
为
0)
#
错误
代
码
回
传
值依据
软
件而有不同,我
们
可以利用
这个
代
码来
搜
寻错误
的原因喔!
[dmtsai@study ~]$
echo $.
0
#
咦!怎么又
变
成正确了?
这
是因
为
"."
只与『上一
个执
行指令』有
关
,
#
所以,我
们
上一
个
指令是
执
行『
echo $.
』,
当
然
没
有
错误
,所以是
0
没错
!
o
OSTYPE, HOSTTYPE, MACHTYPE
:
(
主机硬件与核心的等级
)
我们在
第零章、计算器概论内的
CPU
等级
说明中谈过
CPU
,
目前个人计算机的
CPU
主要分
为
32/64
位,其中
32
位又可分为
i386, i586, i686
,而
64
位则称为
x86_64
。
由于不同等级的
CPU
指令集不太相同,因此你的软件可能会针对某些
CPU
½行优化,以求取½佳的软件性能。
所以软件就有
i386, i686
及
x86_64
之分。以目前
(2015)
的主流硬件来说,几乎都是
x86_64
的
天下!
因此
CentOS 7
开始,已经不支持
i386
兼容模式的安装光盘了~哇呜!½步的太快了!
要留意的是,½高½的硬件通常会向下兼容旧有的软件,但½高½的软件可能无法在旧机器上面
安装!
我们在
第二章
就曾说明过,
这里再强调一次,你可以在
x86_64
的硬件上安装
i386
的
Linux
操作系统,但是你无法在
i686
的硬件上安装
x86_64
的
Linux
操作系统!这点得要牢记
在心!
.
export
:
自定义变量转成环境变量
谈了
env
与
set
现在知道有所谓的环境变量与自定义变量,那么这两者之间有啥差异呢?其实这两
者的差异在于『
该变量是否会被子程序所继续引用
』啦!唔!那么啥是父程序?子程序?
这就得要
了½一下指令的下达行为了。
当你登入
Linux
并取得一个
bash
之后,你的
bash
就是一个独立的程序,这个程序的识别使用的是
一个称为程序标识符,被称为
PID
的就是。
½下来你在这个
bash
底下所下达的任何指令都是由这
个
bash
所衍生出来的,那些被下达的指令就被称为子程序了。
我们可以用底下的图示来简单的说
明一下父程序与子程序的概念: