我是这些事情的初学者,所以请对我宽容一点!
在社区成员的建议下,除了 StackOverflow 之外,我还在这里提出这个问题。
我有一个通过 USB 连接到我的电脑(Windows 机器)的设备,在以用户身份通过 SSH进入该设备后,我可以使用以下命令更改日期和时间:
日期 -s '2019-08-21 05:12:44'
我显然可以手动完成此操作,但我想了解如何将 Windows 机器时间带入该命令行。
非常感谢!
编辑:这是一个定制的硬件,运行 Linux,有 3 个实时时钟。我通过 USB 电缆将其连接到 PC,但它具有内置蓝牙和 WiFi 功能。
第二次编辑:我想说我以“root”用户身份通过 SSH 进入设备。
使用带有 Paramiko 库的 Python,我设法使用以下代码将 Windows 机器时间带入 Linux 机器时间:
import datetime
import paramiko
import time
#create SSH client
client = paramiko.SSHClient()
#automatically add the host key
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
#connect to the Linux device
client.connect('address', username='username', password='password')
#delay subsequent commands by 10s to be sure the connection is established
time.sleep(10)
#execute command
stdin, stdout, stderr = client.exec_command(str(str("date -s '" + str(datetime.datetime.now()))[:-7] + "'")) #bring in the local Windows machine time
stdin.close()
print(stdout.read(),)
奇怪的是,如果我不使用下面这行代码,它就不起作用:
stdin.close()
非常感谢您的帮助!