通过命令行节省时间

好吧,在您继续之前,请让我澄清一下。 这是一个初学者教程,仅介绍了几种方法,在Mac上使用命令行(也称为terminal.app)比GUI界面更有效。

基金会

我们需要了解如何使用终端。 并不太复杂,您只需输入命令以指示计算机执行某些任务即可。 这是一条使您通读本文的规则: 命令标记文件名。

这不是一成不变的规则,但在大多数情况下都有效。 让我们分解一下。

  1. 首先,指定要执行的命令,例如ls此命令实际上可以按原样使用。 打开您的终端,然后键入ls Hit return以执行命令。 您的主文件夹(命令行中的目录中的目录)的内容应列出。 ls是列出命令。 到目前为止一切都好吧?
  2. 接下来,我们可以选择指定标志或选项。 标志用于修改命令的行为,标志以破折号开头,“通常”后跟一个普通字母。 ls -F在您的终端中尝试一下。 记住要执行命令,必须按回车键。 请注意,此标志是大写字母。 -F标志告诉ls命令在列表中显示目录(文件夹)。 您将在所有文件夹后看到一个斜杠(/)。
  3. 最后,我们指定要在其中执行命令的文件名或目录(文件夹)名称。 ls -F /Users到目前为止,我们已经在主目录中执行了该命令。 现在,我们告诉ls列出我们的Users目录的内容。 指定目录或文件名时,必须提供其路径,即必须告诉系统在哪里可以找到目录或文件。 正斜杠本身就是我们表示根目录的方式。 在这种情况下,我们说从根(/)开始,然后寻找用户。 Users目录是根目录的子目录。 我们还使用正斜杠来分隔子目录。 如果要进入“用户”目录并访问用户“ John”,请输入/Users/John

在命令,标志和目录名称之间放置空格很重要。

这就是你来的目的

因此,到目前为止,您还不确定如何节省时间。 不要害怕! 现在,我们将研究3种情况,以及如何使用命令行节省您的宝贵时间。

场景1

您正在上大学,并且想要创建一个文件夹“ NYIT”。 在此文件夹中,每个课程都有一个单独的文件夹。 作为计算机科学专业的学生,​​您将修读CS104,CS150,CS151和CS160。 对于每门课程,您还希望有一个用于存放PPT(PowerPoint演示文稿),笔记和作业的文件夹。 是的,你是一个很有条理的学生。

在Finder中,您将创建一个名为“ NYIT”的新文件夹,然后为CS104创建一个文件夹,然后为CS150创建一个文件夹……等等。 制作完这些文件夹之后,您将打开CS104文件夹并新建三个文件夹,一个用于PPT,一个用于笔记,一个用于作业。 你很无聊吗 然后,您将打开CS150文件夹,并新建三个文件夹,一个用于PPT,一个用于笔记,一个用于作业……。

终端方式mkdir -p NYIT/CS{104,150,151,160}/{ppts, notes, assignments}就像您完成了。

现在不要惊慌,让我们分解一下这里发生的事情。 首先,我们指定命令mkdir ,意思是“ 目录目录”。 然后,我们使用-p标志。 该标志告诉mkdir命令“根据需要创建中间目录。”接下来,我们指定要创建的目录的名称。 从NYIT开始,然后是正斜杠/这表明我们现在位于NYIT目录中。 记住/Users ,这意味着Root目录中的是Users目录。 我们使用/输入子目录。 现在为怪异的部分。 我们指定我们希望将子目录命名为CS {104,150,151,160}这些花括号被称为通配符,用于指定列表。 我们在这里所做的就是说,我们想要的目录名为CS,后跟列表中的每个项,即CS104,CS150等。最后,我们在所有CS目录/{ppts, notes, assignments}执行完全相同的操作只是这次我们没有将列表中的内容与任何内容配对。 我们先以斜杠/表示要创建CS目录的子目录,然后在大括号{}中为子目录的名称指定一个列表: ppts, notes, assignments

方案2

假设您有一个图片文件夹,并且想要将所有png移到一个名为png_images的单独文件夹中。 为了使事情变得有趣,我们假设此文件夹中大约有5000张图像。

在finder中,您必须选择png图像并将其移动到新文件夹中。 似乎有些疯狂的事情。

终端方式: mv *.{png, PNG} png_images再次只需几秒钟。

详细信息: mv这是m o v e命令,它带有两个参数,参数只是该命令的输入。 例如,在ls -F /Users “ / Users”是ls命令的参数。 因此, mv命令的两个参数是您要移动的文件您要移动到的目录的名称。 我们之前看过我们朋友的花括号,但明星*是什么? 这是另一个通配符,代表“任何东西”。 也就是说,它是在文件名中查找任何字符或字符组合。 *.{png, PNG}表示任何字符,后跟一个点,后跟png或PNG。 记住括号外的所有内容都与里面的内容匹配。 这将匹配myFavoritePic.png,selfie.PNG,greatWall.png等图像。 最后,我们告诉mv命令将这些图像移动到png_images中。 如果此目录不存在,将通过命令创建。 这不仅是使用mv命令,我们还将在这里停止介绍。

场景3

最后,我们的朋友给我们看了她所有的电影,但是上面还有很多其他的学校资料,还有她和她的男友的照片要经过。 我们真的只想将所有电影复制到我们的笔记本电脑中。

终端方式: cp *.{mov, mp4} /Users/John/movies无需筛选日期图片和学校文件。

仅有的新内容是我们的命令cp. 这是c o p y命令,就像mv (move command)它带有两个参数: 要复制的文件要复制到的目录。 我们之前已经见过*.{mov,mp4}组合,但是没有任何困难。 星号表示字符组合中的任何字符。 然后是圆点{mov, mp4}后面是圆点,后面是文件扩展名列表,请记住,这意味着它将与列表中的所有内容匹配。 示例文件为:“ Fate of the Furious.mov”和“ Baywatch.mp4”

结论

这使我们结束了对命令行的简短介绍。 这并不是要成为一个完整的或深入的介绍,而是要让您好奇地学习更多。 命令行功能非常强大,并且可以做的比我在此介绍的要多。 David Baumgold的这篇文章是一个很好的起点。 有关更深入的介绍,我推荐这本书:“学习Mac OS X的Unix,第二版-Dave Taylor,Brian Jepson”

记住信息就在您的指尖,因此您几乎可以使用Google进行任何搜索。