Mac CLI简化了命令行,因此您可以更快地工作

Mac CLI是一个开源项目,从根本上简化了Mac上使用Terminal的过程。从前,当您打开计算机时,您会看到一个闪烁的光标。然后Mac普及了GUI,由于其学习曲线和易用性,GUI仍然在消费市场上占主导地位。

但是Terminal是一种强大而快速的工作方式。强大的功能伴随着您需要学习深奥的语法的警告,而这并不直观。

Mac CLI通过其简化的语法使查找和使用这些命令变得更加容易。

这时您将需要您的帐户具有管理员权限,并且高级用户可以将其帐户添加到Sudoers文件中。有一些选项可以从项目的Github页面安装应用程序,最简单的方法就是卷曲。

启动终端(点击 command + spacebar 调出Spotlight并搜索它) ),然后将此代码行粘贴到命令行中:

sh -c "$(curl -fsSL https://raw.githubusercontent.com/guarinogabriel/mac-cli/master/mac-cli/tools/install)"

Mac CLI将安装所需的几个模块:自制软件,Git,Python和Pipe Viewer。还有一些较小的软件包:Glances,MySQL CLI,Speedtest-CLI iStats和其他在安装过程中可以选择的实用程序。我在设置过程中使用了默认设置,但可以随意跳过您不打算使用的工具。这样可以节省驱动器上的空间,并减少更新系统所需的时间。

如果您认为Mac CLI不适合您,则可以使用以下命令通过命令行将其删除好。您可能只需要重新安装即可删除一些不需要的模块。无论如何,都可以将此命令粘贴到Terminal中:

sh -c "$(curl -fsSL https://raw.githubusercontent.com/guarinogabriel/mac-cli/master/mac-cli/tools/uninstall)"

您应该在Github上查看项目的这些部分,以使您知道它对Mac所做的更改。我会尝试记录发生的具体位置,但是在运行这些实用程序时遇到了很多奇怪的权限问题。它没有记录在项目页面上,但似乎与El Capitan的新安全模型有关(仅是我基于抛出错误的目录的假设),因此您的里程可能会因操作系统和用户而异

基本知识:简单命令

一旦安装了Mac CLI,就可以开始将命令泵送到Terminal或任何命令行客户端(如复古风格的Catath)中。

自Mac App Store问世以来,更新Mac变得更加容易。但是,如果您正在寻找一个命令行来调用系统更新,那么它就变得非常简单。

mac update

这就是您需要输入的所有内容,它将调用

sudo softwareupdate -i -a;

这还将检查所有已安装Mac上的更新CLI实用程序,包括Ruby Gems和Homebrew工具。如果您遇到一些奇怪的权限问题,则是由于El Capitan采取了更为严格的安全措施。

这是一组相当不错的命令,可以访问。当您在共享办公室或咖啡厅中锁定Mac时可能会很烦。到目前为止,最简单的方法是将屏幕保护程序设置为Hot Corner或完全关闭机盖。现在您可以拉起屏幕保护程序或使用单个命令锁定。

mac lock

将运行

/System/Library/CoreServices/Menu\ Extras/User.menu/Contents/Resources/CGSession -suspend

并执行您将返回当前用户会话的登录屏幕,直到激活为止。如果您的Mac设置为从屏幕保护程序要求输入密码,则这样做可能会更容易一些。

mac screensaver

subs for the

open -a /System/Library/Frameworks/ScreenSaver.framework/Versions/A/Resources/ScreenSaverEngine.app

并拉起您的屏幕保护程序。

将它们与支持终端命令的键盘启动器结合使用,可以更加轻松地控制Mac。如果您将Mac CLI设置为回显实际的终端命令,则可以确切地了解命令行对Mac的基本管理所提供的功能。

在本地网络上获取IP就是这样做很困难,但将其简化为单线后可以节省很多时间。

mac ip:local

翻译成

ipconfig getifaddr en0

并返回您在本地网络上的地址。

mac ip:public

运行

wget http:/ /ipinfo.io/ip -qO-

并返回您当前的公共IP。从标准实用程序中很难做到这一点。提升本地网络速度并不难,但是通过命令行进行操作可以为您节省很多不必要的动画。

mac端口

sudo lsof -iTCP -sTCP:LISTEN -P

的快捷方式,它将为您显示所有活动IP连接以及端口的列表它们已连接。

这些都不是高级功能,您可以在GUI中完成大多数这些工作而无需花费太多精力。但是他们演示了如何使用命令行将多个步骤简化为一行文本。 Mac CLI使其更加简单,因为您只需要记住一个简单的命令名称即可。

