我最近才开始编程。我有一个包含 c 程序的 shell 脚本。在脚本的末尾,使用命令运行 c 程序
gcc stadist.c -lm
a.out < XXXXX | sort -n -k3 > YYYYY
rm a.out
rm stadist.c
rm XXXXX
运行此脚本会给出 a.out: not found。文件 YYYYY 已创建,但它是空的。我怎么解决这个问题。我在 Linux ubuntu 16.04 LTS 上。
shell 无法找到,a.out
因为它不在当前目录中查找。那是最佳实践。(即:不要不加.
至PATH)。做就是了:
gcc stadist.c -lm &&
./a.out < XXXXX | sort -n -k3 > YYYYY
rm a.out
rm stadist.c
rm XXXXX
请注意,我&&
在调用之后添加了,gcc
以便a.out
在编译失败时脚本不会尝试运行。您可能想要添加更强大的错误检查。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句