通过自动化脚本节省重复性任务的时间。将加密的批处理,PowerShell或shell脚本上载到管理控制台中的安全存储中。

在远程会话期间,您可以从菜单中选择已保存的脚本,然后只需单击一下即可开始执行。

标准化维护和支持,同时缩短解决时间。使用您节省的时间更多地关注重要任务并解决其他支持请求。重新获得生产力并帮助更多客户。

本文适用于拥有 TeamViewer Business, Premium, Corporate或 Tensor订阅计划的 TeamViewer 客户。

OneClick远程脚本执行 - 简介视频

TeamViewer管理控制台的先决条件

您必须满足一些先决条件,以便您可以使用脚本自动完成任务。请确保您满足所有要求:

  • 对于脚本用法,您必须拥有有效的TeamViewer 许可计划。
  • 脚本可以使用并保存在文件中的本地或网络文件夹中。
  • 脚本文件大小小于100 kB。

在TeamViewer管理控制台中上传脚本

要上传脚本,请按照以下说明操作:

  1. 登录管理控制台:https://login.teamviewer.com/
  2. 单击侧面菜单左上角的脚本
  3. 单击“+添加脚本”上传您的脚本。
    1. 如果您已经上传了一些脚本,它们将显示在表格中。
  4. 选择脚本文件,在专用字段中输入所需信息,然后单击“保存”。

以管理员身份运行

如果您的脚本至少使用一个命令,该命令需要管理权限(Windows上的提升模式),则应检查“以管理员身份执行”。

当您启动脚本时,在执行开始之前只会询问一次权限(如果登录用户已具有管理权限)或管理员凭据(如果登录用户没有管理员权限),无论频率如何或在脚本中使用此类命令时(例如,对于长时间运行的任务)。

重要提示

  • 目前,您只能在已安装的TeamViewer (Classic)上以管理员身份执行脚本。在Windows“仅运行(一次性使用)”选项或QuickSupport上,它是不可能的,因为UAC提示无法在客户端显示。
  • Linux尚不支持管理模式下的脚本。

脚本类型

目前支持以下脚本类型

Windows

  • - Batch(.bat,.cmd)
  • - PowerShell(.ps1)

macOS

  • - Shell(.sh)

Linux

  • - Bash(.sh)

如何更新脚本

将鼠标悬停在所需的脚本上可以修改和删除现有脚本。 在脚本的右侧,将出现一个铅笔图标和一个垃圾桶图标。 这些将允许您编辑或删除脚本。

当修改脚本时(上传新版本的脚本或更改信息),将保存新数据。 旧的脚本数据被删除。

在会话中执行脚本

先决条件

在使用脚本自动执行任务之前,必须满足一些先决条件。请确保您满足所有要求:

  • 有效的 TeamViewer 订阅。
  • 两台计算机都必须运行 TeamViewer (Classic) 14 或更高版本。
  • 使用许可帐户登录 TeamViewer (Classic) 客户端(否则脚本不会出现在菜单中)。
  • 这些脚本被标记为适合远程计算机操作系统。
  • 对于 Windows:必须安装远程 TeamViewer (Classic) 客户端,并且不能在“仅运行”模式下运行。 这是运行需要管理权限的脚本所必需的。
  • 必须可以从远程系统到云存储进行 HTTP 连接。

脚本执行

要执行脚本,请与远程设备建立 TeamViewer (Classic) 连接,并按照以下说明进行操作:

  1. 打开脚本菜单
    • Windows:转至远程控制工具栏中的操作 ➜ 脚本以打开菜单。
    • macOS:单击远程控制工具栏右侧的脚本。
    • 下拉菜单将显示远程计算机操作系统的所有兼容的上传脚本。
  2. 通过单击上下文菜单选择要在远程计算机上运行的脚本。
  3. 远程用户必须接受脚本执行请求对话。 一旦接受,脚本将直接从云端下载到远程计算机,解密并启动。
    • 在远程端,会显示一些当前状态的通知。
    • 如果脚本需要管理权限,则会出现对话请求许可。 每个会话仅出现一次

确认请求处理(特别是对于无人值守的设备)

