linux - 更改目录在 shell 脚本中不起作用

标签 linux shell

我被困在 linux 的 shell 脚本中更改目录。

#!/bin/sh
cd /driver

上面没有改变目录。 Shell 在其自己的上下文中运行,因此它无法为 linux 终端提供更改的驱动器(进入驱动程序)

但如果我给 光盘/驱动程序 ls 它在驱动程序目录中给出 ls 的正确输出再次来自 driver directory

任何人都可以帮助我获得具有实际更改路径(进入驱动程序)的终端。

最佳答案

如果你运行你的脚本

./scriptname

您正在打开一个执行脚本命令的子 shell。在该子 shell 中更改目录不会影响您从中调用脚本的 shell 的工作目录。相反,如果您键入

源./scriptname

你应该得到想要的结果。

关于linux - 更改目录在 shell 脚本中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18248454/

相关文章:

shell - zsh 内置的 "where"的目的是什么?

c - 通过 netlink 将结构从内核发送到用户空间

python - Beeware 'briefcase create' 要求 cairo >= 1.15.10

Android:通过 adb shell am 启动应用程序信息对话框

linux - 无法在 Jenkins Execute Shell 的 docker 容器内执行命令

shell - MYSQL 在一个事务中重放转储文件全部或全部

linux - 系统侧 C 与 C?

linux - 如何使用定时任务

Python 3 不通过 stat 检测符号链接(symbolic link)

linux - "<<"运算符如何在 linux shell 中工作?