✨重置Finder窗口位置信息
重置Finder窗口位置信息的shell脚本如下
使用如下命令新建reset-window-position.sh
文件 并使用vim
编辑
touch reset-window-position.sh
vim reset-window-position.sh
在reset-window-position.sh
中写入以下内容
#!/bin/zsh
# 输入应用名称
echo "请输入应用程序的名称(如:Safari):"
read appName
# 获取输入的 bundle identifier
bundleId=$(osascript -e "id of app \"$appName\"")
# 检查 bundle identifier 是否获取成功
if [ -z "$bundleId" ]; then
echo "无法获取应用的 bundle identifier。"
exit 1
fi
echo "应用的 bundle identifier 是:$bundleId"
# 查找窗口位置信息
# 尝试在两个可能的位置查找 plist 文件
plistPaths=("$HOME/Library/Containers/$bundleId/Data/Library/Preferences/$bundleId.plist" "$HOME/Library/Preferences/$bundleId.plist")
foundPlist=""
for plistPath in "${plistPaths[@]}"; do
if [ -f "$plistPath" ]; then
echo "找到 plist 文件:$plistPath"
foundPlist=$plistPath
break
fi
done
if [ -z "$foundPlist" ]; then
echo "未找到 plist 文件。"
exit 1
fi
# 使用 plutil 和 grep 查找窗口位置信息
windowFrames=$(plutil -p "$foundPlist" | grep NSWindow | grep Frame)
if [ -z "$windowFrames" ]; then
echo "未找到窗口位置信息。"
exit 1
fi
echo "找到的窗口位置信息如下:"
echo "$windowFrames"
# 选择要删除的窗口信息字段
echo "请输入您想要删除的窗口信息字段(例如:NSWindow Frame MainWindow):"
read frameKey
# 删除选中的字段
defaults delete "$bundleId" "$frameKey"
echo "已删除指定的窗口位置信息。"
赋予执行权限后 运行shell脚本即可
chmod +x reset-window-position.sh
sh reset-window-position.sh
✨重置Finder窗口大小信息
通过阅读以上shell脚本可知Finder的窗口存储在~/Library/Preferences/com.apple.finder.plist
文件中
我们输出plist
文件内容到json
中
plutil -p ~/Library/Preferences/com.apple.finder.plist >> ~/Desktop/temp.json
使用VS Code打开阅读可知实际上窗口大小信息存放在WindowBounds
键值中
如果需要删除某个位置的窗口大小信息需要根据WindowBounds
字段找到对应key
例如上图key为TrashViewSettings
实际上存放了废纸篓的窗口状态
阅读如上shell脚本先使用如下命令获取Finder的bundleId
osascript -e "id of app \"Finder\""
使用default
命令重置窗口大小信息
defaults delete $bundleId $frameKey
例如上图应该执行命令为
defaults delete com.apple.finder TrashViewSettings
但是由于实际上plist文件中可能存在很多个WindowBounds
字段
或者也可以先备份Finder设置
截个图保存自定义设置
然后直接删除com.apple.finder.plist
文件
rm ~/Library/Preferences/com.apple.finder.plist && killall Finder
✨参考及引用
https://sspai.com/prime/story/reset-macos-window-position
⭐转载请注明出处
本文作者:双份浓缩馥芮白
原文链接:https://www.cnblogs.com/Flat-White/p/18124956
版权所有,如需转载请注明出处。
标签:macOS,窗口,重置,信息,echo,plist,Finder,bundleId From: https://www.cnblogs.com/Flat-White/p/18124956