如何后台运行脚本
  2OOtxGRti36O 2023年11月02日 38 0

1:nohup

在执行命令前面加nohup但是CTRL+C就会失效
语法格式:

nohup Command [ Arg … ] [ & ]

参数说明:
Command:要执行的命令。

Arg:一些参数,可以指定输出文件。

&:让命令在后台执行,终端退出后命令仍旧执行。

nohup ping www.baidu.com &

这样就在后台挂上了
查看进程ping

jobs #查看任务

如何后台运行脚本_后台执行

重新进入后台运行的程序

fg "编号"

如何后台运行脚本_后台执行_02

如果要退出这个界面就直接CTRL+Z

如何后台运行脚本_后台执行_03

继续执行进程

如何后台运行脚本_标准输出_04


ps -aux | grep "进程名字也可以是文件"

上面看到的是36640 进程号

如何后台运行脚本_标准输出_05

ps -aux | grep "文件名"
  • a : 显示所有程序
  • u : 以用户为主的格式来显示
  • x : 显示所有程序,不区分终端机
    杀死进程用kill -9 加进程号
kill -9 36640

如何后台运行脚本_标准输出_06

可以看到已杀死
以下命令在后台执行 root 目录下的 runoob.sh 脚本,并重定向输入到 runoob.log 文件:

nohup /root/runoob.sh > runoob.log 2>&1 &

2>&1 解释:
将标准错误 2 重定向到标准输出 &1 ,标准输出 &1 再被重定向输入到 runoob.log 文件中。

  • 0 – stdin (standard input,标准输入)
  • 1 – stdout (standard output,标准输出)
  • 2 – stderr (standard error,标准错误输出)

2:setsid

查看进程可以看到分支

pstree

它可以把自己换成一个父进程

3:screen

安装screen:

安装screen
#centos系统安装命令
yun install screen
#Debian/Ubuntu安装命令
apt-get install screen

他是一个终端模拟器
创建一个进程

screen -dmS "进程名字自己取"

查看会话

screen -list

连接会话

screen -r "会话名称"
查看进程
ps -ef | grep [名字]

kill -9 [PID] //杀死对应PID的进程

3.1.启动新的screen会话

#创建名为为sillgirl

screen -S sillgril
#然后就可以在里面操作了一个新的终端
./sillgril

3.2.退出当前screen会话:

按Ctrl+a 再按 d, 即可退出screen, 此时程序仍在后台执行

3.3.查看当前已有的screen会话:

输入:screen -ls

参考:

⾸先⽤screen -ls查看你想要选的screen:
如果他的状态是Detached的,我们需要输⼊
screen -r <screen的pid>
来进⼊这个screen ,
或者输入
screen -rd <screen的名称>
如果他的状态是Attached的,我们就要输⼊
screen -d <screen的pid>
来使他”Dettached”,
然后再输⼊s
creen -r <screen的pid>
来进⼊这个screen。(必须先detached,否则是进不去的)

3.4.窗口操作:

Ctrl+a+w: 展示当前会话中的所有窗口;

Ctrl+a+c: 创建新窗口;

Ctrl+a+n: 切换至下一个窗口;

Ctrl+a+p: 切换至上一个窗口;

Ctrl+a+num: 切换至编号为num的窗口;

Ctrl+a+k: 杀死当前窗口;

3.5. 删除某个会话:

screen -S your_screen_name -X quit
或者
screen -X -S <screen的id> quit

按CTRL+A+D 退出screen  后台还是在运行

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  17eFBvSPo0pz   2023年11月02日   18   0   0 nohup标准输入标准输出
  mPcyh9OXzYGu   2023年11月02日   55   0   0 新版本重定向旧版
  L83A5jZvvg3Q   2023年11月22日   17   0   0 HTTP重定向字段
  YKMEHzdP8aoh   2023年11月24日   36   0   0 ide重定向Rust