从当前shell中的文件执行命令
我想在终端的当前shell中执行来自文件(即脚本)的命令。
示例:我有文件ch_dir
包含以下内容:
#!/bin/bash cd /usr
现在如果我执行文件通常如下,那么它在不同的shell中执行命令:
pandya@pandya-desktop:~$ ./ch_dir pandya@pandya-desktop:~$
这里cd /user
在不同的shell中执行。
但我想在Current shell中执行。 我怎么做?
注意:这里cd
仅用于解释。 问题的目的是在当前shell中执行任何命令
使用内置命令source
(来自help -m source
):
source – 从当前shell中的文件执行命令。
问题中提到的执行示例:
pandya@pandya-desktop:~$ source ch_dir pandya@pandya-desktop:/usr$
在这里你可以看到cd /usr
在当前shell中执行 ,因此当前shell的目录已经改变了!
希望这有助于从当前shell中的文件执行命令输入。
只需运行脚本即可.
像这样:
pandya@pandya-desktop:~$ . ./ch_dir