极客生存:cygwin简介,第二部分-更有用的命令

吉娜·特拉帕尼...

Image for article titled Geek to Live: Introduction to Cygwin, part II - More useful commands

吉娜·特拉帕尼

上周的Cygwin简介的第一部分介绍了在Windows上使用出色的Unix shell仿真器的安装和一些基本命令(如果你还没有读过,你想知道Cygwin到底是什么,现在就回去读吧!)对于其他人,本期文章将继续使用Cygwinnery,在可靠的绿色shell提示符下使用一些更有用的命令。

文件列表

上周我们讨论了几个基本的Unix命令,包括ls,它显示当前目录中的文件列表。对于命令行新手来说,重要的是要了解在命令行上指定不同程序选项的方式,也就是使用后缀格式的方式。例如,ls只显示文件名列表。但是,ls-l显示文件列表的“长”版本,带有日期、文件大小和权限。此外,ls-lh显示带有“人类可读”文件大小(-h)的长列表(-l)。检查输出中的差异。

penelope@scully ~ $ ls done.txt honey-im-home.txt report.txt todo todo.txt penelope@scully ~ $ ls -l total 9 -rw-r—r— 1 penelope None 0 Jun 8 20:13 done.txt -rw-r—r— 1 penelope None 0 Jun 8 19:54 honey-im-home.txt -rw-r—r— 1 penelope None 0 Jun 8 20:13 report.txt -rwxr-xr-x 1 penelope None 7593 Jun 8 20:10 todo -rw-r—r— 1 penelope None 46 Jun 14 09:44 todo.txt penelope@scully ~ $ ls -lh total 9.0K -rw-r—r— 1 penelope None 0 Jun 8 20:13 done.txt -rw-r—r— 1 penelope None 0 Jun 8 19:54 honey-im-home.txt -rw-r—r— 1 penelope None 0 Jun 8 20:13 report.txt -rwxr-xr-x 1 penelope None 7.5K Jun 8 20:10 todo -rw-r—r— 1 penelope None 46 Jun 14 09:44 todo.txt penelope@scully ~ $

请注意,与第一个列表中的7593字节数相比,第二个列表中列出的文件大小为7.5K(无需进行数学运算就更容易理解)。这是-h的工作。

别名

现在,如果您总是想看到长文件列表,但又不想每次都记住并键入选项,那么可以在Cygwin中设置一个别名,将简单的ls映射到ls-lh。为此,在Cygwin主目录中打开名为.bashrc的文件(类似于c:\Cygwin\home\penelope\.bashrc)。将以下行添加到该文件:

alias ls='ls -lh'

现在,当您重新启动Cygwin时,无论何时键入ls,都会得到一个长的、可读的列表。

文本文件操作

命令行爱好者生活在文本文件中,Unix有很多方法可以在命令行中切分、切分、更新、搜索和创建文本文件。一个非常方便的功能是使用>>符号将文本附加到文件中。例如,如果要在命令行启动或添加“gift ideas.txt”文件,可以执行以下操作:

penelope@scully ~ $ echo "Mark - Flickr Pro account" >> gift-ideas.txt penelope@scully ~ $ echo "Mom - massage gift certificate" >> gift-ideas.txt penelope@scully ~ $ echo "Joey - a hooded sweat shirt" >> gift-ideas.txt penelope@scully ~ $ echo "Mom - frame that photo of the kids" >> gift-ideas.txt penelope@scully ~ $

现在,如果您想查看该文件的内容,可以使用cat命令显示该文件:

penelope@scully ~ $ cat gift-ideas.txt Mark - Flickr Pro account Mom - massage gift certificate Joey - a hooded sweat shirt Mom - frame that photo of the kids penelope@scully ~ $

要完全删除文本文件并将其内容设置为字符串,请使用单个大于号(>)而不是附加到文件现有内容的双(>>)。

使用grep进行文本搜索

最强大的Unix命令之一——grep——使用正则表达式搜索文本位,如文件。例如,如果你想看到你为妈妈列出的所有礼物创意,你应该:

penelope@scully ~ $ grep Mom gift-ideas.txt Mom - massage gift certificate Mom - frame that photo of the kids penelope@scully ~ $

事实上,grep是我之前发布的todo脚本中的明星,该脚本按上下文和项目划分任务。

管道输出

