现在的位置: 首页 > 综合 > 正文

cd命令为何要实现成shell内建命令

2013年09月09日 ⁄ 综合 ⁄ 共 192字 ⁄ 字号 评论关闭

如果不使用内建命令而是fork出一个子进程并且在子进程中执行的话,不会改变父环境的路径。

因为执行结束了又回到了父shell环境,环境的pwd根本没有被改变,所以就会失败。

可以自己写一个脚本测试下:cd.sh

#!/bin/bash
cd /home/

然后执行./cd.sh 你会发现当前shell的路径根本没有变化。

同样的道理,想改变当前shell的很多参数和环境变量表内容都要使用内建命令。


抱歉!评论已关闭.