softlinking和awk脚本(路径问题)

时间:2014-07-14 14:44:29

标签: bash awk path symlink

我有main.shexternal.awk个文件。

它们位于同一目录中。

main.sh我正在调用外部awk脚本:

awk -f external.awk ..

当然它正在发挥作用。

现在我做的时候:

cd /usr/local/bin
sudo ln -s /path/to/scripts/dir/main.sh main.sh
sudo ln -s /path/to/scripts/dir/external.awk external.awk

我可以从我所在的目录中拨打我的main.sh。 但它给我错误的是找不到external.awk脚本。

为什么链接在这种情况下不起作用,不应该

awk -f external.awk ..

相对于它所在的文件夹调用external.awk,因此在这种情况下调用 那个符号链接在/usr/local/bin路径?

修改

在发布我的问题后不久,我发现这是处理这种情况的好方法:

https://www.gnu.org/software/gawk/manual/html_node/AWKPATH-Variable.html

符合POSIX标准,但在这种情况下,它对我来说并不重要。

1 个答案:

答案 0 :(得分:0)

修改main.sh以调用awk:

awk -f /usr/local/bin/external.awk ..