默认情况下,只有远程用户接受执行请求,脚本才能被执行。 在必须在无人值守的设备上执行脚本或用户无法接受请求的情况下,可以完全禁用该请求或通过新的访问控制将其设置为始终拒绝脚本执行。

可以为传入和传出连接定义权限。 仅当管理权限处于活动状态时才能更改此设置,这意味着此设置可用于限制公司中不需要它的人员的脚本执行能力。

如果选择访问控制,则会设置以下默认值:

 

对于自定义设置,您可以自己定义应使用哪个值:

会话中允许的访问控制取决于本地和远程机器的设置。 在访问控制不同的情况下,将使用两者中更严格的设置。

管理 Windows 上的访问控制

要验证或更改 Windows 上的访问控制权限:

  1. 访问 TeamViewer (Classic) 应用程序右上角的 TeamViewer (Classic) 选项 。
  2. 单击“高级”,导航至此计算机连接的高级设置或其他计算机的高级设置。
  3. 在访问控制中,选择所需的设置并单击确定。

管理 macOS 上的访问控制

要验证或更改 macOS 上的访问控制权限:

  1. 打开 TeamViewer(Classic)。
  2. 单击屏幕左上角的 TeamViewer,然后选择首选项
  3. 单击“高级”,导航至此计算机连接的高级设置或其他计算机的高级设置。
  4. 在访问控制中,选择所需的设置并单击确定。

管理 Linux 上的访问控制

要检查或调整 Linux 上的权限:

  1. 打开 TeamViewer(Classic)。
  2. 访问 TeamViewer(Classic)选项。
  3. 单击“高级”,导航至此计算机连接的高级设置或其他计算机的高级设置。
  4. 在访问控制中,选择所需的设置并单击确定

📌注意:连接到此计算机的高级设置是 Linux 当前唯一可用的选项,因为尚无法从 Linux 设备执行脚本

通过 TeamViewer 策略管理访问控制

还可以通过 TeamViewer 策略管理访问控制设置。 这使您可以同时在多个设备上影响相同的设置。

您将在此处了解如何创建 TeamViewer 策略:创建设置策略。 创建策略后,您可以:

  • 将访问控制(传入连接)或访问控制(传出连接)添加到策略中。
  • 管理执行脚本的设置。

保存后,可以使用分配 TeamViewer 策略来分配策略。

有关创建和部署 TeamViewer 策略的更多信息,请访问:

脚本在会话中不可用

当您无法在会话期间执行脚本时,脚本菜单将显示为灰色。 要了解脚本不可用的原因,请将鼠标悬停在“脚本”菜单上。 示例如下所示。

Windows

macOS

编写脚本的最佳实践

在 macOS 上使用“~”作为路径

macOS 允许字符“~”来寻址用户的主目录。 如果使用管理权限执行脚本,则该脚本由 root 用户执行。 因此,‘~’将被替换为/var/root,而不是登录用户的主目录。

此外,在这种情况下未设置 $HOME 变量。 由于这些原因,如果您以管理员身份运行脚本,则不应依赖“~”和 $HOME

如果您需要创建、复制或下载文件夹或文件,可以使用执行脚本的工作目录,该目录位于 ~/Library/Application Support/TeamViewer/Remote Scripting/<script-uuid>

执行的脚本终止后,该目录将立即被删除。

root 用户还创建这些文件和文件夹。 如有必要,您可以使用 chown 命令更改所有者并使用 chmod 更改权限。

使用正确的行结尾

您必须在脚本文件中使用正确的行结尾,以便执行脚本的操作系统可以解释该行结尾。

例如,像 Windows 上那样包含“CR LF”的脚本文件无法在 Linux 上执行(仅需要“LF”)。

常问问题

为什么我的 PowerShell 脚本没有在远程计算机上执行,而是在本地运行?

默认情况下,Windows 限制 Powershell 脚本的执行。 首先必须改变执行政策。

  • 在 64 位计算机上:当前使用命令行的 32 位进程。 为此,您必须在 32 位进程上设置权限:
SystemRoot%\SysWOW64\WindowsPowerShell\v1.0\powershell.exe“Set-ExecutionPolicy RemoteSigned”。

(此问题将在后续版本中修复,以便使用64位进程。)

有关更多详细信息,请查看 Get-ExecutionPolicySet-ExecutionPolicy 的文档