Mac实用技巧之:压缩/解压
Table of Contents
特别注意:Windows系统默认情况下是不支持把文件压缩成rar格式的,如果能,那一定是安装了第三方软件“WinRAR”。
而WinRAR是收费软件,所以macOS无法免费使用WinRAR,造成的结果就是,在macOS下你无法免费把文件压缩成.rar
格式,但解压.rar
格式是免费的。有人可能会说,我用Windows就可以把文件压缩成.rar
格式,而且不用收费呀,那是因为你的Windows安装的是WinRAR破解版,但这个软件在macOS端没有破解版,所以如果想要在macOS下把文件压缩成.rar
格式,需要购买相关软件(29美元,差不多200元RMB,而且只能在一台电脑上用),并且它是命令行版本的,需要用第三方软件去调用它,目前我知道的可以用BetterZip。
这是WinRAR的官网:https://www.rarlab.com/,点击里面的Browse all products,可以在里面找到RAR for MacOS X,但是只有命令行版本,不过可以用BetterZip去调用它,所以不需要你自己用敲命令。
网上那些说什么WinRAR for Mac的全都是假的骗人的,千万别安装,有可能有病毒或者是一些难缠的很难卸载的软件。
一、解压工具
1.macOS自带的解压
- 只能解压zip、tar.gz,bz2压缩文件(rar,7z就无法解压)
- 双击zip格式压缩包即可解压,解压出来的文件与原文件在同一个文件夹内。
2.使用第三方软件
1)Keka(推荐)
参见Keka使用教程。
2)The Unarchiver
– 这是一个免费的解压软件,只能解压不能压缩;
– The Unarchiver可以解压rar格式,所以一般用Windows的朋友/同事发过来的rar格式压缩包,The Unarchiver解压是没问题的
– 我曾经遇到过用Mac自带解压功能可以解压的,但用这个软件解压直接乱码无法解压,但一般不会碰到这种文件,就算碰到了也可以试试Mac自带的解压功能能不能解压,如果不能再想办法(这种情况很少。
3)MacZip(原eZip)
该软件为国人开发的免费压缩解压软件,缺点是解压的时候会先弹出一个窗口,让你选择解压某个文件或者解压全部,而不像The Unarchiver一样双击直接解压。
二、压缩工具
1、macOS自带压缩
- 选中要压缩的文件,右击选中文件→
压缩n项
即可(n是个数字,你选中了几个文件,n就是几)
- 如果被压缩的文件中有文件名是中文的,用这种方法压缩后,发给windows用户,windows用户解压后文件名为中文的文件的文件名一般都是乱码的,但文件内容本身不会乱码(我现在手头没有windows电脑,无法求证了,但之前确实试过发文件给windows的同事,打开乱码的情况)
2、使用第三方软件
使用macOS自带压缩来压缩文件,除了被压缩的文件本身,还会产生一个额外的文件夹__MACOSX
以及一个额外的文件.DS_Store
(下称两个文件),这两个文件用于存储一些文件所处的文件夹及文件的一些扩展信息(比如该文件是哪个软件创建的),在macOS上是看不到的,但是如果这个压缩包在Windows上解压,就会看到这两个无用的文件,会让一些Windows用户感到疑惑,为了避免让Windows用户感到疑惑,很多第三方软件都可以设置成压缩时,删除这两个文件,因为删除它们不会影响文件的内容。
1)Keka(推荐)
参见Keka使用教程。
2)betterZip
betterZip不仅能作为『快速预览』的插件(见:Mac实用技巧之:快速预览/QuickLook)还能压缩/解压,只是betterZip压缩麻烦点,要打开后,拖文件到软件里面再点压缩!但目前我没有测试过betterZip是否能正常解压windows解压的文件,一般都没问题的,但我用它只要是用它的压缩文件快速预览功能。
3)使用p7zip制作一个压缩按钮
最推荐使用这种方法,推荐的原因很简单,因为这种方法可以让你像使用系统自带的压缩一样方便,只需要右击选中的文件→点击压缩菜单即可。
先来看看最终效果
下面开始安装:
在『终端』中运行以下命令安装Homebrew(如果你安装过了就跳过这步)
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
使用brew安装p7zip
brew install p7zip
使用『自动操作/Automator』制作一个服务
以下命令是使用Automator制作服务时要拷贝进去的命令(其中name=Archive
表示当你压缩多个文件时生成的压缩包名字为“Archive”,你可以把“Archive”改成其它你想要的名字):
set -e
compress_method="zip"
[[ $# = 1 ]] && name=${1##*/} || name=Archive
base=${1%/*}
cd "$base"
i=2
[[ -e "$name.$compress_method" ]] && name="$name-$i"
while [[ -e "$name.$compress_method" ]]; do name="${name%??}-$((++i))"; done
echo ".DS_Store" >> .exclude_file_list
/usr/local/bin/7z a -r -t"$compress_method" ./"$name.$compress_method" "${@#"$base"/}" [email protected]_file_list
rm .exclude_file_list
open -R ./"$name.$compress_method"
如果喜欢使用快捷键的童鞋,可以在系统偏好设置
→键盘
→快捷键
→服务
→使用7z压缩
中点击添加快捷键
来添加快捷键
1、用自己制作的这个右键压缩按钮,实际上是通过Mac的『自动操作』去调用命令行的p7zip压缩工具。
2、这个压缩工具不会产生__MACOSX 或 .DS_Store这两个让Windows用户不理解的文件,并且可以避免在Windows下的乱码问题。
4)使用MacZip(原eZip)
MacZip是国人开发的一款压缩/解压软件(原名eZip),支持把文件压缩成zip格式和7z格式,支持解压绝大多数格式(比如mac默认不支持的rar和7z格式),支持加密压缩、分卷压缩、查看压缩包内文件,推荐使用。
KeKa使用教程
什么是Keka?
Keka是一款免费的用于macOS的压缩/解压软件,最初它是开源的,在1.0版之后就不开源了,但是保持免费,不过比较奇怪的是,它在AppStore是收费的,只有去它官网下载才免费,但功能都是一样的,可能相当于提供了一个捐赠的渠道吧,愿意支持一下他们的就去AppStore购买收费版,不愿意花钱的就去官网下载免费版。
我非常推荐这款软件,因为它是目前我所知的第三方压缩软件里,免费支持加密压缩(解压要输入密码)、分卷压缩及多线程压缩的压缩软件,其它第三方压缩软件,虽然都有这些功能,但是需要收费,免费版只能用常用的压缩功能。
设置使用Keka压缩
这款软件的安装包是dmg安装包,安装方法都是最基本的,如果你还不会在macOS上安装软件,或者是对安装软件概念很模糊,请看我这篇文章。
安装好之后,要对它进行一些设置。首先,我们随便右击一个文件,它会多出这三个菜单
macOS上的软件是可以对右键添加菜单项的,像上图那样的菜单,如果超过5个,那么就会被缩进二级菜单里(因为一直往下排会导致菜单越来越长),这样如果我们要点击这些菜单,还要进入二级菜单中点击,会比较麻烦,所以我们应该避免右键中的自定义菜单超过5个。
而上图的菜单中,其实只有一个有用,那就是“使用Keka压缩”,“使用Keka提取”其实就是使用Keka解压,但是解压我们可以用双击的方式解压,这个下面会讲。至于“发送到Keka”,这个菜单是双向功能,它会自动判断文件类型,如果发送的文件类型不是压缩包,那么它就会将这个文件压缩,如果发送的是压缩包,那么它就会把该文件解压到当前文件夹。
这么说,这个“发送到Keka”貌似挺有用的,但其实不然,一是我可以把解压设置成直接双击,这样比先右击再点击解压菜单更快捷,二是假如我就是要装多个压缩包再次压缩成一个压缩包呢?很显然它无法做到,因为它会判断文件之前的类型,是压缩包,它直接就把它解压了,不会将它再次压缩。
前面说了这么多,就是要只留下“使用Keka压缩”这一个菜单,那另外两个菜单怎么去掉呢?我们进入:系统偏好设置→键盘→快捷键→服务,在右侧窗口中找到Keka的三个菜单,把不需要出现在菜单右键中的选项的勾取消勾选即可
可以看到,当我把“使用Keka提取”和“发送到Keka”取消勾选之后,右击文件出来的菜单就只剩“使用Keka压缩”一个了
使用Keka压缩文件
右击文件→点击“使用Keka压缩”即可在当前目录生成一个压缩包!
这种方式压缩,生成的压缩包格式是.zip
格式,并且自动排除了前面所说的__MACOSX
文件夹,Windows用户解压后不会看到有__MACOSX
文件夹。
如果你想压缩成其它格式,可以在压缩前先打开Keka设置窗口,选择要压缩的格式,并且在不关闭这个设置窗口的情况下,右击文件→点击“使用Keka压缩”即可压缩出你设置的格式,压缩完成后就可以关闭Keka设置窗口了
但是,我建议直接用默认的ZIP格式就好,因为这是所有系统通用的并且最常用的。
分卷压缩
分卷压缩主要是有一些文件比较大,上传到一些论坛等地方的时候,单个文件太大了有限制,所以就把它分成几部分上传,解压的时候,只要把所有分卷都放在一个文件夹里,解压其中一个文件即可。
要使用Keka分卷压缩,需要在压缩前打开Keka(其实就是它的配置窗口),在里面填上分卷大小,如下图,单位可以是MB、GB等等
然后在不关闭前面配置窗口的情况下,右击要压缩的文件→点击“使用Keka压缩”即会自动分卷压缩,压缩完之后,关闭Keka配置窗口即可,这个分卷配置并不会被保存,也就是说下次你还要分卷压缩,还是要打开Keka,再填上分卷大小,再去压缩。
加密压缩
跟分卷压缩一样,先打开Keka配置窗口,把密码填两遍(为了确定你填的密码没错,一般涉及到密码都会要求重复填一遍),在不关闭配置窗口的情况下,右击要压缩的文件→点击“使用Keka压缩”即可,压缩出来的压缩包,解压的时候会需要密码,而且不是一定需要Keka来解压,因为我们用的是标准的ZIP格式,所有的电脑系统以及解压软件都支持这种格式。
同理,压缩完之后就可以关闭这个keka窗口了,密码不会被保存,下次如果还要加密压缩,需要打开这个窗口重新填密码。
设置使用Keka解压
这个非常简单,我们知道双击文件其实就是打开文件,所以双击压缩包其实就是打开压缩包,那它会用什么打开呢?默认是用系统自带的压缩/解压软件,叫“归档实用工具”,如果我们把默认打开方式修改为Keka,那么双击的时候就会用Keka打开压缩包,而“打开压缩包”其实就是解压(并不像Windows那样会弹出来一个窗口,当然如果你要弹出窗口那种,macOS上也有这样的软件,比如MacZip就可以)。
打开一个文件(即“双击”这个操作),还可以用键盘来代替,选中文件,按cmd+↓
即可。
修改默认打开方式
右击任意一个压缩包文件→显示简介→在简介里找到“打开方式”→选择“Keka”→点击“全部更改”即可。
注意,“全部更改”的意思是,同一类型(即同一个扩展名)的程序都会应用这个设置,如果你不点“全部更改”,那么只有你设置的那一个文件会使用你的设置。
还有一点,虽然.zip
和.rar
都是压缩格式,但是如果我“全部更改”修改的是.zip
,那么理论上.rar
还是会用原来系统自带的压缩方式,而系统自带的解压是无法解压rar格式的,所以理论上它会无法解压。
但实际上,因为我们安装了Keka,系统会自动把Keka设置为.rar
文件的默认解压方式,但这只针对没有默认软件可以打开的格式,像.zip
这种有默认软件能解压的,就需要你手动修改它的默认打开方式为Keka。
而且这个修改默认打开方式的方法,不只适用于压缩包,任何文件都可以用这种方法来设置默认用哪个软件来打开它(即双击的时候默认用哪个软件来打开它)。