scp后台运行命令
Linux scp将命令放到后台运行的方法:
一共有四步:
1、正常执行scp命令
scp -r xxx xxx // -r 表示复制整个目录
2、输入ctrl + z 暂停任务
键盘按 ctrl + z 暂停 [1]+ Stopped 此时输入jobs命令可以查看当前被暂停的任务 jobs [1]+ Stopped
3.bg将其放入后台
bg %1 // 输入 bg %1,将进程号为1的进程恢复到后台运行 [1]+ xxxx 查看任务已经在后台运行: jobs [1]+ Running xxxx
4.使用disown -h 将这个作业忽略HUP信号:
disown -h %1 //忽略这个作业的HUP信号 jobs [1]+ Running xxxxxx
实例:
[root@localhost ~]# scp /home/back_20220722.tar.gz root@192.168.0.21:/root/bak
root@192.168.0.21's password:
back_20220722.tar.gz 0% 50MB 2.7MB/s 11:31:34 ET^Z
[1]+ 已停止 scp /home/back_20220722.tar.gz root@192.168.201.21:/root/bak
[root@localhost ~]# jobs //查看系统中当前的任务列表及其运行状态
[1]+ 已停止 scp /home/back_20220722.tar.gz root@192.168.201.21:/root/bak
[root@localhost ~]# bg %1
[1]+ scp /home/back_20220722.tar.gz root@192.168.201.21:/root/125 &
[root@localhost ~]# jobs
[1]+ 运行中 scp /home/back_20220722.tar.gz root@192.168.201.21:/root/bak &
[root@localhost ~]# disown -h %1
[root@localhost ~]# jobs
[1]+ 运行中 scp /home/back_20220722.tar.gz root@192.168.201.21:/root/bak &
[root@localhost ~]#
[root@localhost ~]# ps -ef | grep scp //查看scp进程信息
root 39266 36325 0 12:34 pts/1 00:00:01 scp /home/back_20220722.tar.gz root@192.168.0.21:/root/bak
root 39267 39266 1 12:34 pts/1 00:00:05 /usr/bin/ssh -x -oForwardAgent=no -oPermitLocalCommand=no -oClearAllForwardings=yes -l root -- 192.168.0.21 scp -t /root/bak
root 39589 36325 0 12:39 pts/1 00:00:00 grep --color=auto scp
[root@localhost ~]#