首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

shell 编程 /* 不定期更新 */

2012-08-22 
shell 编程 /****** 不定期更新 **************/1、 shell 编程跳转目录使用 cd 时无效例如 : 脚本 cd.sh#!

shell 编程 /****** 不定期更新 **************/

1、 shell 编程跳转目录使用 cd 时无效

例如 : 脚本 cd.sh

#!/bin/sh

cd /etc 


解决办法和出错原因

这是因为你的脚本是由shell终端fork产生的子shell执行的,所以脚本执行完毕子shell也结束,因而返回父shell也就是当前的终端

可使用 

# source cd.sh    或者

# . . /cd.sh   注意这里的格式为 #点/空格/点/cd.sh

也就是说我们所建立的  。sh 程序本身是Linux shell 创建的一个子进程。在使用cd 跳转时,实际是已经执行了跳转指令了,但在

这个 .sh 脚本结束的时候,父进程 终端shell 就拿到了主动权,它又将目录转回为原来的目录,执行下面的脚本,有助于你理解这个问题


#! /bin/sh

cd  /etc

mypath='pwd'

echo "$mypath"


执行后,会打印信息可以帮你理解上面的问题。

热点排行