【踩坑】最新亲测能用!修复MacOS安装软件时提示“应该移到废纸篓”并且无法打开软件

本文主要是介绍【踩坑】最新亲测能用!修复MacOS安装软件时提示“应该移到废纸篓”并且无法打开软件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

转载请注明出处:小锋学长生活大爆炸[xfxuezhang.cn]

目录

网上方法的尝试

方法一:xattr

方法二:UPX

真的能用的方法

GateKeeper_Helper.command的内容


网上方法的尝试

方法一:xattr

以前的Mac版本可以通过以下方式来解开限制,可以先尝试一下:

sudo xattr -r -d com.apple.quarantine /Applications/Sketch.app

但新版本的Mac会报错没有权限:

方法二:UPX

也有方法说借助UPX来安装,具体来说:

brew install upx
sudo upx -d /Applications/Termius.app/Contents/MacOS/Termius

 但新版本的Mac依旧会报错:

真的能用的方法

1、首先下载这个脚本:macOS-GateKeeper-Helper: Simple macOS GateKeeper script.

2、授予可执行权限:

chmod +x GateKeeper_Helper.command

3、双击脚本运行,并选择“4”,按回车:

4、将要安装的app拖入(也可以直接输入路径),按回车:

5、安装成功,可以双击app运行了:

GateKeeper_Helper.command的内容

#!/bin/zsh#Attribute
GITHUB_URL="https://github.com/wynioux/macOS-GateKeeper-Helper"
RELEASE_VERSION="v1.2.2"
ROOT_PASSWORD=0# Color Set
# Reset
Color_Off='\033[0m'       # Text Reset# Regular Colors
Black='\033[0;30m'        # Black
Red='\033[0;31m'          # Red
Green='\033[0;32m'        # Green
Yellow='\033[0;33m'       # Yellow
Blue='\033[0;34m'         # Blue
Purple='\033[0;35m'       # Purple
Cyan='\033[0;36m'         # Cyan
White='\033[0;37m'        # White# Bold
BBlack='\033[1;30m'       # Black
BRed='\033[1;31m'         # Red
BGreen='\033[1;32m'       # Green
BYellow='\033[1;33m'      # Yellow
BBlue='\033[1;34m'        # Blue
BPurple='\033[1;35m'      # Purple
BCyan='\033[1;36m'        # Cyan
BWhite='\033[1;37m'       # White# Underline
UBlack='\033[4;30m'       # Black
URed='\033[4;31m'         # Red
UGreen='\033[4;32m'       # Green
UYellow='\033[4;33m'      # Yellow
UBlue='\033[4;34m'        # Blue
UPurple='\033[4;35m'      # Purple
UCyan='\033[4;36m'        # Cyan
UWhite='\033[4;37m'       # White# Functions
# Shows menu.
showMenu()
{echo "\n          GateKeeper Helper ${RELEASE_VERSION}"echo "          ${Blue}${GITHUB_URL}${Color_Off}\n"echo "${BGreen}Option 1: ${Green}Show GateKeeper Status${Color_Off}"echo "   ${BRed}Means:${Color_Off} Check GateKeeper status.\n"echo "${BGreen}Option 2: ${Green}Enable GateKeeper${Color_Off}"echo "   ${BRed}Means:${Color_Off} Enables GateKeeper."echo "       ${BCyan}>>${Color_Off} Best security.\n"echo "${BGreen}Option 3: ${Green}Disable GateKeeper${Color_Off}"echo "   ${BRed}Means:${Color_Off} Completely disables GateKeeper."echo "       ${BCyan}>>${Color_Off} Note that doing this introduces a major security risk in macOS.\n"echo "${BGreen}Option 4: ${Green}Remove app from GateKeeper quarantine${Color_Off}"echo "   ${BRed}Means:${Color_Off} Allows an individual quarantined app to run.\n"echo "${BGreen}Option 5: ${Green}Self-sign the app${Color_Off}"echo "   ${BRed}Means:${Color_Off} If GateKeeper is on and your app quits unexpectedly, try self-signing.\n"echo "${BGreen}Option 6: ${Green}Quit${Color_Off}"echo "   ${BRed}Means:${Color_Off} Quit script.\n"
}# Asks password.
askPassword()
{case $ROOT_PASSWORD in0)echo "${Cyan}Please provide your password to proceed, or press ^C to quit.${Color_Off}"ROOT_PASSWORD=1;;esac}# Shows continue message.
continueMessage()
{echo "\nPress any key to continue."read
}# Shows gatekeeper status.
showGateKeeperStatus()
{echo "${Green}You choose to show GateKeeper status.${Color_Off}"askPasswordsudo spctl --statuscontinueMessage
}# Enables gatekeeper.
enableGateKeeper()
{echo "${Green}You chose to enable GateKeeper. Good for you!${Color_Off}"askPasswordsudo spctl --master-enableecho "${Red}GateKeeper enabled.${Color_Off}"continueMessage
}# Disables gatekeeper.
disableGateKeeper()
{echo "${Green}You chose to disable GateKeeper.${Color_Off}"echo -e "    ${Red}>> Danger!${Color_Off}"echo -e "       Disabling GateKeeper is a very bad idea and creates"echo -e "       a major security hole in macOS\n"askPasswordsudo spctl --master-disableecho "${Red}GateKeeper disabled.${Color_Off}"continueMessage
}# Removes an app from gatekeeper quarantine
removeAppFromGateKeeper()
{echo "${Green}You chose to remove the app from GateKeeper quarantine.${Color_Off}"read "?Drag & drop the app on this window and then press Return: " FILEPATHaskPasswordsudo xattr -rd com.apple.quarantine "$FILEPATH"if [ $? -eq 0 ]; thenecho "${Red}App removed from quarantine.${Color_Off}"elseecho "${Red}App could not be removed from quarantine!${Color_Off}"ficontinueMessage
}# Self-signs an app.
selfSignApp()
{echo "${Green}You chose to self-sign an app.${Color_Off}"read "?Drag & drop the app on this window and then press Return: " FILEPATHaskPasswordsudo codesign -f -s - --deep "$FILEPATH"echo "${Red}If you see - replacing existing signature - that means you are done!${Color_Off}"echo "${Red}Otherwise please try again, sometimes it works second time.${Color_Off}"continueMessage
}# Shows quit message.
quitScript()
{echo "Quitting..."continueMessage
}# Shows invalid option message.
showInvalid()
{echo "${Red}Invalid option: ${BRed}${SELECTED_OPTION}${Color_Off}"continueMessage
}# Main function of the script.
startScript()
{while : doclearshowMenuread "?Please select an option: " SELECTED_OPTIONcase $SELECTED_OPTION in1)clearshowGateKeeperStatus;;2)clearenableGateKeeper;;3)cleardisableGateKeeper;;4)  clearremoveAppFromGateKeeper;;5)clearselfSignApp;;6)clearquitScriptbreak;;*)clearshowInvalid;;esacdone
}# Script starts here.
startScript

