如何在一台机器上运行一个外壳的多个版本

破骨细胞

为了在尽可能多的环境中测试某些脚本1,我设置了多个具有UNIX(或类似Unix的操作系统)的VM:

  • 的Linux
  • 的Solaris
  • OS X 2
  • FreeBSD的

不过,我认为,在许多方面,使用我计划关心的每个Shell的不同版本进行测试实际上比使用不同的操作系统进行测试更为重要。

因为我不想让我的VM看起来似乎无休止地排列,所以我想在任何给定的VM上安装每个Shell的多个版本。例如,如果我在以下环境下[:bash,:zsh,:fish,:ksh,:csh,:tcsh,:sh,:dash,:ash]进行测试,那么我有9个shell,并且如果您假设我正在平均测试每个外壳的3个版本,那么我将拥有100多个VM:

# operating_systems * shells * shell_versions
            4       *   9    *     3

有没有切实可行的方法在单个计算机或虚拟机上安装和使用给定外壳的多个版本?我可以(例如)在一个Linux VM上全部安装Bash 1,Bash 2,Bash 3和Bash 4吗?

我意识到

  1. 一些组合不太重要,可能会被忽略,并且
  2. 最终,我还要测试每个操作系统的多个版本,

但是这些问题与该问题确实是分开的,因此我将这些问题放在一边,以考虑这是否可能:

那么:有没有可行的方法在一台机器上安装和使用给定外壳的多个版本?


1 我使用的是“脚本”一词。的第一件事情,我想测试的东西,将通过一个的shell源rc文件,不管是.zshrc.bash_profile或什么的,所以不会有自己的家当线。因此,使一小段代码可以跨多个外壳工作的愿望。我希望在不同的机器上使用的函数和别名可能是在shell上有用的其他东西,尽管它们不一定都拥有我最喜欢的shell(Z Shell),但可能会让我使用Bash或Korn。还有一些我可能想在多台机器的shell脚本中使用的有用的代码片段,即使当我无法将我最喜欢的shell放在shebang行中时也是如此。

2 完全切线的注释,仅包括其目的是为了避免引起任何误解:我实际上尚未设置OS X VM,因为这很麻烦,但我希望将其包括在列表中,所以没有人会说:“嘿!您为什么不包括OS X !?”

破骨细胞

asdf专门用于“使用单个CLI工具管理多个运行时版本”,无论该运行时是语言,shell还是其他。它有一个用于Zsh插件,所以这比滚动您自己的解决方案要方便得多。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在一台机器上运行一个外壳的多个版本

来自分类Dev

如何在一台机器上运行多台Cassandra服务器并形成一个集群环?

来自分类Dev

如何在同一台机器上使用 docker 为一个项目托管多个环境?

来自分类Dev

如何在同一台机器上运行多个硒测试套件

来自分类Dev

如何在同一台机器上运行多个 Apache Ignite 节点?

来自分类Dev

在同一台机器上运行两个cassandra版本

来自分类Dev

如何在一台机器上编译幻象,然后在另一台机器上“移植”?

来自分类Dev

如何在 VMware 和 Virtualbox 上运行同一台机器?

来自分类Dev

如何在一台机器上设置多个Web客户端

来自分类Dev

JBoss 7:独立或域:在一台机器上作为一个(相同)应用程序运行

来自分类Dev

是否可以在同一台机器上安装多个版本的 hyperledger composer?

来自分类Dev

同一台机器上的多个Git用户

来自分类Dev

一台机器上的多个操作系统

来自分类Dev

为什么一个tfs构建摘要显示在一台机器上而不是另一台机器上的测试结果

来自分类Dev

如何在一台机器上通过带有资源(.txt文件)的ssh在ssh上运行Shell脚本?

来自分类Dev

如何在一台机器上通过带有资源(.txt文件)的ssh在ssh上运行Shell脚本?

来自分类Dev

在同一台机器上使用两个不同的php版本

来自分类Dev

在一台机器上可以运行多个rabbitmq实例吗?

来自分类Dev

在一台机器上可以运行多个rabbitmq实例吗?

来自分类Dev

一台机器上可以运行多个http服务器?

来自分类Dev

我可以在同一台机器上同时运行多个 ansible 实例吗?

来自分类Dev

厨师/刀在同一台机器上运行两个环境

来自分类Dev

一台机器上运行两个监视器需要什么

来自分类Dev

如何与群管理器在同一台机器上运行docker群节点?

来自分类Dev

如何在同一台机器上安装opencv 2.4和opencv 3

来自分类Dev

如何在一台机器上使用GitLab和Gitlab-Mattermost?

来自分类Dev

如何在另一台机器上克隆RStudio环境

来自分类Dev

如何在Ubuntu的另一台机器上移动Alpine邮件?

来自分类Dev

如何在同一台机器上安装opencv 2.4和opencv 3

Related 相关文章

  1. 1

    如何在一台机器上运行一个外壳的多个版本

  2. 2

    如何在一台机器上运行多台Cassandra服务器并形成一个集群环?

  3. 3

    如何在同一台机器上使用 docker 为一个项目托管多个环境?

  4. 4

    如何在同一台机器上运行多个硒测试套件

  5. 5

    如何在同一台机器上运行多个 Apache Ignite 节点?

  6. 6

    在同一台机器上运行两个cassandra版本

  7. 7

    如何在一台机器上编译幻象,然后在另一台机器上“移植”?

  8. 8

    如何在 VMware 和 Virtualbox 上运行同一台机器?

  9. 9

    如何在一台机器上设置多个Web客户端

  10. 10

    JBoss 7:独立或域:在一台机器上作为一个(相同)应用程序运行

  11. 11

    是否可以在同一台机器上安装多个版本的 hyperledger composer?

  12. 12

    同一台机器上的多个Git用户

  13. 13

    一台机器上的多个操作系统

  14. 14

    为什么一个tfs构建摘要显示在一台机器上而不是另一台机器上的测试结果

  15. 15

    如何在一台机器上通过带有资源(.txt文件)的ssh在ssh上运行Shell脚本?

  16. 16

    如何在一台机器上通过带有资源(.txt文件)的ssh在ssh上运行Shell脚本?

  17. 17

    在同一台机器上使用两个不同的php版本

  18. 18

    在一台机器上可以运行多个rabbitmq实例吗?

  19. 19

    在一台机器上可以运行多个rabbitmq实例吗?

  20. 20

    一台机器上可以运行多个http服务器?

  21. 21

    我可以在同一台机器上同时运行多个 ansible 实例吗?

  22. 22

    厨师/刀在同一台机器上运行两个环境

  23. 23

    一台机器上运行两个监视器需要什么

  24. 24

    如何与群管理器在同一台机器上运行docker群节点?

  25. 25

    如何在同一台机器上安装opencv 2.4和opencv 3

  26. 26

    如何在一台机器上使用GitLab和Gitlab-Mattermost?

  27. 27

    如何在另一台机器上克隆RStudio环境

  28. 28

    如何在Ubuntu的另一台机器上移动Alpine邮件?

  29. 29

    如何在同一台机器上安装opencv 2.4和opencv 3

热门标签

归档