【发布时间】:2014-04-09 11:08:33
【问题描述】:
我在任何时候都在使用 10 个用户的 ubuntu 服务器。我们通常将代码保存在那里并使用服务器进行构建。根据定义的并发性,构建通常需要 30 到 50 分钟。构建命令是make -jX,其中 X 可以是 1 到 24 之间的任何值。
当许多用户开始发出具有更高 X 值的 make 命令时,我的问题就开始了。有没有办法阻止这些命令或设置任何限制。
例如,如果有人给出make -jX (X>4),我应该能够将命令覆盖为make -j4。
我知道一种方法是使用 alias 但我不知道如何通过别名来解释参数值(例如 .bashrc 文件中的alias ll='ls -la' 可以,但是如何通过 bashrc 解释ll -lha)。
还有什么方法可以让别名对所有用户都有效,而无需编辑所有用户的 bashrc 文件?
提前致谢。
【问题讨论】:
-
您需要阻止特定用户的 make 命令吗?
-
不,我想让它通用,这样如果有人给出更高 j 值的 make,它应该自动回退到默认值
-
en.wikipedia.org/wiki/Alias_(command) 最后他们给出了如何使用 shell 脚本函数为别名添加选项。也许这会对你有所帮助
-
这假设您的用户不会想办法避免限制他们访问的别名/功能。最好告诉管理层他们需要购买更多服务器;->。祝你好运。
-
通过别名如何忽略别名 make='make -j4' 这样的参数如果用户给出命令为 make -j8 怎么办
标签: shell ubuntu command-line makefile alias