初学者 Linux sdiff 命令教程(8 个示例)初学者 Linux sdiff 命令教程(8 个示例)初学者 Linux sdiff 命令教程(8 个示例)初学者 Linux sdiff 命令教程(8 个示例)
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

初学者 Linux sdiff 命令教程(8 个示例)

在此页

  1. Linux sdiff 命令
  2. Q1。 sdiff 命令如何工作?
  3. Q2。如何让 sdiff 忽略大小写?
  4. Q3。如何让 sdiff 忽略空格?
  5. Q4。如何让 sdiff 忽略空行?
  6. Q5。如何使 sdiff 抑制公共线路?
  7. Q6。如何让 sdiff 使用不同的 diff 程序?
  8. Q7。如何将 sdiff 输出保存到文件
  9. Q8。如何只输出左列
  10. 结论

在 HowtoForge,我们已经讨论了专注于查找文件差异的命令行实用程序。但是还有更多这样的工具,在本教程中,我们将使用一些易于理解的示例来讨论一个名为 sdiff 的命令。

请注意,本文中提到的所有 sdiff 命令示例均已在 Ubuntu 22.04 LTS 上进行了测试。

Linux sdiff 命令

sdiff 命令以并排形式显示文件差异。以下是它的语法:

sdiff [OPTION]... FILE1 FILE2

手册页是这样描述它的:

sdiff - side-by-side merge of file differences
Side-by-side merge of differences between FILE1 and FILE2.

以下是一些问答式的示例,应该可以让您很好地了解此工具的工作原理。

Q1。 sdiff 命令如何工作?

基本用法很简单,您所要做的就是以文件名作为参数运行 sdiff 命令。例如:

sdiff file1 file2

file1 和 file2 在我的例子中是完全一样的。

这是在这种情况下产生的输出 sdiff:

这种类型的输出意味着文件没有区别。

Q2。如何让 sdiff 忽略大小写?

假设 file1 和 file2 包含以下行:

命令:

差异文件 1 文件 2

产生以下输出:

第二列第一行中的竖线 (|) 表示这两个文件在第一行本身是不同的。但是,如果需要,您可以强制 sdiff 忽略大小写,这可以使用 -i 命令行选项来完成。

sdiff -i 文件 1 文件 2

所以您现在可以看到输出显示两个文件相同,这意味着忽略了大小写差异。

Q3.如何让 sdiff 忽略空格?

如果任何文件包含空格,默认情况下 sdiff 命令将显示差异。但是,如果需要,您可以使用 -Z 命令行选项来抑制此行为:

还有其他几个与空间相关的选项您应该注意。这是一个列表:

-E, --ignore-tab-expansion
              ignore changes due to tab expansion
-b, --ignore-space-change
              ignore changes in the amount of white space
-W, --ignore-all-space
              ignore all white space

Q4.如何让 sdiff 忽略空行?

就像空格一样,默认情况下,sdiff 命令也会考虑空行。例如:

但是,您可以使用 -B 命令行选项使命令忽略空行。

sdiff -B 文件1 文件2

所以你可以看到 sdiff 命令在这种情况下没有将空行视为差异。

Q5.如何使 sdiff 抑制公共线路?

假设文件包含一些公共行,并且您希望 sdiff 命令抑制公共行,那么您可以使用 -s 命令行选项来实现。

sdiff -s 文件 1 文件 2

Q6.如何让 sdiff 使用不同的 diff 程序?

默认情况下,sdiff 使用 diff 进行比较。但是,如果需要,您甚至可以用您选择的程序替换 diff。为此,请使用需要程序名称作为输入的 --diff-program 选项。

sdiff --diff-program=[PROGRAM] file1 file2

Q7.如何将 sdiff 输出保存到文件

-o 或 --output 选项允许我们将 sdiff 结果保存到输出文件。例子:

sdiff --output=/tmp/mydiff.txt file1 file2

Q8.如何只输出左列

使用命令行选项 -l 或其长形式 --left-column,您只能得到左列作为结果。

sdiff --left-column file1 file2

结论

Sdiff 工具提供了很多功能,但它的学习曲线并不那么陡峭。您需要做的只是一些练习,您应该可以开始了。我们在这里讨论了大多数命令行选项。有关更多信息,请访问 sdiffs 手册页。

©2015-2025 艾丽卡 support@alaica.com