在OpenVMS中更改提示

时间:2016-03-30 14:54:23

标签: openvms vms vax

我正在寻求openVMS的一些帮助。

VMS下的默认提示为$

我想更新此内容以反映我在Unix / Linux中更改目录时所处的当前工作目录。

我创建了一个名为login.com的文件,并将其放入openVMS系统的主目录中,并添加了以下代码:

$ SET PROMPT='f$environment("default")'

哪个应该通过显示当前目录来工作,但是它仅在登录时反映我的主目录。当我更改目录时,它不会动态更新。如果我在终端中运行上面的命令,它将显示当前目录。

是否有更新login.com以在每次更改目录时动态更新提示?

1 个答案:

答案 0 :(得分:0)

据我所知,您可以做的最好的事情是创建一个命令文件来更改目录并设置提示。

使用以下内容创建名为$ set default 'p1' $ current = f$dir() $ d_start = f$locate ( "[", current ) + 1 $ d_stop = f$length ( current ) - 2 $ current_dir = f$extract( d_start, d_stop, current ) $ new_prompt = "SERVER::" + current_dir + ">" $ $loop: $ if f$length(new_prompt) .ge. 30 $ then $ d_start = f$locate ( ".", new_prompt ) + 1 $ new_prompt = "SERVER::" + f$extract ( d_start, d_stop, new_prompt ) $ goto loop $ endif $ set prompt='new_prompt 的文件:

LOGIN.COM

您可以根据提示的持续时间

更改循环中的条件

然后在您的CD.COM文件中创建一个指向具有$ DEFINE /GROUP CD "Disk:[Folder.Containing.COM.File]" 文件的目录的逻辑

CD Disk:[Full.Path.To.Dir]

然后像这样使用它:

CD [.subdir]

CD

如果您在另一个COM文件中使用gcloud compute ssh --zone=<cluster-zone> --ssh-flag="-D" --ssh-flag="10000" --ssh-flag="-N" "<cluster-name>-m" 命令,则唯一不会正确更新提示的时间。但它仍会正确更改目录。