Linux

在預設 shell 以外的 shell 中執行單個命令

  • August 23, 2020

我正在從 bash 切換到 zsh,但是隨著我習慣了一切,有沒有辦法用我的預設 shell 以外的 shell 執行單個命令,這樣我就可以維持正常的工作流程?理想情況下,我希望 bash 維護我的配置文件的環境。

假設我有一些僅在我的 bash 別名中的別名:

我想做這樣的事情

bash <some bash command>

我嘗試破解一個腳本:

~/bin/mybash

#!/bin/bash

source ~/.bashrc

$@

% ~/bin/mybash which &lt;my bash alias&gt;<- 沒有成功

bash -ic 'some bash command'

some bash command在 bash shell 中執行,該 shell 的初始化方式與互動式 shell 類似(包括載入~/.bashrc和允許擴展別名)。

前任。

% echo $0
zsh

% type ls
ls is /bin/ls

% bash -ic 'type ls'
ls is aliased to `ls --color=auto'

引用自:https://unix.stackexchange.com/questions/605822