使用Mac终端的初学者指南


时间: 2020-10-20 12:39:16 人气: 614 评论: 0

对于大多数Mac日常任务,柔软友好的GUI既是资产也是舒适。有时候,Finder是个笨拙的中间人。

引导mac终端

有更快的方法可以找出讨厌的5GB文件在哪里隐藏,或与您认为已删除的该应用程序相关的每个文件的路径。对于这些工作和其他工作,命令行是您最好的朋友。

什么是终端?

Terminal是一个实用程序,可让您通过命令行与Mac进行交互。Linux操作系统包括类似的工具,因为Linux和macOS都是类似Unix的操作系统。命令行界面(CLI)或您在Terminal中键入以与Mac交互的语言称为bash。我们下面讨论的所有内容都是bash命令。

Mac上打开终端工具使用之前,如果您愿意,甚至可以第三方终端替代品以实现自定义外观。

Mac通用命令行提示

首先,让我们看一下您应该了解的一些基本的终端事实。

一般语法

bash命令通常遵循以下模式:

[Command] [Options] [Input or Path to File or Directory]

例如,在:

ls -la /Applications
ls

是命令:

-la

是两个单独选项的组合(

-l
-a

),以及

/Applications

是列出的路径。

路径

了解路径将帮助您了解macOS实际如何查看文件。本质上,文件的路径是其中包含文件的俄罗斯娃娃的文件夹嵌套,后跟文件本身的名称。

例如,在Mac上,位于用户John Doe桌面上的名为“My Secrets”的文件的路径为

/Users/jdoe/Desktop/"My Secrets"

空白空间

您必须转义空格以使终端正确处理它。当bash看到空格时,它将其解释为命令的结尾。因此,如果您的文件夹名称中带有空格,例如Path Test,则尝试使用以下命令列出其内容

ls /Applications/Path Test

您将获得以下信息:

无效的路径导致Bash命令失败

这里发生了什么?好吧,bash认为您在/Applications/Path上调用了ls。当找不到该文件时,它停止了。

如果希望bash识别文件夹的全名,则可以将名称用引号引起来或使用反斜杠,如下所示:

ls /Applications/"Path Test"
ls /Applications/Path\ Test

Sudo

以下许多命令需要管理员级别的访问权限。如果您当前尚未登录管理员帐户,但知道管理员密码,则可以放置

sudo

(代表“单个用户执行”)在命令前面,以暂时为其赋予管理员级别的特权。

终端命令以改善您的工作流程

现在您已经了解了基础知识,下面让我们看一些非常方便的命令。请注意,您可以通过键入以下命令来获取有关这些命令的完整信息,包括所有选项和示例

man <command name>

进入到终端程序

find

  • 替代:Spotlight

  • 更好的理由:速度更快,可以搜索Spotlight排除的系统文件夹或无法建立索引的系统文件夹。

除非您告诉Spotlight,否则Spotlight倾向于跳过macOS系统文件,即使这样,索引它们也可能会遇到麻烦。相反,bash find命令可以在任何地方搜索任何内容,并将输出您要查找的内容的完整路径。

find 的语法包括四个部分。按顺序,它们是:

  1. find

  2. 您要搜索的目录的路径(下面的/Applications

  3. 选项(以下示例具有-name,这意味着find将搜索与该名称匹配的文件)

  4. 要搜索的字符串(以下示例具有Google Chrome)

您应该知道find使用正则表达式(也称为正则表达式)。对该主题的完整说明超出了本文的范围(或教科书之外的任何内容)。但是,以下示例在正则表达式中引入了一个重要概念,即星号(*)或通配符。

将其放在搜索字符串的开头和结尾意味着查找将输出在搜索词前后带有字符的结果。在这种情况下,谷歌浏览器将启动Google Chrome.app。

这一切看起来像这样:

bash find命令的示例

du

  • 替换为:Cmd + I以显示信息。

  • 为什么会更好:它可以一次向您显示多个文件夹,并且通常需要较少的时间来加载。

du代表“磁盘使用率”,可以快速告诉您文件或文件夹的大小,甚至文件夹中的文件列表。

du 的最佳选择是:

  • -d(深度):当数字后跟数字时,告诉find将其搜索限制在其运行目录中的-d深度级别。例如,如果您运行

  • du -d 1 /Applications

    它将仅显示“应用程序”文件夹中的文件夹和文件的总大小,而不显示这些文件夹中子文件夹的大小。

  • -h(人类可读):这将以K,M或G的形式显示文件的大小,代表千,兆或千兆字节。

看看du在行动:

Bash Command du在行动

MV

  • 替换:单击并移动文件夹和文件。

  • 为何更好:它更快并且不需要导航。

您可以使用mv将文件或文件夹快速移动到另一个文件夹。只需更改路径名称即可。语法是:

mv <old file path> <new file path>

例如:

mv /Users/jdoe/Documents/file1 /Users/jdoe/Desktop/file1

会将file1从jdoe的Documents移到他的Desktop。

Ls

  • 替换为: Cmd + i以显示信息。

  • 为何更好:它速度更快,可以一次显示多个文件上的信息,并且高度可定制。

ls是一个功能非常强大的命令,用于准确显示文件夹中的内容。它还会显示允许您查看的人,如果您有任何隐藏的文件或文件夹,还有更多。

ls 的最佳选择是:

  • -l(长整数):显示文件夹中每个文件的权限,最新修改时间,文件所有者和文件名。

  • -a(全部):显示文件夹中的所有文件,包括隐藏的文件(用于显示macOS中的用户库,默认情况下处于隐藏状态)。

输出如下所示:

ls -la在行动

Mkdir

  • 替换为: Finder>文件>新文件夹

  • 更好的理由:更快,您可以在命令中直接设置名称,而不必双击新文件夹。


使用此命令可以立即创建新文件夹。 例:

mkdir /Users/jdoe/Desktop/cool_stuff

RM

  • 替换:将文件移动到垃圾箱并将其清空。

  • 为什么会更好:它更快,并且对于删除垃圾箱不会删除的讨厌文件很有用。

为此命令将立即删除您放置在其路径中的任何文件,而不会受到任何影响。显然,使用它时要格外小心。与单击“清空废纸rash”不同,rm不会询问您是否确定。它假设您知道自己在做什么。

关于rm要注意的一件事是,默认情况下,它将仅删除文件,而不删除文件夹。要删除文件夹,必须使用-R选项(代表递归)。

例:

rm -R /Users/jdoe/Desktop/cool_stuff

通过终端掌握Mac

现在你知道了一些基本的终端命令,可以开始将它们集成到你的日常Mac工作流程中。一旦您习惯于使用bash,您就可以超越简单地替换日常任务,开始探索只有命令行才能提供的功能。

使用自制软件在终端上安装Mac应用程序管理器。它允许您安装新的编程语言、软件存储库等。然后你可以继续尝试一些有趣且酷炫的命令,并自定义Mac终端使其更加有用

评论
游客