操纵文本awk,呆呆的,sedgydF4y2Ba

awk,呆呆和sed命令可以把乏味的工作变成快速修复。看看这些命令的方式可以帮助完成工作顺利和容易。gydF4y2Ba

  • 在Facebook上分享gydF4y2Ba
  • 在Twitter上分享gydF4y2Ba
  • 分享在LinkedIngydF4y2Ba
  • 在Reddit分享gydF4y2Ba
  • 通过电子邮件分享gydF4y2Ba
  • 印刷资源gydF4y2Ba
数字转换/频谱的背景下,叶子颜色的变化电路。gydF4y2Ba

的gydF4y2BaawkgydF4y2Ba,gydF4y2Ba腼腆的人gydF4y2Ba和gydF4y2BasedgydF4y2Ba命令在Linux上非常通用的工具操纵文本,重新排列列,生成报告和修改文件内容。gydF4y2Ba

使用awk和呆呆的gydF4y2Ba

选择命令输出的一部分使用gydF4y2Ba腼腆的人gydF4y2Ba下面,你可以命令类似。第一个显示的输出中第一个字段gydF4y2Ba日期gydF4y2Ba命令。第二个显示最后一个领域。自gydF4y2BaNFgydF4y2Ba代表命令输出中的字段的数量,gydF4y2BaNF美元gydF4y2Ba表示最后一个字段的值。gydF4y2Ba

$ | awk日期'{打印$ 1}’坐在日期美元| awk{打印$ NF} 2023年gydF4y2Ba

请注意,今天在Linux系统上,gydF4y2BaawkgydF4y2Ba通常是一个符号链接呢gydF4y2Ba腼腆的人gydF4y2Ba,所以你可以输入命令并得到相同的结果。这就是你可能会看到你的长长的清单gydF4y2BaawkgydF4y2Ba可执行:gydF4y2Ba

$ ls - l /usr/bin/awk lrwxrwxrwx。1根根4 2021年7月21日/usr/bin/awk - >呆呆的gydF4y2Ba

开始的“l”标识gydF4y2Ba/usr/bin/awkgydF4y2Ba作为一个符号链接。gydF4y2Ba

将一行文本分解成碎片,必须使用一个共同的分隔符分隔的文本块需要处理。默认的分隔符gydF4y2BaawkgydF4y2Ba或gydF4y2Ba腼腆的人gydF4y2Ba是白色的空间。的gydF4y2Ba- fgydF4y2Ba论点,然而,允许您指定任何分隔符分隔的文本块处理。正如你可能知道的,任何角色都可以作为分隔符,只要它只是用作分隔符。分隔符通常是空格、制表符、冒号、分号等。然而,你可以打破在一封信或其他字符如果您的数据要求。gydF4y2Ba

重新排列一行文本由逗号分隔的部分,您可以使用一个命令如下:gydF4y2Ba

回声美元“一,二,三”|呆呆- f”、“‘{}印刷3美元,2美元,1美元的三百二十一gydF4y2Ba

虽然“x”是很少用作分隔符,甚至工作。gydF4y2Ba

美元回声onextwoxthree |呆呆- f“x”“{}印刷2美元,3美元,1美元的二百三十一gydF4y2Ba

注意:没有逗号,结果将是“onetwothree”。gydF4y2Ba

请注意,gydF4y2Ba腼腆的人gydF4y2Ba允许您以任何顺序排列的数据,你可以忽略字段,您不希望包含在输出中。gydF4y2Ba

打破在空白gydF4y2Ba

重复空格(一个/ k /“白色空间”)作为一个分隔符与其他字符。不论空白字符的数量在每一段空白,显示的字母很容易重新排列和字符串与单一单词之间的空格。gydF4y2Ba

回声一百二十三美元|呆呆- f”“{}印刷2美元,3美元,1美元的二百三十一gydF4y2Ba

编辑文件“到位”gydF4y2Ba

您还可以使用gydF4y2Ba腼腆的人gydF4y2Ba通过使用直接修改文件gydF4y2Ba原地gydF4y2Ba选择。在下面的示例中,使用的是创建一个新文件gydF4y2Ba《财富》杂志gydF4y2Ba命令,然后使用每一行添加行号gydF4y2Ba腼腆的人gydF4y2Ba。gydF4y2BaNRgydF4y2Ba代表的行号是紧随其后的是一段和一个空格字符。gydF4y2Ba