命令行的优点在于它的简单性:每个程序的输入和输出都是简单的文本。Unix命令类似于构建块—小而紧凑的程序,可以很好地完成单个任务。要完成更高级的功能,可以使用管道(|)表示法将这些程序菊花链连接在一起。管道从一个程序获取文本输出,并将其作为输入发送到另一个程序,以对其执行更多操作。

例如,您只希望看到目录中以.txt扩展名结尾的文件。您可以通过管道将ls和grep连接在一起来实现这一点:

penelope@scully ~ $ ls | grep .txt -rw-r—r— 1 penelope None 0 Jun 8 20:13 done.txt -rw-r—r— 1 penelope None 120 Jun 14 09:58 gift-ideas.txt -rw-r—r— 1 penelope None 0 Jun 8 19:54 honey-im-home.txt -rw-r—r— 1 penelope None 0 Jun 8 20:13 report.txt -rw-r—r— 1 penelope None 46 Jun 14 09:44 todo.txt penelope@scully ~ $

此外,您可以使用上面看到的附加技巧将任何命令的结果添加到文本文件中,如下所示:

penelope@scully ~ $ ls > file-listing.txt penelope@scully ~ $ cat file-listing.txt total 10K -rw-r—r— 1 penelope None 0 Jun 8 20:13 done.txt -rw-r—r— 1 penelope None 0 Jun 14 10:09 file-listing.txt -rw-r—r— 1 penelope None 120 Jun 14 09:58 gift-ideas.txt -rw-r—r— 1 penelope None 0 Jun 8 19:54 honey-im-home.txt -rw-r—r— 1 penelope None 0 Jun 8 20:13 report.txt -rwxr-xr-x 1 penelope None 7.5K Jun 8 20:10 todo -rw-r—r— 1 penelope None 46 Jun 14 09:44 todo.txt penelope@scully ~ $

在那里,ls命令的输出被写入一个名为file-listing.txt的文件。

重复使用您的历史记录

在命令行上学习和实验一段时间后,您会发现您希望返回并重复在过去某个时间执行的命令。幸运的是,Unix(和Cygwin)可以跟踪您在名为.history的文件中键入的每个命令。键入history命令以查看最近运行的100条命令,这些命令将被编号,如下所示:

penelope@scully ~ $ history .... 82 echo gift-ideas.txt 83 grep Mom gift-ideas.txt 84 man grep 85 ls | grep .txt 86 ls 87 ls | grep todo 88 ls | grep .txt 89 ls >> file-listing.txt 90 cat file-listing.txt 91 history

现在,如果您想重做87号命令,比方说,您不必重新键入它。“砰”(感叹号)和命令号将完成任务。只是打字!87在提示下,点击回车键,在我的例子中,ls | grep todo将被重新执行。

使用grep从您的历史记录中选择感兴趣的命令。例如,要查看您过去使用过的所有ls配方,请为ls刷新历史记录,如下所示:

penelope@scully ~ $ history | grep ls 11 ls 13 ls 14 cls 20 ls 21 ls 27 ls 46 man ls 47 ls -l 48 ls 49 man ls 50 ls -lh 51 ls ...

整洁,嗯?

rtfm-阅读飞行手册

一旦您在命令行中找到了您的腿,您将需要查找特定程序的所有选项。你可以用谷歌搜索手册页面,但你现在是CLI高手,所以“man”(manual)命令就是你想要的。键入man以获得程序功能的完整列表以及所有可用选项。去吧-现在就用man ls试一试(哦,要想从手册页中获得一个命令,请按Q-for-Quit键。)

唷!我们已经讨论了很多问题,但仍有一些问题需要讨论。在Cygwin教程的第三部分也是最后一部分中,我们将重点介绍Cygwin中的脚本、一些网络实用程序、符号链接以及您想了解的任何其他内容。我会在评论中或通过电子邮件向lifehacker.com上的tips提出任何请求。

注意:尽管本文被称为Cygwin的入门,但Cygwin是一个Unix仿真器,所以它实际上是Unix命令的入门。但是,如果试图教给您所有有用的Unix命令,甚至是许多有用的Unix命令,这意味着我们将在这里呆上好几年。所以我选择了一些常用的程序与大家分享。您最常用的Unix命令是什么(Cygwin或其他?),请在lifehacker.com的评论或提示中告诉我们。

