[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
所衍生出来的,那些被下达的指令就被称为子程序了。
我们可以用底下的图示来简单的说
明一下父程序与子程序的概念: