我正在尝试寻找一种方法来在家用电脑和工作电脑之间设置提醒。我需要类似这样的功能:
- 我将一个文本文件放在家庭电脑的 Dropbox 中,然后将其上传到 Dropbox(已同步)
- 当我打开我的 WorkPC 时,文件会通过 Dropbox 下载到我的电脑上。
- 我工作电脑上的程序在 Dropbox 文件夹中看到一个已修改的文件,并打开它。
这样,每当我更改该文本文件时,程序(homepc 或 workpc)都会在 Windows 启动时打开它。这应该只在启动时发生一次,并且应该在 homepc 和 work pc 上都设置吗?
可以通过批处理脚本完成此操作吗?或者一些免费软件/便携式软件(最好是便携式的!)
另一种选择是,它只是将修改后的文本文件从 Dropbox 文件夹复制到桌面。两台电脑上的桌面都很干净(没有任何图标),因此复制到桌面的任何文件都清晰可见,然后我就可以看到提醒并删除复制的文本文件……这可能很容易,但我不知道批处理脚本编程。
谢谢!
答案1
这应该是可行的。
使用 Dropbox 和使用 utorrent 的种子已经可以实现这一点。让 utorrent 检查 Dropbox 文件夹中的种子,如果找到,它会加载它,然后删除它(如果您愿意)。
我会为此专门创建一个文件夹。使用登录脚本,这样当您登录时(实际上没有办法通过启动),它会检查 Dropbox 文件夹,然后在您选择的编辑器中打开它。您可能希望脚本等待 30 秒左右,以确保 Dropbox 正在运行并已完全同步。
因此两台计算机的伪登录脚本将如下所示。
@echo off
wait 60 : seconds, hopefully
if exist d:\Dropbox\Reminders\* uedit32 d:\Dropbox\Reminders\*
等待一分钟,然后,如果该目录中有文件,则使用我的编辑器打开该目录下的每个文件
d:\Dropbox\ 是您的 Dropbox 位置。我的位置实际上是 d:\dropbox\dropbox(以前是 d:\My Dropbox\Dropbox ...)
或者,我猜:
for %%j in (d:\Dropbox\Reminders\*) do notepad %%j
然后将调出目录中的每个人。用您选择的编辑器替换记事本。我的原始作品与我的编辑器一起使用。:p
然后您将负责将它们从目录中删除。
如果你只想调出新的提醒,将新的提醒放入提醒中,并保留旧的(仍然有价值的提醒),
@echo off
wait 60 : seconds, hopefully
for %%j in (d:\dropbox\reminders\*) do (move %%j d:\dropbox\oldrems & youreditor "d:\dropbox\oldrems\%%~nxj")
同样,我们等待 60 秒以加载并同步 Dropbox。然后,对于新提醒文件夹中的每个提醒,我们将其移动到旧提醒文件夹 (oldrems),如果成功,我们将在新文件上运行 youreditor。
%%~nxj 取批处理变量 j 并将其精简为文件名和扩展名。否则它将呈现为 d:\dropbox\oldrems\d:\dropbox\reminders\whatthefilenameis.ext 请参阅 FOR /? 了解更多信息。
这样做的问题是可能会发生文件名冲突。在这种情况下,move 将不会移动文件,并且它将保留在那里,直到您将其删除,或者删除文件冲突并再次登录,在这种情况下它将被移动。
这有帮助吗?
编辑:要使用默认打开程序打开文件,请将 youreditor 替换为 start“”
@echo off
wait 60 : seconds, hopefully
for %%j in (d:\dropbox\reminders\*) do (move %%j d:\dropbox\oldrems & start "" "d:\dropbox\oldrems\%%~nxj")
我总是在开始处添加“”作为标题,因为如果你将文件放在引号中(我在这里这样做了,以防文件名包含空格),它会将文件名作为窗口名称,然后抱怨没有东西可打开。或者,如果你担心可能会得到一个空白的窗口标题,你可以将“d:\dropbox\oldrems\%%~nxj”重复两次
start "d:\dropbox\oldrems\%%~nxj" "d:\dropbox\oldrems\%%~nxj"
然后它将为您提供窗口标题的文件名。
Windows 95/98(/ME?) 使用 start.exe(Win NT 及更高版本中的启动嵌入在 CMD.EXE 中),它从未出现过此问题(并且以 st.exe 的形式存在于我的库中;))
从技术上来说,
"d:\dropbox\oldrems\%%~nxj"
应该有效。但并非总是如此。start "" "d:\dropbox\oldrems\%%~nxj" 总是做。
这将启动所有可执行程序,因此如果您只想拥有一个 .CMD 文件以供进一步编辑,则必须更改扩展名,否则它实际上将执行 .CMD 文件。.BAT、.COM、.EXE、.PS1、.VBS 和任何其他扩展名也是如此。您已被警告。