ホームページ  >  記事  >  システムチュートリアル  >  Linux 上の非常に便利で重要な 2 つのテキスト操作コマンドの詳細な説明

Linux 上の非常に便利で重要な 2 つのテキスト操作コマンドの詳細な説明

WBOY
WBOY転載
2024-02-14 17:27:03612ブラウズ

Linux システムでは、多数のコマンドによってテキストの操作と処理が非常に簡単になります。 tr や fmt などのコマンド ライン ツールは、ターミナルからテキスト ファイルを変更、フォーマット、修正するのに役立ちます。

详解 Linux 上两个超有用重要的文本操作命令

この記事では、さまざまな状況で tr および fmt コマンドを使用してテキストをフォーマットする方法について説明します。では、tr と fmt とは何でしょうか?そして、それらをどのように使用しますか?

tr コマンドとは何ですか?

tr コマンドは、translate という単語の略語で、ユーザーがテキスト ファイル内の特定の文字を削除または置換するのに役立ちます。これは通常、他のコマンドと組み合わせて使用​​され、標準入力を取得し、それに対して操作を実行し、結果を標準出力に書き込むことによって機能します。

tr コマンド構文

tr コマンドの基本構文は次のとおりです。

リーリー

文字セットの範囲:

  • \NNN 8 進数の文字 NNN (1 ~ 3 は 8 進数の文字)
  • \バックスラッシュ
  • \a Ctrl-G 着信音
  • \b Ctrl-H バックスペース文字
  • \f Ctrl-L ウォークとページ変更
  • \n Ctrl-J 改行
  • \r Ctrl-M Enter
  • \t Ctrl-I タブ
  • \v Ctrl-X 水平タブ
  • CHAR1-CHAR2: CHAR1からCHAR2までの文字範囲を指定します。範囲の指定はASCIIコードの順序に基づいており、大きいものから小さいものではなく、小さいものから大きいものにのみ指定できます。
  • [CHAR*]: これは SET2 の特別な設定です。その機能は、指定された文字を SET1
  • と同じ長さになるまで繰り返すことです。
  • [CHAR*REPEAT]:これもSET2の特殊な設定で、設定したREPEAT回数(REPEAT回数は0から始まる8進法で計算されます)まで、指定した文字を繰り返す機能です。 [:alnum:] : すべての英字と数字
  • [:alpha:] : すべての英字
  • [:blank:] : すべての水平スペース
  • [:cntrl:] : すべての制御文字
  • [:digit:]: すべての数字
  • [:graph:]: すべての印刷可能な文字 (スペースを除く)
  • # [: lower:] : すべて小文字
  • [:print:]: すべての印刷可能な文字 (スペースを含む)
  • # [:punct:] : すべての句読点文字
  • [:space:]: すべての水平および垂直スペース文字
  • [:upper:] : すべて大文字
  • [:xdigit:]: すべての 16 進数
  • # [=CHAR=]: 指定された文字に一致するすべての文字 (等号内の CHAR はカスタマイズできる文字を表します)
  • tr コマンドの使用方法

tr コマンドを使用すると、テキスト ファイルの大文字と小文字を変更したり、数字を削除したり、スペースをタブに置き換えたり、各単語を新しい行に配置したりすることができます。 tr コマンドの可能性は非常に広大で、使い方を知っていれば多くのことを達成できます。 この例では、テキスト ファイル linuxmi.txt を作成します。ファイルの内容は次のとおりです:

うわー
  • tr コマンドを使用して文字を置換します

これを行うには、置換する文字とその置換対象を指定します。たとえば、各単語の最初の文字を ABCD に置き換える場合は、次のコマンドを実行します。 cat コマンドは、ファイルの内容を表示するために使用されます。

cat linuxmi.txt | tr MTS5 ABCD

cat コマンドは、ファイルの内容を表示するために使用されます。

###結果:### リーリー

テキストを小文字から大文字に変更します

これを行うには、次のコマンドを実行します。 详解 Linux 上两个超有用重要的文本操作命令

cat linuxmi.txt | tr a-z A-Z cat linuxmi.txt | tr [: lower:] [:upper:] リーリー 結果は

リーリー

テキストを大文字から小文字に変更します

これを行うには、次のコマンドのいずれかを実行します。 详解 Linux 上两个超有用重要的文本操作命令

cat linuxmi.txt | tr A-Z a-z cat linuxmi.txt | tr [:upper:] [: lower:] リーリー 結果は

