Che*_*tah 8 linux shell shell-scripting
我有一个脚本:
#!/bin/bash
echo "$(dirname $(readlink -e $1))/$(basename $1)"
Run Code Online (Sandbox Code Playgroud)
位于此处:/home/myuser/bin/abspath.sh具有执行权限。
如果我运行,echo $PATH我会得到以下信息:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/myuser/bin
我希望能够从任何目录调用abspath <some_path_here>并调用我的脚本。我正在使用 bash,我做错了什么?
Mic*_*ton 30
您想键入abspath,但程序已命名abspath.sh。问题不在于它是否在 PATH 中,而在于您根本没有使用它的名称来调用它。
您有两个选择:
abspath.sh改为键入。abspath.这段代码足够小,我可以将它编码为一个 shell 函数:
abspath() {
echo "$(dirname "$(readlink -e "$1")")/$(basename "$1")"
}
Run Code Online (Sandbox Code Playgroud)
是的,您确实想要所有这些报价。
| 归档时间: |
|
| 查看次数: |
3618 次 |
| 最近记录: |