我想从命令行创建/发送本机 Windows 通知,作为我设置的一些自动化任务的一部分,既可以在本地计算机上执行,也可以在家庭服务器上执行类似任务。两台计算机都运行 Windows 10,并且位于同一网络上。
我希望收到来自两个都我主计算机上的操作中心中的计算机。
是否有一个命令行工具可以用来完成此操作?
答案1
另一种方法是使用 Vista 以来就存在的内置 MSG.exe 命令。在命令提示符下,输入以下内容:
msg /server:poseidon daniel "请立即联系帮助台!"
服务器是您要向其发送消息的计算机的名称,daniel 是使用该计算机的人的有效用户名。快速简单,无需额外下载。
答案2
如果您想创建本机 Windows 通知(右下角弹出并在通知中心持续显示),您可以将以下 Powershell 代码片段作为模板。
取自https://stackoverflow.com/a/47123275/1043209
[void] [System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms")
$objNotifyIcon = New-Object System.Windows.Forms.NotifyIcon
$objNotifyIcon.Icon = [System.Drawing.SystemIcons]::Information
$objNotifyIcon.BalloonTipIcon = "Info"
$objNotifyIcon.BalloonTipText = "wzzup this is a title."
$objNotifyIcon.BalloonTipTitle = "WHATS UPPP THIS IS A PARAGRAPH!"
$objNotifyIcon.Visible = $True
$objNotifyIcon.ShowBalloonTip(10000)
Start-Sleep 500
它在通知中心看起来像这样。
答案3
您可以使用Windows 版 Growl为此,你需要发出咆哮通知发送消息和接收通知的完整应用程序。根据评论,您需要一个插入用于本机 Toast 通知。
在接收端,您还需要启用来自其他电脑的通知并设置密码。
我们假设安装了完整 GFW 包的系统是 192.168.1.110。
在发送端growlnotify.com /r:"test1" /a:"test1" /host:192.168.1.110 /pass:test boo
注册应用程序。您需要执行此操作一次我更喜欢这里的批处理变体,因为它对初始设置有更多有用的警告。一旦您知道一切正常,您就可以切换到 exe 文件。
之后类似的东西growlnotify.com /n:"test1" /a:"test1" /host:192.168.1.110 /pass:test /t:title message
就可以发送消息了。
对于其他任何内容,您可以参考文档并修改一些内容来填充消息内容。
在两个 Windows 10 系统之间测试过并且对我来说有效。
如果你想从Linux的对于 GFW 或 mac 实例,你可以使用gntp 发送
答案4
更新日期:2018/05/19:
套衫从 1.3.0 版开始,无法再创建原生 Windows 通知(由于修复了支持秋季创意者更新的问题),所以这只是问题的部分答案。它仍然是一种可行的方式来从/通过推倒,但他们不是本地人。
我一直在使用的移动通知功能是推倒,它通过 HTTP 请求接受通知,并将它们发送到注册到您帐户的所有(或选定的)设备。我一直在使用卷曲生成并发送必要的 HTTP 请求。(我知道,不太像‘Windows’)。
昨天我发现 Pushover 现在已通过浏览器提供官方桌面通知支持,并且通过名为套衫它将收到的任何从 Pushover 收到的通知显示为原生 Windows 通知。请注意,接收桌面通知需要执照。
以下是通过以下方式发送通知所需的步骤卷曲:
- 登记获取账户并登录
- 下载并安装套衫
- 登录 Pullover 并为您的计算机指定一个设备名称
- 您应该会收到“欢迎使用 Pushover!”通知,确认通知功能正常
- 记下你的用户密钥显示在您的帐户页面上
- 向下滚动并点击注册应用程序/创建 API 令牌
- 输入 a
Name
,并选择Script
作为Type
- 接受条款和条件,然后点击
Create Application
- 记下API 令牌/密钥你被给予
- 下载卷曲并把它粘在你的某个地方
%PATH%
- 打开命令提示符
进入
curl --form-string "token=api-token" --form-string "user=user-token" --form-string "message=notification-text" --form-string "title=notification-title" https://api.pushover.net/1/messages.json
其中
user-token
和api-token
是用户密钥和API 令牌/密钥您之前记录的,notification-title
是通知的标题,notification-text
是文本- 您应该会收到一条包含您刚刚输入的标题和文本的通知
注意事项:
- 支持的其他通知生成方法包括向账户特定的电子邮件地址发送电子邮件,以及以下 Web 服务互联网金融
- Pushover 允许每个应用程序每月免费发送 7,500 条消息
- 一个用户帐户最多可关联 10 台设备
- 设备/计算机名称必须是唯一的,否则它们将替换现有设备
- 发送/接收通知需要互联网连接,但当互联网连接恢复时,您将收到已发送但未收到的任何通知(根据我的经验)