Shell黑客技巧:从csh启动bash

3
我正在尝试将bash设置为我的大学账户的默认shell。
然而,传统的chsh方法在这里不起作用,因为大学技术人员已经禁用了它作为启动shell。但是,我可以通过在终端中调用bash来调用它。所以,我开发了一个小hack,通过修改我的~/.cshrc文件,使我的当前shell csh自动启动bash。问题是,我希望设置它的方式是当我退出bash会话时,它也关闭其父级csh会话。我该怎么做?
==编辑==
警告:正如ajk警告的那样,使用csh运行脚本可能会带来风险,我亲身经历了这一点。我现在无法登录我的机器。我将不得不联系我的大学技术人员删除rc文件。这可能会让他们不高兴。:\
所以,请注意。
1个回答

5

在你的.cshrc文件中像这样启动bash:

exec bash

最好替换bash为完整路径中的bash
另外,如果您必须运行任何用csh编写的脚本,请注意——如果它不使用-f,则会在运行之前执行您的.cshrc文件。由于您在.cshrc中执行了bash,所以该脚本可能无法按预期运行。建议不要使用csh编写脚本,但我曾经参加过至少一门需要这样做的大学课程。

简洁、简短而巧妙。我完全忘记了exec函数以及它替代事物的能力。在3分钟后,即时间限制到期时,我会将其标记为正确。 - IDDQD

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接