多年来我一直错误地使用这 8 个核心 Linux 命令多年来我一直错误地使用这 8 个核心 Linux 命令多年来我一直错误地使用这 8 个核心 Linux 命令多年来我一直错误地使用这 8 个核心 Linux 命令
  • 业务
  • 目标
  • 支持
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容

多年来我一直错误地使用这 8 个核心 Linux 命令

发表 admin at 2025年2月28日
类别
  • 未分类
标签

作为一名资深的 Linux 用户,我在日常终端使用中养成了一定的习惯。多年来,我学会了反复使用的各种快捷键和方便的命令。但即使是一流的工具也可以得到更好的利用。

1 从文件列表中删除隐藏的快捷方式

Linux 上的隐藏文件功能强大且方便,主要是因为它们非常简单。以句点 (.) 开头的文件是隐藏文件。默认情况下,它不会显示在终端列表和文件管理器中。

当您需要查看隐藏文件时,只需使用-a选项就可以了,对吧?

ls -a

但最终,“.”而“..”可能会开始困扰你。这些特殊文件只是当前目录及其父目录的快捷方式。虽然它们非常有用,但您不需要每次列出文件时都了解它们。

幸运的是,有一个简单的解决方案:-a 选项有一个相应的 -A,它显示隐藏文件,但隐藏这些快捷方式:

ls -A

你可能会想要 为该命令设置一个别名 ,或此处介绍的任何其他内容。然后,您可以像以前一样继续使用 ls,因为您知道您永远不需要看到“.”。或再次“..”。

2 不使用管道递归地执行 Grep

很多时候,我会使用 find 的 exec 选项来 grep 查找某些内容。这是模拟“在文件中查找”任务的基本方法:

find . -exec grep 'hello' {} \;

但这个命令很长,而且学习 find 晦涩难懂的语法肯定不是一件有趣的事。当我发现 grep 内置了对递归搜索的支持时,我感到很愚蠢,但我仍然很高兴我做到了!这个命令比较方便,也很容易学:

grep -r 'hello'

3 用一个命令创建深层目录

有时,您会发现自己想要创建一个像这样的深层目录层次结构:

mkdir blog/2024/09/16

但是,令人沮丧的是,如果 blog、blog/2024 或 blog/2024/09 目录尚不存在,则此命令将失败:

错误消息甚至没有清楚地解释问题是什么!有用的是,一个简单的选项将创建任何丢失的目录,尽管您可能想知道为什么它不是默认目录。要创建一个目录,包括任何尚不存在的中间目录,只需使用 -p:

mkdir -p blog/2024/09/16

您可以通过将“p”视为“路径”或“父母”的缩写来记住这一点。

4 立即切换两个目录

如果您经常使用命令行,您将习惯使用 cd 来导航目录。您可能还习惯在两个目录之间切换,来回运行一个目录中的命令,检查另一个目录中的文件,等等。也许您甚至可以使用历史命令来重复自己。

到现在为止,当您得知有更好的方法时,您不会感到惊讶。 cd 有几个秘密,但最有用的快捷方式之一是“cd -”形式:

每次运行“cd -”时,它都会在您导航到的前两个目录之间切换,从而使来回移动变得非常快速且轻松。

“cd -”将打印它更改到的目录的路径,即使提示符中有当前目录。

5 以最大保真度复制目录

您可能已经了解使用 cp -R 复制目录:

cp -R docs backup-docs

此命令允许您复制整个目录结构,生成目录及其所有内容(包括文件和其他目录)的完整副本。这是备份文件或创建较大项目的副本以进行处理的好方法。

但是,您可能会注意到副本与原件并不完全相同。它们的修改时间、所有者和权限都可能不同。例如,在以下情况下,副本的修改时间与原始版本不同:

这些时间仅相差一分钟,但问题可能要严重得多。修复方法很简单:使用 -a (表示“存档”)而不是 -R:

6 使用单个命令提取 tar.gz 文件

Tarfile 仍然是 Linux 上分发文件集合(尤其是源代码)最流行的方法之一。它们通常被压缩以减少下载或存储期间的大小。如果你在整个 Linux 生涯中都在使用这两个程序,你可能会习惯闭着眼睛做这种事情:

gunzip archive.tar.gz
tar xvf archive.tar

这将首先解压缩 gzip 文件,然后解压其中的 tar 文件。但是,由于现代的敏感性,tar 可以使用 z 标志而不是 x 一步完成这两个任务:

tar zvf archive.tar.gz

这种方法比较方便,也不容易出错。更重要的是,最新版本的 tar 将自动检测 gzip 文件并自动解压缩它们!所以你可以直接跳到:

tar xvf archive.tar.gz

7 使用cat快速检查文件

cat 命令之所以如此命名,是因为它将文件连接在一起。但您可能习惯于仅使用它来查看文件的内容。如果是这样,您可能不知道有几个有用的选项可以使使用 cat 查看文件变得更加愉快。

首先,cat -s 会将几个空白行压缩在一起,使某些文件格式更容易在终端中查看。

其次,cat -b 将行号添加到输出中,但仅限于非空行。当您编写对行号的引用时,这可能很有用。

将它们一起使用,如 cat -sb,您可以将 cat 用作简单的文件查看器,而无需像 less 那样使用寻呼机。

8 获取简明的磁盘使用情况

在进行春季大扫除时,了解目录占用了多少空间非常有用。但是 du 的默认行为会产生大量输出,因为它报告整个层次结构中每个目录的大小。因此,您可能会发现自己多次运行该命令,将其输出通过管道传输到 grep,将其重定向到临时文件,等等。

为了缓解你的困难,尝试减少输出量。 --max-depth 选项可让您指定 du 将报告的目录级别。您仍然可以获得准确的总大小,只是有关树中每个目录的详细信息较少。例如,使用以下命令检查直接子目录的总大小:

du --max-depth 1

您将看到当前目录及其直接子目录的结果,而不会看到层次结构中它们下面的每个目录的大小:


如果您想了解有关掌握命令行的更多信息,请查看我们应不惜一切代价避免的终端拼写错误指南。

©2015-2025 Norria support@norria.com