有没有办法从bash脚本中执行编译的C代码?

问题描述 投票:1回答:1

本质上,我希望从bash脚本中调用已编译的C代码。我希望能够从任何目录调用./a.out并让它被执行。

这一切都源于非常简单的事情。我做了一个curses程序,它是终端的屏幕保护程序。我希望能够调用bash命令screensaver,我希望通过bash调用c代码。我希望能够从文件系统的任何地方调用它。我正在使用2013 Macbook,但我认为这更像是对C问题的熟悉而不是硬件问题,如果需要我可以提供更多细节。

文件在这里:

/Users/User/screensaver/screensaver.c

cd /Users/User/screensaver

gcc screensaver.c创造了a.out

我可以跑了

./a.out代码运行。

我曾尝试过调用./Users/User/screensaver/a.out等等。

这不起作用,只是说该文件不存在。我尝试过使用execsource,但没有任何效果。当然必须有办法从其他地方调用这个吗?我知道理论上我可以将当​​前目录保存为环境变量,cd进入目录,./a.out,然后退出cd回到保存的目录,但这似乎很难为它的价值而奋斗。

编辑:我看到我理论上可以把它放在我的bin并用-o编译。我没有尝试过,但我不想这样做,因为这段代码仍在开发中,所以我不想每次都编译和移动它。

c bash gcc
1个回答
0
投票

这有效:

“尝试调用/Users/User/screensaver/a.out而不在路径的开头添加一个点。有一个特殊的安全原因,你需要在你进入时指定./a.out而不是a.out保存可执行文件的目录。“ -tshiono

© www.soinside.com 2019 - 2024. All rights reserved.