【问题标题】:How to set the following in .cshrc for aliasing如何在 .cshrc 中为别名设置以下内容
【发布时间】:2012-07-11 03:40:27
【问题描述】:

我的 .cshrc 中有以下别名

alias fe-fat  "source fat  /prj/work"  
alias fe-fat1 "source fat1 /prj/work"

我想知道我们是否可以为 fat/fat1 设置一些变量,并将上面的 2 个别名组合成一个类似于下面的别名,这样每当我在 Unix 终端中键入 fe-<variable> 时,上面的别名应该可以工作

alias fe-<variable> "source <variable> /prj/work" 

【问题讨论】:

    标签: linux shell unix csh


    【解决方案1】:

    不,我认为 alias 不可能。

    你真正想要达到什么目的?

    编写一个基于参数启动其他命令的 bash 脚本非常简单(因此您可以键入 fe &lt;variable&gt; 而不是 fe-&lt;variable&gt;)。

    仅使用 2 个命令并不值得,但您也可以提供自定义自动完成脚本:请参阅 Line completion with custom commands

    【讨论】:

      【解决方案2】:

      有什么特别的原因你不会把它别名为带参数的东西吗?

      alias fe "source \!:1 /prj/work"
      
      fe fat   #=> source fat  /prj/work
      fe fat1  #=> source fat1 /prj/work
      

      【讨论】:

      • 嗨 Bryan,感谢它运行良好的解决方案 对上述解决方案再进行一次查询,例如我有一个安静的大词,如“fat_abcd”等,所以输入这个长词“fe fat_abcd”所以有没有办法我们可以为“fat_abcd”设置一个别名,如“fab”,然后使用你上面的解决方法“fe fab”我厌倦了别名,但它没有用所以有什么方法可以做到这一点
      • @Jamesbond 我不这么认为;最好的主意可能就是给它自己的别名,例如alias feb "source fat_abcd /prj/work"。如果你想要那种功能,我会使用 zsh 之类的东西,它提供global aliases
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-23
      • 2017-01-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-14
      相关资源
      最近更新 更多