据我所知,您能做的最好的事情是创建一个命令文件来更改目录并设置提示。
创建一个名为CD.COM
以下内容的文件:
$ 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 文件中使用该命令。但是,它仍会正确更改目录。