リーリー

スペースをタブに置き換えます


すべてのスペースをタブに置き換えるには、次のコマンドを実行します。

リーリー

または、スペースを改行に置き換えて各単語を別の行に印刷する場合は、「\t」を「\n」に置き換えます。

trコマンドを使用して文字を削除します

详解 Linux 上两个超有用重要的文本操作命令

文字を削除するには、tr コマンドの隣に -d オプションを使用します。たとえば、linuxmi.txt ファイル内のすべての単語から文字「e」を削除する場合は、次のコマンドを実行します。 リーリー

結果は

Linuxmi.com. Tchnology, Simplifid! 56789
详解 Linux 上两个超有用重要的文本操作命令

删除所有标点符号

如果你想删除文件中的所有标点符号而不指定是什么符号,使用 -d 选项和解释的序列 [:punct:]:

linuxmi@linuxmi:~/www.linuxmi.com$ cat linuxmi.txt | tr -d [:punct:]
结果为
Linuxmicom Technology Simplified 56789
详解 Linux 上两个超有用重要的文本操作命令

使用tr删除所有数字

删除文本文件中的所有数字,使用这个命令:

linuxmi@linuxmi:~/www.linuxmi.com$ cat linuxmi.txt | tr -d [:digit:]
结果为
Linuxmi.com. Technology, Simplified!
详解 Linux 上两个超有用重要的文本操作命令

使用 tr 补码选项

tr 命令附带 -c 选项,基本上执行与原始操作相反的操作。让我们以前面的命令为例。如果您将补码选项添加到此命令,它将删除所有非数字字符。看看:

linuxmi@linuxmi:~/www.linuxmi.com$ cat linuxmi.txt | tr -cd [:digit:]
结果为
56789
详解 Linux 上两个超有用重要的文本操作命令

什么是 fmt 命令?

fmt 命令是一个简单的文本格式化工具,您可以使用它在 Linux 上打印和处理文本。您还可以使用该命令格式化电子邮件回复。

要获得关于 fmt 命令的命令行帮助,运行以下命令查看其手册页面:

man fmt
详解 Linux 上两个超有用重要的文本操作命令

fmt命令格式

fmt命令的基本语法是:

fmt [-WIDTH] [OPTION] [FILE]

如何使用 fmt 命令

对于本例,创建一个名为file.txt的文件,并添加以下文本:

Linux fan www.linuxmi.com shares open source news, tutorials on Linux, programming, big data, operations, and databases. I was a 

big brother back then, the webmaster of Linux fanatics, and a Linux enthusiast using the desktop version. I write in my spare 

time and hope to share some useful tips with Linux beginners and enthusiasts.


使用默认 fmt 命令

默认的 fmt 命令优化了文本,并以更可读的格式打印出来。fmt 命令的默认宽度是 75 列。执行这个命令来尝试默认的 fmt 操作:

linuxmi@linuxmi:~/www.linuxmi.com$ fmt linuxmi.txt

结果为

详解 Linux 上两个超有用重要的文本操作命令

更改文本的宽度

要更改文件的宽度,可以使用-w选项。语法如下所示:

fmt -w N filename

修改文件宽度为20列,使用命令:

linuxmi@linuxmi:~/www.linuxmi.com$ fmt -w 50 linuxmi.txt

结果如下图

详解 Linux 上两个超有用重要的文本操作命令

拆分长行文本

要分割长行,请使用 -s 选项试一下:

linuxmi@linuxmi:~/www.linuxmi.com$ fmt -s linuxmi.txt

结果如下图为

详解 Linux 上两个超有用重要的文本操作命令

缩进每个段落的第一行

要通过缩进突出显示每个段落的第一行,请使用-t选项。这是语法:

fmt -t filename.

让我们试一试:

linuxmi@linuxmi:~/www.linuxmi.com$ fmt -t linuxmi.txt

结果为

详解 Linux 上两个超有用重要的文本操作命令

tr和fmt:有用的文本操作命令

tr 和 fmt 使用它们提供的不同操作使文本格式化和处理变得简单和自动化。Linux 和其他基于 Unix 的操作系统为您的每一个文本格式化需求提供了大量的文本操作命令。你只需要知道它们是什么以及如何使用它们。


以上がLinux 上の非常に便利で重要な 2 つのテキスト操作コマンドの詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はlxlinux.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。