
我在工作時使用 Google 雲端硬碟同步個人文檔,並且需要出於個人目的快速更新家中的文件。我在家裡有任務在任務管理器下運行,它使用這些更新的文件,有時它們對時間敏感。
我需要進行一些設置,在開始計劃任務之前強制同步我的家庭電腦的 Google 雲端硬碟資料夾,並在工作時獲取我對該文件所做的最新更新。
到目前為止,我所有的搜尋都指向從托盤圖示暫停和重新啟動 Google Drive,以強制同步,而不是關閉並重新啟動它。我嘗試並發現這個方案是有效的,但是沒有辦法從命令列複製相同的功能,即沒有這樣的命令列開關:
googledrivesync.exe /pause
或者
googledrivesync.exe /restart
我嘗試設定一個自動熱鍵作業來執行此滑鼠指向和單擊作業,但由於托盤圖示的數量不一致,在最好的情況下這是一次碰運氣。
我還嘗試使用 taskkill 殺死 googledrivesync.exe 並重新啟動它,但是,在運行 googledrivesync.exe 後,它會在桌面上留下一個 DOS 框打開。如果再執行幾次(因為我的家庭電腦作業每 15 分鐘運行一次),這些視窗的數量就會因為覆蓋整個螢幕而阻礙我規劃任務的運作。
任何其他想法或未記錄的Google驅動器功能將不勝感激。
答案1
由於您已經有了一種結束服務的方法,並且唯一的問題是存根 cmd 窗口,因此只需編寫一個小批次腳本即可:
- 執行您的方法來重新啟動服務
- 讓貝殼死掉。
像這樣的事情:
taskkill /fi "Service eq Google Sync"
exit
答案2
- 終止進程 GoogleDriveSync
- 在命令提示字元中前往資料夾 c:\program files\Google\drive\
- 執行 googledrivesync.exe /autostart
答案3
這是一個老問題了。但自從我在尋找同樣的問題時出現了這個問題。這就是我所做的。
一個小型 C# 應用程序,應該執行 OP 想要的“googledrivesync.exe /restart”操作
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Diagnostics;
namespace StartStopGDrive
{
class Program
{
static void Main(string[] args)
{
Process[] procs = Process.GetProcesses();
foreach (Process proc in procs)
{
if (proc.ProcessName == "googledrivesync")
proc.Kill();
}
Process.Start(@"C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Google Drive\Google Drive");
}
}
}
答案4
只有一種方法可以在 Google 雲端硬碟中強制同步。您需要有一個 Google 無法同步的「衝突檔案」(已損壞或其他任何情況)。然後右鍵單擊 Gdrive 圖標,選擇“查看無法同步的文件”並單擊“重試”。
每次都有效,並且正在相互同步 15 個雲端伺服器。 PITA,他們應該有一個強制重新同步的選項,但我們都知道他們為什麼不這樣做——頻寬。谷歌已經降低了重新同步頻率以降低成本,簡單明了。