From ce377b3fa44a17b7605d485d82723edb5a056a24 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=8F=E5=BC=9F=E8=B0=83=E8=B0=83=E2=84=A2?= <398188662@qq.com> Date: Wed, 7 Mar 2018 02:20:48 +0800 Subject: [PATCH] Create setsid.md #37 --- command/setsid.md | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 command/setsid.md diff --git a/command/setsid.md b/command/setsid.md new file mode 100644 index 0000000000..20e0ecacee --- /dev/null +++ b/command/setsid.md @@ -0,0 +1,37 @@ +setsid +=== + +在新的会话中运行程序。 + +## 补充说明 + +**setsid命令** 子进程从父进程继承了:SessionID、进程组ID和打开的终端。子进程如果要脱离这些,代码中可通过调用setsid来实现。,而命令行或脚本中可以通过使用命令setsid来运行程序实现。setsid帮助一个进程脱离从父进程继承而来的已打开的终端、隶属进程组和隶属的会话。 + +### 语法 + +``` +setsid[options] [arguments ...] +``` + +### 选项 + +``` +-c, --ctty 将控制终端设置为当前控制终端 +-f, --fork 总是 fork +-w, --wait 等待程序退出,并使用相同的返回 +``` + + +### 实例 + +可见 setsid 的使用也是非常方便的,也只需在要处理的命令前加上 setsid 即可 + +``` +[root@root ~]# setsid ping www.ibm.com +[root@root ~]# ps -ef |grep www.ibm.com +root 31094 1 0 07:28 ? 00:00:00 ping www.ibm.com +root 31102 29217 0 07:29 pts/4 00:00:00 grep www.ibm.com +[root@root ~]# +``` + +