Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash csh:识别脚本中的已知别名_Bash_Terminal_Alias_Csh - Fatal编程技术网

Bash csh:识别脚本中的已知别名

Bash csh:识别脚本中的已知别名,bash,terminal,alias,csh,Bash,Terminal,Alias,Csh,我的问题:我的终端中定义了一些别名。然后我执行一个csh脚本,该脚本需要使用该别名,但无法识别 我理解为什么它不能被识别,并且使用源代码执行脚本是可行的。然而,这是一个我无法使用的解决方案(出于各种原因…) 我可以看到,在bash中,已知的解决方案是向脚本添加shopt-s expand\u别名。但shopt在csh中不被认可 有匹配的解决方案吗?或任何其他?如果有更新脚本的选择:将alias命令放在一个文件中,例如,.cshalias,而不是整个脚本的源代码。在脚本内部,在开始处,将以下行添加

我的问题:我的终端中定义了一些别名。然后我执行一个csh脚本,该脚本需要使用该别名,但无法识别

我理解为什么它不能被识别,并且使用
源代码执行脚本是可行的。然而,这是一个我无法使用的解决方案(出于各种原因…)

我可以看到,在bash中,已知的解决方案是向脚本添加
shopt-s expand\u别名。但shopt在csh中不被认可


有匹配的解决方案吗?或任何其他?

如果有更新脚本的选择:将alias命令放在一个文件中,例如,.cshalias,而不是整个脚本的源代码。在脚本内部,在开始处,将以下行添加到此别名文件的源代码:
source.cshalias
。这应该可以


理想情况下,您编写的shell脚本应该包含两个别名文件:用户级文件
~/.cshrc
和系统级文件
/etc/csh.cshrc
,以便将来发生的任何更新也会反映在您的脚本中。也可能还有其他一些文件定义了别名,您必须在脚本中查找并找到这些别名的来源。

恐怕这也不是一个选项。别名不是由我定义的,我也不知道它们何时会被更新或更改。