标签: putty

为什么在 Linux 上使用 RS-232 时 CTRL+C 不起作用?

首先,我不知道这个应该留在SO还是去SU:你告诉我。解决方案可能与编程有关。

我正在嵌入式设备上执行 Linux 并使用 RS-232 @ 9600 波特率与其进行通信。在 Windows 上使用 PuTTY 一​​切正常:我有一个 shell,可以键入和执行命令。

问题是:当我启动命令时,我无法使用 CTRL+C。例如,当 ping 某台机器时,ping 进入无限循环,我无法使用 CTRL+C 停止它。但是,当出现 Bash 提示符时,CTRL+C 会起作用并转到下一行(因此它会被传输)。^C我还注意到当我在运行命令时执行 CTRL+C 时,终端会显示。通过 Telnet 连接时,CTRL+C 在任何地方都可以正常工作。

我尝试使用 PuTTY 的“特殊命令”中断,但不起作用。我也尝试过不同的终端模拟器,同样的问题。

所以我猜这个问题与内核有关。对此我有什么可以调查的吗?

编辑:我正在运行 BusyBox v1.13.2。stty -a(RS-232)的输出为:

speed 9600 baud; rows 24; columns 80;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>;
eol2 = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = …
Run Code Online (Sandbox Code Playgroud)

linux putty serial-port linux-kernel

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

从 .bashrc 启动后台进程

我意识到这可能是一个愚蠢的问题,但即使彻底挖掘了 stackoverflow 网站和谷歌,我也无法解决几个小时。

这是 .bashrc 中的基本代码,用于在登录 shell 后启动 gkrellm

if ps ax | grep -v grep | grep gkrellm > /dev/null
then
    echo "gkrellm is already running"
else
    command gkrellm &
fi
Run Code Online (Sandbox Code Playgroud)

我已经习惯尝试了

...
else
    nohup gkrellm &
fi
...
Run Code Online (Sandbox Code Playgroud)

...
else
    gkrellm
    $GK_PID=`pidof gkrellm`
    disown -h $GK_PID
fi
...
Run Code Online (Sandbox Code Playgroud)

gkrellm 已正确放置为后台作业,我可以使用 shell(如预期)。但是,即使我从同一 shell 启动其他应用程序,一旦按下 Ctrl-c,gkrellm 仍然会退出。如何防止 gkrellm 在按下 Ctrl-c 时关闭?

万一。我正在使用名为 KiTTY 的 PuTTY 克隆,但相信这不是问题。

感谢帮助!

bash putty

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

Sourcetree Git - SSH 密码提示

我最近下载了 Sourcetree,它附带了 puttygen、plink 和 pageant。

我已经设置了 SSH 公钥和私钥,并使用非空密码。

当我将私钥添加到选美密钥列表时,系统提示我输入此密码。但是,当我重新启动计算机并重新打开 Sourcetree 时,系统会重新提示我输入此密码。

1)。Pageant 或 Sourcetree 是否应该保存此密码,以便每次我想使用 Sourcetree 时都不会收到提示?

2)。如果是这样,怎么办?

putty plink pageant

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

git (ssh_exchange_identification) 连接被对等方重置 (windows, gitlab)

我正在尝试在 Windows (PuTTY) 上使用 ssh 连接到 gitlab 服务器(我没有权限)。我尝试过的 git 客户端包括简单的 git、git-extensions、sourcetree 和 git bash/gui。所有这些本质上都告诉我:

Cloning into 'repo'...
debug2: ssh_connect: needpriv 0
debug1: Connecting to git.server [x.y.z.w] port 22.
debug1: Connection established.
debug3: Incorrect RSA1 identifier
debug3: Could not load "/c/Users/user/.ssh/id_rsa" as a RSA1 public key
debug1: identity file /c/Users/user/.ssh/id_rsa type 1
debug1: identity file /c/Users/user/.ssh/id_rsa-cert type -1
debug1: identity file /c/Users/user/.ssh/id_dsa type -1
debug1: identity file /c/Users/user/.ssh/id_dsa-cert type -1
debug1: identity file /c/Users/user/.ssh/id_ecdsa type -1
debug1: identity file /c/Users/user/.ssh/id_ecdsa-cert type …
Run Code Online (Sandbox Code Playgroud)

windows ssh putty gitlab

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

使用 pysftp 通过 HTTP 代理进行 Python 连接

目前,我正在使用 Pythonsubprocess.POPEN和 PuTTY进行 SFTP 传输psftp.exe

它正在工作,但不是很干净,也不是很便携。

我想使用 Python pysftp 重现相同的行为,但我不知道在哪里输入所有参数。我在 PuTTY 中有以下配置:

  • 服务器 IP : 123.123.123.255
  • 服务器端口:22
  • 连接类型:SSH
  • 自动登录用户名:MyUser
  • 代理类型:HTTP
  • 代理主机名:gw.proxy.fr
  • 代理端口:1234
  • 代理用户名:ProxyUser
  • 代理密码:ProxyPass

