如何从另一个脚本正确运行 bash 脚本?

如何从另一个脚本正确运行 bash 脚本?

我想跑sql开发人员在 Ubuntu Gnome 14.04 上。

我创建了一些符号链接并尝试从一个脚本文件调用另一个脚本文件。

并且失败并显示以下消息:

/usr/local/bin/sqldeveloper:第 2 行:cd:/usr/local/bin/sqldeveloper/bin:不是目录

这是我的步骤:

Linking over an in-path launcher for Oracle SQL Developer:

sudo ln -s /opt/sqldeveloper/sqldeveloper.sh /usr/local/bin/sqldeveloper

Edit /usr/local/bin/sqldeveloper.sh replace it's content to:

#!/bin/bash
unset GNOME_DESKTOP_SESSION_ID
sh sqldeveloper_launcher.sh

内容sqldeveloper_launcher.sh

#!/bin/bash
cd /opt/sqldeveloper/sqldeveloper/bin
./sqldeveloper "$@"

接下来运行 SQL Developer:

sqldeveloper

但如果我把内容放进sqldeveloper_launcher.shsqldeveloper.sh,它就可以工作(这意味着它确实在运行 sqldeveloper,但它在运行时失败并出现错误无法在 Ubuntu 上运行 sqldeveloper)。

如何解决这个烦恼呢?

答案1

    cd /opt/sqldeveloper/sqldeveloper/bin
    unset GNOME_DESKTOP_SESSION_FALLBACK
    ./sqldeveloper "$@"      

这将解决你的问题

相关内容