在终端中自动源 shell 脚本

5 shell tcsh terminal

当我通过右键单击某处并选择“在终端中打开”打开终端窗口时,如何自动获取特定的 shell 脚本?

例如,每次打开终端时,我都需要运行以下命令行:

source myscript
Run Code Online (Sandbox Code Playgroud)

我怎样才能使它不必自动输入?

我的脚本是用 tsch 编写的:

#!/bin/tcsh
setenv DISPLAY 127.0.0.1:10.0
cd /ast/dcm/data
Run Code Online (Sandbox Code Playgroud)

我正在使用 CentOS 7。

ter*_*don 5

我不完全确定这如何与您的文件管理器一起使用,但大概“在终端中打开”是您在目录上使用的东西,它只是在该位置打开一个终端窗口。如果是这样,从交互式非登录 shell 的初始化文件中获取脚本应该就足够了。如果您使用的是bash,也就是说~/.bashrc,您需要编辑该文件并向其中添加以下行:

. ~/myscript
Run Code Online (Sandbox Code Playgroud)

这假设myscript在您的~/. 现在,每次启动新 shell 时,包括打开新终端时,都将获取该文件。


但是请注意,您显示的脚本不是 bash 脚本。setenvbash 中没有命令,那是 C-shell 的东西。bash 等价物将是:

#!/bin/bash
export DISPLAY=127.0.0.1:10.0
cd /ast/dcm/data
Run Code Online (Sandbox Code Playgroud)