我需要使用用户usr1的dbms_lock.sleep过程.我无法以sys身份登录,但我有一个用户usr2的密码,该密码具有"grant any object privilege"权限.但是,当我以usr2身份登录并尝试发布时
grant execute on sys.dbms_lock to usr1
Run Code Online (Sandbox Code Playgroud)
我得到了ORA-01031"权限不足"的例外情况.同样适用于另一个用户的测试包.系统包是专门处理的,还是我错过了什么?
我遇到了一个有点奇怪的BASH无限循环行为,其输出被流水线化到另一个进程.也就是说,我运行这两个命令:
(while true; do echo xxx; done) | head -n 1
(while true; do date; done) | head -n 1
Run Code Online (Sandbox Code Playgroud)
第一个退出,而第二个不退出(我认为它将永远运行而不被杀死).我也尝试了一个隐式的无限循环:
yes | head -n 1
Run Code Online (Sandbox Code Playgroud)
它也会自行退出.在每种情况下,立即在屏幕上打印适当的输出线.我很好奇是什么决定这样的命令是否会完成.