全文共字,预计学习时长7分钟
图源:unsplash熟悉终端是一种提高效率的好办法。别再用鼠标在GUI中点来点去了,你可以使用效率更高的命令行来完成相同的工作。如果想让命令行用得顺手,那么有些命令是必须了解的。这些命令很基本,且很重要。要为命令行的使用打下坚实的基础,就必须掌握这些命令。
本文适用于想更好地使用Linux命令行的读者。没有丰富的命令行经验也是完全可以读懂本文的,已经习惯使用Linux命令行的读者也不必担心从本文中学不到东西。那么我们开始吧!
1.tail-f
cat命令可以用来查看文件内容。但是在查看时会有更多的选项。cat命令输出整个文件,这有时是没必要的。如果只想输出第一行或最后某行,则可以使用tail或head命令来实现。默认情况下,head命令输出前10行,tail命令输出后10行。
tail命令通常用于查看日志文件,这是因为tail命令有一个-f选项,代表“follow”,可以用来查看文件。此选项将在文件内容增多时输出追加的数据,就可以立即显示附加到文件中的日志项。
2.scp
scp表示安全复制(securecopy),可以在互联网的主机间复制文件。使用scp的一种方法是将文件从个人计算机复制到远程服务器,反之亦然。scp与安全外壳协议(SSH)相互协作。
这个命令非常简单,工作原理与cp命令类似。唯一的区别是,可以用scp将文件复制到其他主机,而普通的cp命令不可能做到这一点。
scp[target][destination]
scp看起来就像熟悉的cp命令。要将文件从服务器复制到个人计算机,必须执行以下操作:
scpderk
.0.0.1:/target/file.txt~/destination本例中,用户为“derk”,主机为.0.0.1。主机地址后跟冒号。冒号后指定需要复制的文件的路径。第二个参数是destination,在本例中是个人计算机的一个文件夹。该命令的结果是将file.txt从服务器复制到本地计算机的~/destination文件夹。
例如,这很适用于从服务器下载数据库备份。如果想从个人计算机上传文件到远程主机,则需要切换参数。
scp~/target/file.txtderk
.0.0.1:/destination这个命令将file.txt从个人计算机复制到远程主机上的destination文件夹。
3.cd-
cd是Linux命令行中使用最频繁的命令之一。然而,许多开发人员还不知道cd命令附带的一个很好的选项——连字符。
cd-
在cd命令后添加连字符可以返回到先前选择的目录。下面是实际操作的示例
4.diff
如果曾经使用过版本控制,那么很可能使用过diff命令。例如,在使用Git时,这个命令可以查看对某个文件所做的更改。
diff命令代表差异(difference),可以逐行比较文件。假设有两个文件都包含大陆的列表,这些文件之间唯一的区别是大陆的排列顺序。
对这两个文件使用diff命令,将得到以下输出。同时一定要添加-c选项,它可以输出上下文模式中的差异,从而使输出更具有可读性。
5.locate
locate命令是在计算机上搜索文件的一个非常强大的工具。与find命令相比,locate命令要快得多。之所以这么快,是因为它不读取文件系统来搜索文件或目录名,而是引用一个数据库来查找用户正在查找的内容,并基于搜索生成相应输出。
locate命令的语法非常简单:
locate[filename]
这个命令的输出将列出包含指定术语的所有文件,在下面的示例中,搜索的术语是“xml”。
还可以使用正则表达式来搜索完全匹配。用-r选项指定正则表达式。
locate-r/filename
6.lsof
lsof命令可以列出所有打开的文件。它的语法很简单,只需键入lsof即可。这个命令无其它选项,列出所有处于活动进程中的打开文件。
这个命令适用于多种情况,其中一种情况是查看哪些进程正在某个端口上运行。为此,必须指定-i选项。下例中,我们要查看哪些进程正在端口22上运行,即SSH的端口。
lsof-iTCP:22
也可以列出一系列端口。下例列出了端口范围为20-30中运行的所有进程。
lsof-iTCP:20-30
最后,lsof命令的输出可用于终止特定用户的所有进程——在本例中为derk。
kill-9`lsof-t-uderk`
7.history
history命令存储了从当前终端会话运行的所有其他命令的列表。下图是history命令输出的示例:
可以将history命令与grep结合起来,使搜索更加精准。
history
grepnpm
不仅可以使用history命令查看所有已运行的命令。还可以使用history命令再次快速执行其中一个先前执行过的命令。
每当执行history命令时,在每行前面都会显示一个数字。用感叹号后跟行号可以再次执行相同的命令。
!
回顾之前的例子,上面的命令将再次执行ls-al命令。
8.wget
Wget可以从Web下载文件。下文展示了wget命令的语法,只需要指定要下载的资源即可。在本例中,我们将下载一个随机图像。
wget
转载请注明:http://www.0431gb208.com/sjszjzl/8538.html