【问题标题】:How to manually start interactive ksh, and have it execute $HOME/.profile on startup?如何手动启动交互式 ksh,并让它在启动时执行 $HOME/.profile?
【发布时间】:2015-05-18 08:04:24
【问题描述】:

如果我通过键入手动启动 ksh

/usr/bin/ksh

在 bash 中,然后 ksh 以交互模式启动。到目前为止,一切都很好。但是,由于它不是登录 shell,它不会执行它的 $HOME/.profile,我需要它来执行它。我试着跑了

/usr/bin/ksh $HOME/.profile

但它只是执行了 .profile 并退出回 bash,而没有进入交互模式。我尝试使用 -i 标志强制 ksh 进入交互模式,但是当我也给它 .profile 执行时它似乎不起作用。

我在 Raspian Linux 上使用 ksh93。

【问题讨论】:

  • ksh --login 通常是说服它以这种方式运行的方法,不是吗?
  • 是的,成功了!谢谢!我确定我已经尝试过这样做,但显然没有。

标签: linux ksh


【解决方案1】:

您可以使用$HOME/.kshrc,就像.bashrc 用于Bash

【讨论】:

    【解决方案2】:

    当您需要 .profile(或任何其他 shellscript)中的设置时,请确保在当前 shell 中处理该文件,而不是在子 shell 中。命令行以点开头。

    . $HOME/.profile
    

    这不是一个登录 shell,只是一个执行了你的 .profile 的环境。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-03
      • 2020-04-20
      • 1970-01-01
      • 2018-11-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多