khalidwind 发表于 2005-9-16 10:31:14

一个简单的shell脚本。为什么不能成功

#!/bin/bash

cd /vobs

很简单,就是想改变工作目录到/vobs下面。但脚本执行不成功。
我在网上搜索了一下,发现是因为这个shell是在一个子进程中运行的,当回到父进程的时候父进程的工作目录不能因为子进程的改变而改变。

那请问到底该怎么些一个脚本以改变当前工作目录呢

Kyd 发表于 2005-9-16 10:48:38

. ./scriptname
或者
source ./scriptname

khalidwind 发表于 2005-9-16 11:58:41

谢谢,但是又两个问题
1.如果不是在我自己的bin目录下执行source vob会提示
vobs: No such file or directory
请问怎么办
2。如果我不想用source。而是直接用vobs就能达到目的该怎么办。

fke7985 发表于 2005-9-16 12:08:45

1.呵呵,你的路径不对,找不到程序vobs,你要把它加入到系统的路径中去
2.你可以为你的vob起一个别名
修改你的 ~/.bashrc
加入
alias vobs 'source /路径/vobs'


退出后然后执行 source ~/.bashrc来即时生效
页: [1]
查看完整版本: 一个简单的shell脚本。为什么不能成功