iOS快捷指令 SSH

介绍

SSH(Secure Shell)是一种通过加密方式在网络上安全传输数据的协议。iOS快捷指令是苹果公司在iOS 12中引入的一项功能,它允许用户创建自定义的自动化任务,以简化日常操作。在本文中,我们将探讨如何使用iOS快捷指令来执行SSH连接和操作远程服务器。

SSH连接

SSH连接需要使用SSH客户端来与远程服务器建立安全通道。在iOS中,我们可以使用Pythonista应用程序来运行Python代码,并使用paramiko库来进行SSH连接。

首先,我们需要在Pythonista应用程序中创建一个新的Python脚本,并安装paramiko库。以下是一个示例代码:

import paramiko

# 创建SSH客户端
ssh = paramiko.SSHClient()

# 自动添加主机密钥
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

# 连接远程服务器
ssh.connect('example.com', username='username', password='password')

# 执行远程命令
stdin, stdout, stderr = ssh.exec_command('ls')

# 打印输出结果
print(stdout.read().decode())

# 关闭SSH连接
ssh.close()

上述代码首先导入paramiko库,然后创建一个SSH客户端对象。我们使用set_missing_host_key_policy方法来自动添加远程服务器的主机密钥,以确保安全连接。然后,使用connect方法连接到远程服务器,并提供用户名和密码进行身份验证。

接下来,可以使用exec_command方法执行远程命令。该方法返回标准输入、标准输出和标准错误的文件对象。我们可以使用这些文件对象来读取和处理命令的输出。

最后,使用close方法关闭SSH连接。

iOS快捷指令

现在我们已经了解了SSH连接的基础知识,我们将探讨如何在iOS快捷指令中使用这些代码。

首先,我们需要在iOS快捷指令应用程序中创建一个新的快捷指令。打开应用程序后,点击左上角的“+”按钮,然后选择“创建快捷指令”。

创建SSH连接

首先,我们需要创建一个用于SSH连接的自定义操作。点击右上角的“+”按钮,然后搜索并选择“脚本”操作。在脚本操作中,我们可以输入我们之前编写的Python代码。

import paramiko

# 创建SSH客户端
ssh = paramiko.SSHClient()

# 自动添加主机密钥
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

# 连接远程服务器
ssh.connect('example.com', username='username', password='password')

# 保存SSH连接对象
ShortcutOutput.SetVariable('ssh_client', ssh)

上述代码类似于之前的Python代码,但我们添加了一行代码来保存SSH连接对象。这是通过调用ShortcutOutput.SetVariable方法并提供变量名称和值来完成的。

执行远程命令

接下来,我们将创建一个用于执行远程命令的自定义操作。点击右上角的“+”按钮,然后搜索并选择“脚本”操作。在脚本操作中,我们可以输入以下代码:

# 获取SSH连接对象
ssh = ShortcutInput.GetVariable('ssh_client')

# 执行远程命令
stdin, stdout, stderr = ssh.exec_command('ls')

# 保存命令输出
ShortcutOutput.SetVariable('command_output', stdout.read().decode())

上述代码首先通过调用ShortcutInput.GetVariable方法来获取之前保存的SSH连接对象。然后,我们使用这个对象来执行远程命令并保存命令的输出。

显示命令输出

最后,我们将创建一个用于显示命令输出的自定义操作。点击右上角的“+”按钮,然后搜索并选择“显示结果”操作。

在显示结果操作中,我们可以选择之前保存的命令输出变量,并选择将其显示在屏幕上。

完成快捷指令

现在,我们已经创建了所有必要的操作,我们可以点击右上角的“完成”按钮来保存快捷指令。

使用SSH快捷指