ruby - 获取当前进程保存的 set-user-id
问题描述
在标准库的帮助下,如何在 Ruby 中获取当前正在运行的进程的真实用户 ID ( Process.uid
) 和有效用户 ID ( )非常明显。但我想知道保存的 set-user-IDProcess.euid
的兄弟方法在哪里,比如?只有一种方法可以确定运行平台是否支持所描述的功能。Process.suid
Process::UID.sid_available?
解决方案
好吧,您不会喜欢这个,但是 AFAICT,这是获得suid
该过程的唯一方法。
suid = `ps -o pid,suid`[/(?<=^#{Process.pid}\s)\s*\d+/].strip
#⇒ "1000"
可能应该先检查是否suid
可用。基本上,这个正则表达式搜索从当前进程开始的行' pid
。
推荐阅读
- .net - 如何使用 dotnet 自定义模板重命名文件夹?
- r - 如何在 colnames R 中允许特殊字符(葡萄牙语)
- r - 如何更改时间序列图中的 x 轴刻度(年到月)?
- python - http.client.RemoteDisconnected:当函数调用自身时,远程结束关闭连接而没有响应
- .net-core - Redis 背板 - 大数据量的 AddStackExchangeRedis
- mysql - Xampp:数据库连接被拒绝
- r - 在 df 中给出/取回一定数量的行
- amazon-ec2 - Windows 服务器在 5 次 RDP 登录尝试失败后重新启动
- gnuplot - Gnuplot - 绘制矩阵并用数字替换正方形
- java - 在 Picocli 的单元测试中检查选项的值