<返回更多

系统运行shell命令时,忘记nohup了,怎么办?

2022-01-24    研道鸠摩智
加入收藏

背景

很多时候,我们前端运行了个命令,比如传输大文件,一时半会,运行不完,想把命令放在后台运行,但是这个时候已经运行了一段时间了。又不想退出,重新nohup执行。该怎么办呢?今天给大家一个小帖士,希望对大家的工作有所帮助。比如我们正在运行一个scp命令

scp riggers-cgmesh.zip root@47.90.116.168:/mnt

  1. 输入ctrl + z 暂停

[1]+ 已停止 scp riggers-cgmesh.zip root@47.90.116.168:/mnt

解释:ctrl-z: ( suspend foreground process ) 发送 SIGTSTP 信号给前台进程组中的所有进程,常用于挂起一个进程,而并非结束进程,用户可以使用使用fg/bg操作恢复执行前台或后台的进程。fg命令在前台恢复执行被挂起的进程,此时可以使用ctrl-z再次挂起该进程,bg命令在后台恢复执行被挂起的进程,而此时将无法使用ctrl-z再次挂起该进程;

2.jobs

[1]+ 已停止 scp riggers-cgmesh.zip root@47.90.116.168:/mnt

3.bg %1

[1]+ scp riggers-cgmesh.zip root@47.90.116.168:/mnt &

解释:把上面的进程放在后台执行

4.disown -h %1

解释:将这个作业忽略HUP信号:

5.ps -ef | grep scp

root 5828 697 0 1月21 pts/1 00:00:01 scp riggers-cgmesh.zip root@47.90.116.168:/mnt
root 5829 5828 0 1月21 pts/1 00:00:07 /usr/bin/ssh -x -oForwardAgent=no -oPermitLocalCommand=no -oClearAllForwardings=yes -l root -- 47.90.116.168 scp -t /mnt
声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>