小编ars*_*nal的帖子

如何并行化scp命令?

我需要从SCP的文件machineB,并machineCmachineA。我正在从machineA. 我已经正确设置了 ssh 密钥。

如果文件不存在的machineB,那么它应该是那里machineC。我需要将所有 PARTITION1 和 PARTITION2 文件移动到 machineA 各自的文件夹中,如下所示在我的 shell 脚本中 -

#!/bin/bash

readonly PRIMARY=/export/home/david/dist/primary
readonly SECONDARY=/export/home/david/dist/secondary
readonly FILERS_LOCATION=(machineB machineC)
readonly MAPPED_LOCATION=/bat/data/snapshot
PARTITION1=(0 3 5 7 9)
PARTITION2=(1 2 4 6 8)

dir1=$(ssh -o "StrictHostKeyChecking no" david@${FILERS_LOCATION[0]} ls -dt1 "$MAPPED_LOCATION"/[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9] | head -n1)
dir2=$(ssh -o "StrictHostKeyChecking no" david@${FILERS_LOCATION[1]} ls -dt1 "$MAPPED_LOCATION"/[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9] | head -n1)

length1=$(ssh -o "StrictHostKeyChecking no" david@${FILERS_LOCATION[0]} "ls '$dir1' | wc -l")
length2=$(ssh -o …
Run Code Online (Sandbox Code Playgroud)

linux ubuntu shell bash scp

5
推荐指数
1
解决办法
2万
查看次数

如何使用程序名称而不是 PID 来终止进程?

我使用nohup如下所述在后台启动了我的 Python 程序-

nohup zook.py &
Run Code Online (Sandbox Code Playgroud)

现在我试图终止这个进程,所以我ps执行了下面提到的命令

root@phxdbx1145:/home/david/zook# ps ax | grep zook.py
16352 pts/6    S+     0:00 grep --color=auto zook.py
Run Code Online (Sandbox Code Playgroud)

但不知何故,每次它的 PID 改变时,我都不知道为什么。每当我喜欢这样 -

kill -9 16352
Run Code Online (Sandbox Code Playgroud)

它总是说,No Such Process

当我再次执行 px 命令时,我看到 PID 自动更改了..

所以我不确定如何终止这个进程?

有什么办法可以以某种方式终止带有名称的进程吗?

我试过

killall zook.py

但它对我不起作用,我得到 -

zook.py: no process found
Run Code Online (Sandbox Code Playgroud)

还有其他选择吗?不知何故,它的 PID 每次都会改变.. 所以我不能使用kill -9 pid

更新:-

这就是我得到的。我做了pkill -9 zook.py然后我做了下面提到的 ps 命令,它不断地显示 zook.py ?

root@dbx1145:/home/david/zook# pkill -9 zook.py

root@dbx1145:/home/david/zook# ps ax | grep zook.py
23870 …
Run Code Online (Sandbox Code Playgroud)

linux unix python nohup background-process

0
推荐指数
1
解决办法
3484
查看次数

标签 统计

linux ×2

background-process ×1

bash ×1

nohup ×1

python ×1

scp ×1

shell ×1

ubuntu ×1

unix ×1