Mac CLI软件包中包含一个速度测试实用程序,但我无法使其正常运行。每次运行都会遇到异常。该错误似乎与其安装目录有关,并且所需的文件似乎没有正确的信息。经过一番挖掘之后,我确实找到了可以使用的简单命令。

wget -O /dev/null http://speedtest.wdc01.softlayer.com/downloads/test10.zip

高级实用程序:资源和远程管理

现在您已经掌握了基础知识,让我们更深入地工作

有一些菜单栏实用程序可以尝试帮助您查看正在处理的最新文件。输入命令:

mac find:recent n

n是分钟数,表示命令

sudo find / -mmin n-键入f

,用分钟代替n。然后它将开始搜索Mac上的每个目录,并发送回当时已更改的文件。应该注意的是,它涵盖了所有已更改的文件,因此您可能会遇到实用程序和经常更新的日志。使用 control + c 搜索完成后,您还需要退出此命令。

查找重复文件是实用程序应用程序的另一个常见问题,但是Mac CLI变成了简单的方法命令:

mac find:duplicated

使用以下命令运行搜索:

fdupes -r。< / code>

您可以通过从哪个目录开始控制搜索的深度。如果您只想检查用户文件夹,请在运行命令之前导航到该目录。如果不确定如何执行此操作,请输入 cd 和文件路径:

cd / Users / Username / Documents

这缺少应用程序的内置查看和删除功能,但对于较小的目录应该足够了。

活动监视器还不错,但是从顶部可以获得一些更好的数据。 Top是一个命令行实用程序,可为您提供系统上运行的所有内容的文本细分。与每个任务的PID(进程ID)以及活动监视器相比,这里提供的信息要多得多。这样,您可以使用kill命令杀死任何程序。您可以使用以下命令来调用它:

mac memory

哪个按内存使用量排在首位。如果您可以采用其他方式进行排序,则将很有帮助,但是由于它所拉出的命令是:

top -o MEM

对于CPU,只需将MEM替换为CPU。我不确定为什么CLI项目没有此选项。如果要使用网络,可以只运行以下命令:

nettop

,然后查看活动网络连接的列表。希望在以后的版本中添加这两个功能。考虑这些是您在不使用培训轮的情况下使用命令行的第一步。

SSH是sysadmin的最好的朋友。这需要一点时间来习惯语法,尤其是当您将SCP添加到组合中时。使用Mac CLI,您可以使用单个命令集访问所有这些命令。

mac ssh:下载文件X

mac ssh:下载文件夹X

,其中X是所需的远程文件的路径。您可以使用以下命令执行相反的操作:

mac ssh:upload X

如果您正在开发需要其他项目的项目文件夹以与远程计算机同步,您也可以执行以下操作:

mac ssh:sync:local X

mac ssh:sync :remote X

一旦掌握了更高级的命令行语法,就可以使用ssh,scp和rsync尝试真正的东西。

不仅仅是初学者:开发工具

如果您是开发人员,则可能具有一些扎实的命令行技能。但是Mac CLI不仅适用于新手,还有一系列开发人员实用程序。简化这些操作可以为您节省大量的工作时间。

我们过去介绍过MAMP;这是建立网站的简单方法。 MAC CLI允许您直接从终端管理整个服务器,包括MySQL数据库。这包括启动和停止服务器以及进行PHP安装。

如果您使用Git进行版本控制和项目管理,则已经知道其命令行语法是唯一的。使用Mac CLI,您可以将每条Git命令变成简短的一行。项目页面上有一个备忘单供您使用。

替代:FISH

如果您不想更改终端的默认行为,则FISH可能是一个更好的选择。我们已经针对Linux进行了介绍,但它也可以在Mac上使用。它与Terminal一起安装,并使用更传统的语法。

它更多地关注脚本功能,例如设置变量和循环。但是,方便的是选项卡的完成和建议。键入命令时,您会得到关于您要查找的内容的建议,然后单击选项卡以完成命令。

FISH不能像Mac CLI一样简化命令行。但是,它在易用性和坚持传统语法之间做出了折衷。

控制命令行

Mac CLI应该可以帮助您更多地在Terminal中开始工作。浏览Github上的项目页面,以查找您可以使用Mac CLI执行的更多操作。使用各种实用程序将使您摆脱使用命令行执行任务的烦恼。

您会发现以这种方式工作可以节省大量时间,尤其是当您组合使用这些命令时与Quicksilver或Alfred。然后,您只需使用键盘快捷键即可将命令发送到终端,而无需将手从键盘上移开。

您最好的命令行省时方法是什么?

图片来源:通过Flickr烘焙Batter Patterson,通过Flickr烘焙Jeremy Foo,通过Flickr烘焙Aurimas

标签: 命令提示符 Mac技巧 终端机 Unix