是否可以从shell脚本调用os系统调用,如open,close等?我试过谷歌搜索,但它使我在错误的方向使用“system()”命令。有人可以帮忙吗?
答案 0 :(得分:7)
许多系统调用都是可访问的,但只能通过本机shell机制,而不能直接指定确切的参数。例如:
exec 4>outfile
调用:
open("outfile", O_WRONLY|O_CREAT|O_APPEND, 0666) = 3
dup2(3, 4)
(3
被下一个可用的描述符替换)和
exec 4<&-
调用:
close(4)
某些shell(例如bash)允许通过可加载模块添加其他内置函数(请参阅用于加载此类模块的enable
内置函数);如果确实需要上游未提供的功能,您可以通过这种方式实现它。