这篇关于【踩坑】最新亲测能用!修复MacOS安装软件时提示“应该移到废纸篓”并且无法打开软件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:https://blog.csdn.net/sxf1061700625/article/details/132256052
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/799703

相关文章

Nexus安装和启动的实现教程

《Nexus安装和启动的实现教程》:本文主要介绍Nexus安装和启动的实现教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Nexus下载二、Nexus安装和启动三、关闭Nexus总结一、Nexus下载官方下载链接:DownloadWindows系统根

MyBatis Plus 中 update_time 字段自动填充失效的原因分析及解决方案(最新整理)

《MyBatisPlus中update_time字段自动填充失效的原因分析及解决方案(最新整理)》在使用MyBatisPlus时,通常我们会在数据库表中设置create_time和update... 目录前言一、问题现象二、原因分析三、总结:常见原因与解决方法对照表四、推荐写法前言在使用 MyBATis

Java SWT库详解与安装指南(最新推荐)

《JavaSWT库详解与安装指南(最新推荐)》:本文主要介绍JavaSWT库详解与安装指南,在本章中,我们介绍了如何下载、安装SWTJAR包,并详述了在Eclipse以及命令行环境中配置Java... 目录1. Java SWT类库概述2. SWT与AWT和Swing的区别2.1 历史背景与设计理念2.1.

Java日期类详解(最新推荐)

《Java日期类详解(最新推荐)》早期版本主要使用java.util.Date、java.util.Calendar等类,Java8及以后引入了新的日期和时间API(JSR310),包含在ja... 目录旧的日期时间API新的日期时间 API(Java 8+)获取时间戳时间计算与其他日期时间类型的转换Dur

MySQL复杂SQL之多表联查/子查询详细介绍(最新整理)

《MySQL复杂SQL之多表联查/子查询详细介绍(最新整理)》掌握多表联查(INNERJOIN,LEFTJOIN,RIGHTJOIN,FULLJOIN)和子查询(标量、列、行、表子查询、相关/非相关、... 目录第一部分:多表联查 (JOIN Operations)1. 连接的类型 (JOIN Types)

Oracle修改端口号之后无法启动的解决方案

《Oracle修改端口号之后无法启动的解决方案》Oracle数据库更改端口后出现监听器无法启动的问题确实较为常见,但并非必然发生,这一问题通常源于​​配置错误或环境冲突​​,而非端口修改本身,以下是系... 目录一、问题根源分析​​​二、保姆级解决方案​​​​步骤1:修正监听器配置文件 (listener.

MySQL版本问题导致项目无法启动问题的解决方案

《MySQL版本问题导致项目无法启动问题的解决方案》本文记录了一次因MySQL版本不一致导致项目启动失败的经历,详细解析了连接错误的原因,并提供了两种解决方案:调整连接字符串禁用SSL或统一MySQL... 目录本地项目启动报错报错原因:解决方案第一个:第二种:容器启动mysql的坑两种修改时区的方法:本地

安装centos8设置基础软件仓库时出错的解决方案

《安装centos8设置基础软件仓库时出错的解决方案》:本文主要介绍安装centos8设置基础软件仓库时出错的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录安装Centos8设置基础软件仓库时出错版本 8版本 8.2.200android4版本 javas

Macos创建python虚拟环境的详细步骤教学

《Macos创建python虚拟环境的详细步骤教学》在macOS上创建Python虚拟环境主要通过Python内置的venv模块实现,也可使用第三方工具如virtualenv,下面小编来和大家简单聊聊... 目录一、使用 python 内置 venv 模块(推荐)二、使用 virtualenv(兼容旧版 P

Pytorch介绍与安装过程

《Pytorch介绍与安装过程》PyTorch因其直观的设计、卓越的灵活性以及强大的动态计算图功能,迅速在学术界和工业界获得了广泛认可,成为当前深度学习研究和开发的主流工具之一,本文给大家介绍Pyto... 目录1、Pytorch介绍1.1、核心理念1.2、核心组件与功能1.3、适用场景与优势总结1.4、优