命运命运>呆呆的美元-我原地{打印NR”。" $ 0}的财富gydF4y2Ba

查看更改,再次显示文件。gydF4y2Ba

猫的财富1美元。工作有两种:第一,改变物质的位置处于或接近2。地球表面相对于其他物质;第二,告诉别人3。这样做。4所示。——伯特兰·罗素gydF4y2Ba

改变文本,你可以使用下面的命令将取代“两”和“2”:gydF4y2Ba

$ awk我原地' {gsub(“两个”,“2”)}1 '财富猫财富1美元。工作有两种:第一,改变物质的位置处于或接近2。地球表面相对于其他物质;第二,告诉别人3。这样做。4所示。——伯特兰·罗素gydF4y2Ba

扭转这种变化,你可以试着这样的一个命令,但是注意,它改变的一个行号。gydF4y2Ba

$ awk我原地' {gsub(“2”,“两个”)}1 '财富猫财富1美元。工作有两种:第一,改变的位置或近两个问题。地球表面相对于其他物质;第二,告诉别人3。这样做。4所示。——伯特兰·罗素gydF4y2Ba

为了避免你不想改变改变文本,添加一些你的命令将区分目标文本。下面的命令,我添加了一个空白的前2行号不会受到影响。gydF4y2Ba

$ awk我原地' {gsub(“2”,“两个”)}1 '财富猫财富1美元。工作有两种:第一,改变的位置或近两个问题。地球表面相对于其他物质;第二,告诉别人3。这样做。4所示。——伯特兰·罗素gydF4y2Ba

分开列的数据gydF4y2Ba

独立制表符分隔列数据为单独的文件,您可以使用这样的一个脚本:gydF4y2Ba

# !/bin/bash回声awk - f - n“文件>“读文件\ t的‘{打印1美元}’$ file > col1回声= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = awk - f ' \ t ' '{打印$ 2}$ file > col2回声= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = awk - f ' \ t ' '{打印3美元}' file > col3美元gydF4y2Ba

假设原始文件至少有三列数据分离的标签,你会得到三个独立的文件内容。如果原始文件只包含两个字段,第三个文件将不包含文本。如果由空格分隔的字段而不是标签,只有第一个将包含文本。gydF4y2Ba

使用sed修改文件内容gydF4y2Ba

您还可以使用gydF4y2BasedgydF4y2Ba命令对文件进行更改。例如,替换每个实例用另一个词或短语,您可以使用命令如下所示。文件的第一个是这样的:gydF4y2Ba

猫txt美元这是旧的文本。gydF4y2Ba

的gydF4y2BasedgydF4y2Ba下面的命令取代“旧”与“更好”。gydF4y2Ba

sed -美元" s /老/更好/ " txt猫txt美元这是更好的文本。gydF4y2Ba

如果文件中任何一行包含多个词或短语的实例,您需要添加“g”(全球选项)gydF4y2BasedgydF4y2Ba命令或只会改变每一行的第一个实例。gydF4y2Ba

猫txt美元这是旧的文本。我喜欢旧的文本。你喜欢旧的教科书吗?sed -美元/老/更好/gydF4y2BaggydF4y2Ba“三种猫三美元gydF4y2Ba
这是更好的文本。gydF4y2Ba
我喜欢更好的文本。你喜欢更好的教科书吗?gydF4y2Ba

总结gydF4y2Ba

的gydF4y2BaawkgydF4y2Ba,gydF4y2Ba腼腆的人gydF4y2Ba和gydF4y2BasedgydF4y2Ba命令可以帮助当你需要以某种方式操纵文本——特别是如果你需要赚很多更改大量的文本。进一步考虑到如何使用这些命令,看看下面的链接,这将带你去我的几个早期的文章。gydF4y2Ba

相关:gydF4y2Ba

版权©2023 IDG通信公司。足球竞彩网下载gydF4y2Ba

企业网络2022的10个最强大的公司gydF4y2Ba