Lifehacker的编辑Gina Trapani仍在学习如何使用Unix。她的半周专题片《极客生活》每周三和周五在Lifehacker上播出。订阅Geek to Live订阅源,在您的新闻阅读器中获得新的分期付款。

  • 发表于 2021-08-02 09:13
  • 阅读 ( 115 )
  • 分类:互联网

你可能感兴趣的文章

如何以极客的方式自动重启路由器

...不想离开沙发。 所以我考虑如何用技术解决这个问题。极客就是这么做的,对吧? 是的,我知道,我可能会打电话给Verizon升级路由器,我肯定他们现在有更好的型号了。当然,你可以更新固件,但这对我的旧路由器不起作用,...

  • 发布于 2021-04-11 02:08
  • 阅读 ( 167 )

如何使用mintty改进cygwin控制台

Cygwin非常适合在Windows中获得一些Linux命令行功能,但是使用Windows Shell访问它会扼杀一些魔力。使用Mintty和其他一些方法,您可以使体验更加豪华。 windows shell限制 我们已经向您展示了如何安装和使用Cygwin,这样您就可以使用Wi...

  • 发布于 2021-04-12 21:10
  • 阅读 ( 173 )

如何在带有cygwin的windows中使用linux命令

...有了一个更有用的终端已经很多年了。下面介绍如何使用Cygwin(一种Windows pc的nix风格终端)实现两全其美。 在今天的课程中,我们将解释如何让Cygwin运行,但请继续关注未来的文章,我们将解释如何将它用于各种不同的事情。 ...

  • 发布于 2021-04-13 02:21
  • 阅读 ( 92 )

在windows7中使用powercfg评估电源效率

...定报告告诉你的是什么,去我们的论坛,问一个有知识的极客在那里,他们会很乐意帮助! 如何极客论坛

  • 发布于 2021-04-14 01:47
  • 阅读 ( 123 )

如何在windows上获得最好的linux功能

...类型、持续时间,甚至可以将它们转发到您的**上。使用cygwin获得类似unix的命令行命令行是Windows中最强大的工具之一,但还没有得到充分利用,每个人都应该掌握它。不过,这还不够完美。如果您是从Linux过来的,或者您只是想...

  • 发布于 2021-05-21 11:29
  • 阅读 ( 170 )

最佳的windows终端仿真器

...终端程序,而不是shell。Windows的命令提示符、PowerShell和Cygwin都是不同的shell,它们都有自己的程序。我们今天讨论的程序是单独的程序,它们已经在您的系统中使用shell,这就是为什么您在竞争对手中找不到PowerShell和Cygwin的原因...

  • 发布于 2021-05-27 15:02
  • 阅读 ( 208 )

如何使windows命令提示符更好?

...。下面是如何做到这一点。第一步:为更像unix的shell安装cygwin你可能听过我们之前提到过Cygwin,我们实在是推荐得太多了。它采用了蹩脚的Windows命令提示符,并将其转换为Mac和Linux粉丝所习惯的有用的UNIX终端。您在UNIX时代所记...

  • 发布于 2021-07-23 16:53
  • 阅读 ( 116 )

使用这些节省时间的快捷方式成为命令行忍者

...Linux等系统中都是现成的。要在Windows上使用它们,请安装Cygwin(我们强烈建议放弃Windows的糟糕的Cygwin命令行。)从简单的键盘快捷键到内置的速记,再到您可以自己构建和自定义的命令,终端有很多方法可以加快您的命令行工作...

  • 发布于 2021-07-25 08:49
  • 阅读 ( 101 )

让你的系统处于节食状态:用命令行替代臃肿的应用程序

...分享你的建议。How-To-Geek花了47%的时间在bash提示上。他的极客文章每天都可以在Lifehacker、How To Geek和Twitter上找到。

  • 发布于 2021-07-26 11:24
  • 阅读 ( 135 )

五个非常方便的google命令行技巧

...才能在系统上启动并运行GoogleCL。Windows用户,您将要安装Cygwin(如果您不熟悉Cygwin及其工作原理,请参阅Gina的Cygwin简介。)如果您确实希望使用Windows的命令提示符,则可以使用以下说明设置GoogleCL。如果尚未安装,则需要在系统...

  • 发布于 2021-07-27 01:17
  • 阅读 ( 98 )
vjowekughn075
vjowekughn075

0 篇文章

相关推荐