如何将csh别名转换为与MODULEFILE兼容的set alias命令?

如何将csh别名转换为与MODULEFILE兼容的set alias命令?,module,tcl,alias,csh,modulefile,Module,Tcl,Alias,Csh,Modulefile,我有一堆别名,我想和同事们分享,我想把它放在我们的项目中。是否有一个脚本可以为我进行转换?或者至少给我一个好的开始,然后我可以修复那些翻译不好的 另外,有更多代表的人可以创建modulefile标记吗?我不知道有任何工具可以进行翻译,但是如果别名都是一行代码,您可以使用类似的工具: 首先,制作一个像这样的Tcl脚本,例如,名为convertalas.Tcl: while {[gets stdin line] >= 0} { if {[regexp {^alias (\w+)='(.

我有一堆别名,我想和同事们分享,我想把它放在我们的项目中。是否有一个脚本可以为我进行转换?或者至少给我一个好的开始,然后我可以修复那些翻译不好的


另外,有更多代表的人可以创建modulefile标记吗?

我不知道有任何工具可以进行翻译,但是如果别名都是一行代码,您可以使用类似的工具:

首先,制作一个像这样的Tcl脚本,例如,名为
convertalas.Tcl

while {[gets stdin line] >= 0} {
    if {[regexp {^alias (\w+)='(.*)'$} -> name def]} {
        puts [list set-alias $name $def]
    } else {
        puts stderr "Rejected line: $line"
    }
}
然后在bash命令行中这样使用它(其中,
bash$
是提示符):


然后,您必须破解
aliases.def
文件,但它应该给您一个开始。它还将打印出任何它无法处理的行(毕竟,这只是一个愚蠢的脚本…

不,我对modulefile的内容了解不多。
bash$ alias | tclsh convertalias.tcl >aliases.def