在 PowerShell 中使用特定配置文件启动 Chrome

Posted

技术标签:

【中文标题】在 PowerShell 中使用特定配置文件启动 Chrome【英文标题】:Launch Chrome with specific profile in PowerShell 【发布时间】:2017-07-17 21:46:18 【问题描述】:

我正在尝试使用特定用户配置文件(--profile-directory 参数)在 PowerShell 中启动 Chrome,但它会创建一个新配置文件。

我试过了:

& "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --profile-directory=Foobar

& "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe --profile-directory=Foobar"

& "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe --profile-directory='Foobar'"

Start-Process "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --profile-directory=Foobar

Start-Process "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe --profile-directory=Foobar"

等等……

【问题讨论】:

我不确定该链接是如何应用的 - 你能解释一下吗? 在此处执行此操作的选项:***.com/questions/1673967/… 【参考方案1】:

也许你的路径名中有空格。试试这个:

Start-Process "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" '--profile-directory="Foo Bar"'

或者这个:

& "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" '--profile-directory="Foo Bar"'

更新:请注意,您不能只使用任何路径,而应使用简单的名称,例如“Foo”或“Foo Bar”,表示c:\Users\%USERNAME%\AppData\Local\Google\Chrome\User Data 的子目录,例如c:\Users\%USERNAME%\AppData\Local\Google\Chrome\User Data\Foo Bar。根据您的操作系统和操作系统版本,目录名称可能会略有不同。如果它们在Win7和Win10上相同,我不知道。我现在的机器是Win10 PC。

【讨论】:

我刚刚用包含空格的路径名的解决方案更新了答案。 还有一个关于 Chrome 配置文件文件夹的更新。 谢谢。我注意到用户列表(设置 > 人员)与 c:\Users\%USERNAME%\AppData\Local\Google\Chrome\User Data 下的文件夹不同(即它们不存在)。 “人”与“用户”有区别吗? 我的回答与 Windows 用户有关。每个 Windows 用户都可以在其领域内创建多个 Chrome 配置文件(人员)。您可以通过echo $env:USERNAME 获取Windows 用户,并通过echo $env:LOCALAPPDATA 从PowerShell 获取AppData\Local 文件夹。 如果我例如在 Chrome 中创建一个新用户并称他为“John Doe”,个人资料文件夹类似于“Person 1”。默认用户是“默认”。在此人的文件夹中,您会找到一个名为 Preferences 的文本文件,您可以在其中找到像 "name":"John Doe" 这样的子字符串,通过它您可以找出哪个文件夹对应于哪个命名的 Chrome 用户。但这现在真的不再是 PowerShell 问题了,我们正在偏离主题进入 Chrome。【参考方案2】:

我仍然无法让 powershell Start-Process 命令启动具有多个标志的 chrome,可能是因为 2 年多后浏览器版本不同。对我来说,使用 Windows 10 版本 1902、Chrome 版本 76.0.3809.132(官方构建)(64 位)

Start-Process "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" -disable-web-security, --disable-gpu, --user-data-dir=~/chromeTemp

添加逗号并使用“chromeTemp”而不是“/path/to/User Data”是对我有用的更改。

【讨论】:

以上是关于在 PowerShell 中使用特定配置文件启动 Chrome的主要内容,如果未能解决你的问题,请参考以下文章

将当前时间分配给powershell变量

powershell 这将使用PowerShell从库中删除SharePoint中特定文件夹和子文件夹中的文件

使用 Powershell 脚本获取文件名中日期大于某个特定日期的文件

如何使用 PowerShell 递归删除具有特定名称的文件夹?

在过去 1 分钟创建的文件中查找特定单词的 Powershell 脚本

PowerShell - 递归提取特定文件夹的内容