我从网上下载了一个脚本,其开头部分如下:
echo "alias myip='curl -s https://api.ipify.org/'" >> ~/.bash_profile
echo "alias myiplookup='ip2cc \$(curl -s https://api.ipify.org/)'" >> ~/.bash_profile
我在 macOS 机器上使用它,正如预期的那样,它.bash_profile
在我的$HOME
目录中创建了一个文件,其中包含相应的行:
alias myip='curl -s https://api.ipify.org/'
alias myiplookup='ip2cc $(curl -s https://api.ipify.org/)'
该机器上有两个 bash:
- bash 3.2,由 macOS 提供
- bash 5.2,使用 Homebrew 安装
但无论我尝试其中哪一个,当我输入myip
或时myiplookup
,我都会收到command not found
消息。
以下是我一步步尝试过的操作:
- 启动终端应用程序。它将以 zsh 会话打开。
- 类型
bash
(适用于 bash 5.2)或/bin/bash
(适用于 bash 3.2) - 输入
myip
.bash 显示消息command not found
。
我做错什么了?
.bash_profile
仅在初始化登录 shell 时使用。如果您希望解释其内容,则需要将其添加-l
到您的bash
调用中。别名定义通常放在
.bashrc
用于交互式 shell 的文件中。请参阅是否存在所有 shell 都读取的“.bashrc”等效文件?