我应该如何在 pysftp 中输入所有这些参数,以便我可以检索我的文件?

编辑:使用 Martin Prikryl 的答案,我发现了一些新的东西可以探索。如果我理解得很好,我需要使用套接字。把我输入我需要的所有信息仍然有一些问题。

import socket
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
proxy = ("gw.proxy.fr",1234)
sock.connect(proxy)
target=("123.123.123.255",23)
cmd_connect = "CONNECT {}:{} HTTP/1.1\r\n\r\n".format(*target)
sock.sendall(cmd_connect)
Run Code Online (Sandbox Code Playgroud)

我收到的响应是HTTP/1.0 407 Proxy Authentication Required,这很正常,因为我没有在任何地方使用代理身份验证信息。那么,您知道我如何使用它们并将它们输入到我的套接字中吗?

python windows proxy putty pysftp

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

Windows PuTTY PSCP 命令排除不传输到服务器的文件或文件夹

如何使用 Windows PuTTY PSCP 命令排除不传输到服务器的文件或文件夹?

我的命令:

pscp -r -i "D:\my-key.ppk" D:\wamp\www\abc\* ec2-user@58.55.86.157:/var/www/html
Run Code Online (Sandbox Code Playgroud)

它传输所有文件和目录。我想排除一些目录runtime\及其内容。

我用谷歌搜索但没有找到命令。

请帮忙。

windows putty pscp

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

如何强制腻子在输入 CR (\r) 时发送 LF (\n)?

我发现当我按回车键时,腻子会发送到我的串行设备 \r。有没有办法让腻子发送\n?

我发现可以按 CTRL+J 发送 \n - 但我只想按 Enter。

有人建议设置终端->“每个 LF 中的隐式 CR”。但这对我不起作用(我认为这是因为腻子收到而不发送)。

(我正在使用腻子版本 0.66)

putty serial-port

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

使用 PuTTY 自动执行命令/脚本

这些是我需要做的事情:

  1. 打开 putty.exe
  2. 输入用户名和密码。
  3. 运行 shell 脚本。

我正在使用 UFT(VB 脚本)。我可以打开 PuTTY,但无法使用 UFT 输入用户名和密码或运行任何命令。

有没有其他方法可以实现这一目标?我搜索了一下,发现我们可以使用Plink。那么问题将是整个团队必须为此安装 Plink。这是不可能的。

提前致谢。

ssh putty plink

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

如何在 Windows 机器上建立远程 UNIX 套接字隧道

在远程 UNIX 机器上,我在 UNIX 套接字上运行 MySQL,我想在我的本地 Windows 机器上连接到这个 MySQL。

以前我使用了适用于我的 Mac 的下一个命令:

ssh -nNT -L 127.0.0.1:3307:<remote_socket_path> <remote_user>@<remote_ip> -p <remote_port>
Run Code Online (Sandbox Code Playgroud)

在 Windows 上,我尝试了 Plink 等各种工具但都没有成功,所有这些工具都需要设置host:port并且无法识别套接字路径。

那么我做错了什么,我如何像在 Mac 上使用 SSH 命令那样通过隧道建立远程套接字?

sockets windows ssh putty tunnel

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

在 PowerShell 中重用正在运行的 PuTTY 代理(选美)

PS 5.1 中是否可以重用PuTTY 代理密钥?

现在,细节。

在此处输入图片说明

要使用密钥代理,有一个持有密钥的代理(左框)和委托管理密钥的客户端应用程序(右框)。例如,客户端应用程序 C1=putty可以使用它自己的代理 A1= pageant,当然。客户端应用程序 C2=winscp知道如何直接使用 A1。

某些客户端不能直接使用某些代理,但有代理代理可以弥补这一差距。例如,要将 A1 与 C3 一起使用,我需要 Proxy P1= ssh-pageant,请参见下面的示例。这有助于将许多客户端的密钥集中在单个代理中。现在我的意思是对我所有的客户使用 A1(目前,只缺少 A1-C5 和 A1-C6)。

PS 5.1 中是否可以重用相同的 PuTTY 代理密钥? (即,使用 A1 和 C5 的代理 Px)

可能有帮助https : //superuser.com/a/1173570/245595


注意事项

  1. 我没有尝试过,但似乎winssh-pageant是将 A2 与直接理解 A1 的客户端应用程序链接起来的代理。

  2. 我目前正在尝试在 PS 中使用与ssh-pageantmsys2相同的内容(它最终是一个 Windows 程序,而且它们经常工作),手动替换evalmsys2 中的内容(到目前为止没有运气,但我认为这是可以修复的) :

    > cd <dir where ssh-pageant is>
    > …
Run Code Online (Sandbox Code Playgroud)

ssh powershell putty pageant

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

标签 统计

putty ×10

ssh ×4

windows ×4

pageant ×2

plink ×2

serial-port ×2

bash ×1

gitlab ×1

linux ×1

linux-kernel ×1

powershell ×1

proxy ×1

pscp ×1

pysftp ×1

python ×1

sockets ×1

tunnel ×1