diff --git a/translated/tech/20200819 How to Convert Text Files between Unix and DOS (Windows) Formats.md b/translated/tech/20200819 How to Convert Text Files between Unix and DOS (Windows) Formats.md index ce667411f2..e83f521439 100644 --- a/translated/tech/20200819 How to Convert Text Files between Unix and DOS (Windows) Formats.md +++ b/translated/tech/20200819 How to Convert Text Files between Unix and DOS (Windows) Formats.md @@ -1,34 +1,34 @@ [#]: collector: (lujun9972) [#]: translator: (geekpi) -[#]: reviewer: ( ) +[#]: reviewer: (wxy) [#]: publisher: ( ) [#]: url: ( ) -[#]: subject: (How to Convert Text Files between Unix and DOS (Windows) Formats) +[#]: subject: (How to Convert Text Files between Unix and DOS Windows Formats) [#]: via: (https://www.2daygeek.com/how-to-convert-text-files-between-unix-and-dos-windows-formats/) [#]: author: (Magesh Maruthamuthu https://www.2daygeek.com/author/magesh/) -如何在 Unix 和 DOS(Windows)格式之间转换文本文件 +如何将文本文件在 Unix 和 DOS(Windows)格式之间转换 ====== +![](https://img.linux.net.cn/data/attachment/album/202008/27/235550klfnz34lzpnchf7g.jpg) + 作为一名 Linux 管理员,你可能已经注意到了一些开发者请求将文件从 DOS 格式转换为 Unix 格式,反之亦然。 这是因为这些文件是在 Windows 系统上创建的,并由于某种原因被复制到 Linux 系统上。 -这本身没什么问题,但 Linux 系统上的一些应用可能不理解这些新的换行符,所以在使用之前,你需要转换它们。 +这本身没什么问题,但 Linux 系统上的一些应用可能不能理解这些新的换行符,所以在使用之前,你需要转换它们。 -DOS 文本文件带有回车 (CR 或 \r) 和换行 (LF 或 \n) 对作为它们的换行符,而 Unix 文本只有换行 (LF) 符。 +DOS 文本文件带有回车(`CR` 或 `\r`)和换行(`LF` 或 `\n`)一对字符作为它们的换行符,而 Unix 文本只有换行(`LF`)符。 有很多方法可以将 DOS 文本文件转换为 Unix 格式。 -但我推荐使用一个名为 **dos2unix** / **unix2dos** 的特殊工具将文本在 DOS 和 Unix 格式之间转换。 +但我推荐使用一个名为 `dos2unix` / `unix2dos` 的特殊工具将文本在 DOS 和 Unix 格式之间转换。 - * **dos2unix:** 将文本文件从 DOS 格式转换为 Unix 格式。 - * **unix2dos:** 将文本文件从 Unix 格式转换为 DOS 格式。 - * **tr、awk 和 [sed 命令][1]:** 这些可以用于相同的目的。 + * `dos2unix`:将文本文件从 DOS 格式转换为 Unix 格式。 + * `unix2dos`:将文本文件从 Unix 格式转换为 DOS 格式。 + * `tr`、`awk` 和 [sed 命令][1]:这些可以用于相同的目的。 - - -使用 od(八进制转储) 命令可以很容易地识别文件是 DOS 格式还是 Unix 格式,如下图所示。 +使用 `od`(八进制转储octal dump)命令可以很容易地识别文件是 DOS 格式还是 Unix 格式,如下图所示: ``` # od -bc windows.txt @@ -55,9 +55,9 @@ n L i n u x \r \n 0000231 ``` -上面的输出清楚地表明这是一个 DOS 格式的文件,因为它包含了转义序列 **`\r\n`**。 +上面的输出清楚地表明这是一个 DOS 格式的文件,因为它包含了转义序列 `\r\n`。 -同时,当你在终端上打印文件输出时,你会得到下面的输出。 +同时,当你在终端上打印文件输出时,你会得到下面的输出: ``` # cat windows.txt @@ -69,28 +69,28 @@ Anything can be done on Linux ### 如何在 Linux 上安装 dos2unix? -dos2unix 可以很容易地从发行版的官方仓库中安装。 +`dos2unix` 可以很容易地从发行版的官方仓库中安装。 -对于 RHEL/CentOS 6/7 系统,使用 **[yum命令][2]** 安装 dos2unix。 +对于 RHEL/CentOS 6/7 系统,使用 [yum 命令][2] 安装 `dos2unix`。 ``` $ sudo yum install -y dos2unix ``` -对于 RHEL/CentOS 8 和 Fedora 系统,使用 **[dnf命令][3]** 安装 dos2unix。 +对于 RHEL/CentOS 8 和 Fedora 系统,使用 [dnf 命令][3] 安装 `dos2unix`。 ``` $ sudo yum install -y dos2unix ``` -对于基于 Debian 的系统,使用 **[apt 命令][4]** 或 **[apt-get 命令][5]** 来安装 dos2unix。 +对于基于 Debian 的系统,使用 [apt 命令][4] 或 [apt-get 命令][5] 来安装 `dos2unix`。 ``` $ sudo apt-get update $ sudo apt-get install dos2unix ``` -对于 openSUSE 系统,使用 **[zypper命令][6]** 安装 dos2unix。 +对于 openSUSE 系统,使用 [zypper命令][6] 安装 `dos2unix`。 ``` $ sudo zypper install -y dos2unix @@ -98,9 +98,9 @@ $ sudo zypper install -y dos2unix ### 1)如何将 DOS 文件转换为 UNIX 格式? -以下命令将 ”windows.txt“ 文件从 DOS 转换为 Unix 格式。 +以下命令将 `windows.txt` 文件从 DOS 转换为 Unix 格式。 -对该文件的修改是删除文件每行的 ”\r“。 +对该文件的修改是删除文件每行的 `\r`。 ``` # dos2unix windows.txt @@ -141,31 +141,31 @@ i n u x \n dos2unix: converting file windows.txt to file unix.txt in Unix format … ``` -### 1a)如何使用 tr 命令将 DOS 文件转换为 UNIX 格式。 +#### 1a)如何使用 tr 命令将 DOS 文件转换为 UNIX 格式。 -正如文章开头所讨论的,你可以如下所示使用 tr 命令将 DOS 文件转换为 Unix 格式。 +正如文章开头所讨论的,你可以如下所示使用 `tr` 命令将 DOS 文件转换为 Unix 格式。 ``` Syntax: tr -d '\r' < source_file > output_file ``` -下面的 tr 命令将 DOS 格式文件 ”windows.txt“ 转换为 Unix 格式文件 ”unix.txt“。 +下面的 `tr` 命令将 DOS 格式的文件 `windows.txt` 转换为 Unix 格式文件 `unix.txt`。 ``` # tr -d '\r' < windows.txt >unix.txt ``` -**注意:**不能使用 tr 命令将文件从 Unix 格式转换为 Windows(DOS)。 +注意:不能使用 `tr` 命令将文件从 Unix 格式转换为 Windows(DOS)。 -### 1b)如何使用 awk 命令将 DOS 文件转换为 UNIX 格式。 +#### 1b)如何使用 awk 命令将 DOS 文件转换为 UNIX 格式。 -使用以下 awk 命令格式将 DOS 文件转换为 Unix 格式。 +使用以下 `awk` 命令格式将 DOS 文件转换为 Unix 格式。 ``` Syntax: awk '{ sub("\r$", ""); print }' source_file.txt > output_file.txt ``` -以下 awk 命令将 DOS 文件 ”windows.txt“ 转换为 Unix 格式文件 ”unix.txt“。 +以下 `awk` 命令将 DOS 文件 `windows.txt` 转换为 Unix 格式文件 `unix.txt`。 ``` # awk '{ sub("\r$", ""); print }' windows.txt > unix.txt @@ -173,7 +173,7 @@ Syntax: awk '{ sub("\r$", ""); print }' source_file.txt > output_file.txt ### 2)如何将 UNIX 文件转换为 DOS 格式? -当你把一个文件从 UNIX 转换为 DOS 格式时,它会在每一行中添加一个回车(CR 或 \r)。 +当你把一个文件从 UNIX 转换为 DOS 格式时,它会在每一行中添加一个回车(`CR` 或 `\r`)。 ``` # unix2dos unix.txt @@ -187,15 +187,15 @@ unix2dos: converting file unix.txt to DOS format … unix2dos: converting file unix.txt to file windows.txt in DOS format … ``` -### 2a)如何使用 awk 命令将 UNIX 文件转换为 DOS 格式? +#### 2a)如何使用 awk 命令将 UNIX 文件转换为 DOS 格式? -使用以下 awk 命令格式将 UNIX 文件转换为 DOS 格式。 +使用以下 `awk` 命令格式将 UNIX 文件转换为 DOS 格式。 ``` Syntax: awk 'sub("$", "\r")' source_file.txt > output_file.txt ``` -下面的 awk 命令将 “unix.txt” 文件转换为 DOS 格式文件 “windows.txt”。 +下面的 `awk` 命令将 `unix.txt` 文件转换为 DOS 格式文件 `windows.txt`。 ``` # awk 'sub("$", "\r")' unix.txt > windows.txt @@ -208,7 +208,7 @@ via: https://www.2daygeek.com/how-to-convert-text-files-between-unix-and-dos-win 作者:[Magesh Maruthamuthu][a] 选题:[lujun9972][b] 译者:[geekpi](https://github.com/geekpi) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出