在我的 SSH 配置文件中,RequestTTY force出于某些重要原因,我必须启用。目前我的配置文件如下所示:
Host x.x.x.x
HostName yyyy
StrictHostKeyChecking no
RequestTTY force
IdentityFile ~/path/id_rsa
Run Code Online (Sandbox Code Playgroud)
但是现在当我执行一个scp命令时,它会完成但在目标路径上创建一个空文件,下面是它生成的日志:
debug2: channel 0: read<=0 rfd 4 len 0
debug2: channel 0: read failed
debug2: channel 0: close_read
debug2: channel 0: input open -> drain
debug2: channel 0: ibuf empty
debug2: channel 0: send eof
debug2: channel 0: input drain -> closed
debug2: channel 0: write failed
debug2: channel 0: close_write
debug2: channel 0: send eow
debug2: channel 0: output open -> …Run Code Online (Sandbox Code Playgroud) 我想创建一个固定大小(1G、10G、100G 等)的文件,每行都有一个长度在指定限制内的随机单词。我基本上希望它运行一个基准测试,它将对整个文件进行排序。
因此,如果我想要一个文件1G并且字长限制为假设4,文件示例将如下所示:
a
bc
def
ghij
Run Code Online (Sandbox Code Playgroud)
这里单词的长度将在范围内1-4并且不会超过4并且该文件最终将具有1G
注意:这个词也可以是固定大小的。不会有问题的。
我将如何能够做到这一点?
我有一组通过无密码 SSH 连接的计算机,我编写了一个实用程序,可以在整个集群上运行命令。它的方法是选取文件中存在的机器,在运行通过 SSH 指定的命令时循环它们。
现在我想在集群上运行一个 kill 命令。我这样做的方法是grep输入进程 ID,然后像这样运行 kill 命令:
kill -9 $(ps -ef | grep service_name | awk '{print $2}')
Run Code Online (Sandbox Code Playgroud)
但是当我运行这个命令时,它在一台机器上循环,执行命令,在第二台机器上循环,甚至不执行命令就退出。所以命令最终只在一台机器上执行。
我读了一点,发现cmd1 $(cmd2)通过 SSH 运行的subshell 命令无法正确执行。
谁能给我一个解决方法。