mirror of
https://github.com/yuaotian/go-cursor-help.git
synced 2025-06-08 04:22:06 +08:00
新增 Cursor 初始化清理函数以删除不必要的文件和文件夹,提升脚本的稳定性和用户体验。该函数在 Linux 和 macOS 环境下均进行了实现,确保用户配置的清理工作能够顺利完成。
This commit is contained in:
parent
776ecb0434
commit
c1b7e42e27
@ -1084,6 +1084,67 @@ select_menu_option() {
|
||||
done
|
||||
}
|
||||
|
||||
# 新增 Cursor 初始化清理函数
|
||||
cursor_initialize_cleanup() {
|
||||
log_info "正在执行 Cursor 初始化清理..."
|
||||
# CURSOR_CONFIG_DIR 在脚本全局已定义: $HOME/.config/Cursor
|
||||
local USER_CONFIG_BASE_PATH="$CURSOR_CONFIG_DIR/User"
|
||||
|
||||
log_debug "用户配置基础路径: $USER_CONFIG_BASE_PATH"
|
||||
|
||||
local files_to_delete=(
|
||||
"$USER_CONFIG_BASE_PATH/globalStorage/state.vscdb"
|
||||
"$USER_CONFIG_BASE_PATH/globalStorage/state.vscdb.backup"
|
||||
)
|
||||
|
||||
local folder_to_clean_contents="$USER_CONFIG_BASE_PATH/History"
|
||||
local folder_to_delete_completely="$USER_CONFIG_BASE_PATH/workspaceStorage"
|
||||
|
||||
# 删除指定文件
|
||||
for file_path in "${files_to_delete[@]}"; do
|
||||
log_debug "检查文件: $file_path"
|
||||
if [ -f "$file_path" ]; then
|
||||
if rm -f "$file_path"; then
|
||||
log_info "已删除文件: $file_path"
|
||||
else
|
||||
log_error "删除文件 $file_path 失败"
|
||||
fi
|
||||
else
|
||||
log_warn "文件不存在,跳过删除: $file_path"
|
||||
fi
|
||||
done
|
||||
|
||||
# 清空指定文件夹内容
|
||||
log_debug "检查待清空文件夹: $folder_to_clean_contents"
|
||||
if [ -d "$folder_to_clean_contents" ]; then
|
||||
if find "$folder_to_clean_contents" -mindepth 1 -delete; then
|
||||
log_info "已清空文件夹内容: $folder_to_clean_contents"
|
||||
else
|
||||
if [ -z "$(ls -A "$folder_to_clean_contents")" ]; then
|
||||
log_info "文件夹 $folder_to_clean_contents 现在为空。"
|
||||
else
|
||||
log_error "清空文件夹 $folder_to_clean_contents 内容失败 (部分或全部)。请检查权限或手动删除。"
|
||||
fi
|
||||
fi
|
||||
else
|
||||
log_warn "文件夹不存在,跳过清空: $folder_to_clean_contents"
|
||||
fi
|
||||
|
||||
# 删除指定文件夹及其内容
|
||||
log_debug "检查待删除文件夹: $folder_to_delete_completely"
|
||||
if [ -d "$folder_to_delete_completely" ]; then
|
||||
if rm -rf "$folder_to_delete_completely"; then
|
||||
log_info "已删除文件夹: $folder_to_delete_completely"
|
||||
else
|
||||
log_error "删除文件夹 $folder_to_delete_completely 失败"
|
||||
fi
|
||||
else
|
||||
log_warn "文件夹不存在,跳过删除: $folder_to_delete_completely"
|
||||
fi
|
||||
|
||||
log_info "Cursor 初始化清理完成。"
|
||||
}
|
||||
|
||||
# 主函数
|
||||
main() {
|
||||
# 初始化日志文件
|
||||
@ -1156,6 +1217,9 @@ main() {
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 执行 Cursor 初始化清理
|
||||
cursor_initialize_cleanup
|
||||
|
||||
# 备份并处理配置文件 (机器码重置选项)
|
||||
if ! generate_new_config; then
|
||||
log_error "处理配置文件时出错,脚本中止。"
|
||||
|
@ -50,6 +50,66 @@ log_cmd_output() {
|
||||
echo "" >> "$LOG_FILE"
|
||||
}
|
||||
|
||||
# 新增 Cursor 初始化清理函数
|
||||
cursor_initialize_cleanup() {
|
||||
log_info "正在执行 Cursor 初始化清理..."
|
||||
local BASE_PATH="$HOME/Library/Application Support/Cursor/User"
|
||||
|
||||
log_debug "基础路径: $BASE_PATH"
|
||||
|
||||
local files_to_delete=(
|
||||
"$BASE_PATH/globalStorage/state.vscdb"
|
||||
"$BASE_PATH/globalStorage/state.vscdb.backup"
|
||||
)
|
||||
|
||||
local folder_to_clean_contents="$BASE_PATH/History"
|
||||
local folder_to_delete_completely="$BASE_PATH/workspaceStorage"
|
||||
|
||||
# 删除指定文件
|
||||
for file_path in "${files_to_delete[@]}"; do
|
||||
log_debug "检查文件: $file_path"
|
||||
if [ -f "$file_path" ]; then
|
||||
if rm -f "$file_path"; then
|
||||
log_info "已删除文件: $file_path"
|
||||
else
|
||||
log_error "删除文件 $file_path 失败"
|
||||
fi
|
||||
else
|
||||
log_warn "文件不存在,跳过删除: $file_path"
|
||||
fi
|
||||
done
|
||||
|
||||
# 清空指定文件夹内容
|
||||
log_debug "检查待清空文件夹: $folder_to_clean_contents"
|
||||
if [ -d "$folder_to_clean_contents" ]; then
|
||||
if find "$folder_to_clean_contents" -mindepth 1 -delete; then
|
||||
log_info "已清空文件夹内容: $folder_to_clean_contents"
|
||||
else
|
||||
if [ -z "$(ls -A "$folder_to_clean_contents")" ]; then
|
||||
log_info "文件夹 $folder_to_clean_contents 现在为空。" # 通常find成功即代表操作完成
|
||||
else
|
||||
log_error "清空文件夹 $folder_to_clean_contents 内容失败 (部分或全部)。请检查权限或手动删除。"
|
||||
fi
|
||||
fi
|
||||
else
|
||||
log_warn "文件夹不存在,跳过清空: $folder_to_clean_contents"
|
||||
fi
|
||||
|
||||
# 删除指定文件夹及其内容
|
||||
log_debug "检查待删除文件夹: $folder_to_delete_completely"
|
||||
if [ -d "$folder_to_delete_completely" ]; then
|
||||
if rm -rf "$folder_to_delete_completely"; then
|
||||
log_info "已删除文件夹: $folder_to_delete_completely"
|
||||
else
|
||||
log_error "删除文件夹 $folder_to_delete_completely 失败"
|
||||
fi
|
||||
else
|
||||
log_warn "文件夹不存在,跳过删除: $folder_to_delete_completely"
|
||||
fi
|
||||
|
||||
log_info "Cursor 初始化清理完成。"
|
||||
}
|
||||
|
||||
# 获取当前用户
|
||||
get_current_user() {
|
||||
if [ "$EUID" -eq 0 ]; then
|
||||
@ -1238,6 +1298,10 @@ main() {
|
||||
# 执行主要功能
|
||||
check_permissions
|
||||
check_and_kill_cursor
|
||||
|
||||
# 执行 Cursor 初始化清理
|
||||
cursor_initialize_cleanup
|
||||
|
||||
backup_config
|
||||
|
||||
# 新增:默认执行系统 MAC 地址修改
|
||||
|
Loading…
x
Reference in New Issue
Block a user