多行变一行xargs

zhouguanglu zhouguanglu     2023-02-18     312

关键词:

https://blog.csdn.net/hjxhjh/article/details/17264739

1. 采用awk

      awk BEGINRS=EOF‘gsub(/ /," ");print‘ file

      说明:awk默认将记录分隔符(record separator即RS)设置为 ,此行代码将RS设置为EOF(文件结束),也就是把文件视为一个记录,然后通过gsub函数将 替换成空格,最后输出。

 

2. 采用sed

      sed ‘:a ; N;s/ / / ; t a ; ‘ file

      说明:sed默认只按行处理,N可以让其读入下一行,再对 进行替换,这样就可以将两行并做一行。但是怎么将所有行并作一行呢?可以采用sed的跳转功能。:a 在代码开始处设置一个标记a,在代码执行到结尾处时利用跳转命令t a重新跳转到标号a处,重新执行代码,这样就可以递归的将所有行合并成一行。

  

3. cat file | xargs

      说明:这可能是最简单的一种方式。

       This manual page documents the GNU version of xargs. xargs reads argu-

       ments from the standard input, delimited by blanks (which can be pro-

       tected with double or single quotes or a backslash) or newlines

      上面是man手册对xargs的说明。其实xargs就是对shell命令行参数限制做的一个扩展。

      这条命令的含义也很简单,将file中的内容作为参数传给X程序

      如果用echo作为X程序,则命令为:

      cat file | xargs echo

      此命令和cat file | xargs 行为一致,因为xargs的默认行为就是打印输出。

 

ls |xargs

默认是输入参数,且换成一行

ls | xargs -d ‘ ’ echo

分隔符

ls |xargs -n 3 echo

一次给3个参数

ls |xargs -e ‘22’ echo

只输出22参数之前的内容,不能-d 公用

ls |xargs -t echo

打印之前先打印执行命令

ls |xargs -I echo

ls |xargs -i echo

-I 指定替换符, -i 不用指定直接用 都是一行一行的给

 

xargs命令

...n并将其转换成特定命令的命令参数。xargs也可以将单行或多行文本输入转换为其他格式,例如多行变单行,单行变多行。xargs的默认命令是echo,空格是默认定界符。这意味着通过管道传递给xargs的输入将会包含换行和空白,不过 查看详情

xargs命令用法

...n并将其转换成特定命令的命令参数。xargs也可以将单行或多行文本输入转换为其他格式,例如多行变单行,单行变多行。xargs的默认命令是echo,空格是默认定界符。这意味着通过管道传递给xargs的输入将会包含换行和空白,不过... 查看详情

linuxxargs命令

...能够从文件的输出中读取数据。  xargs也可以将单行或多行文本输入转换为其他格式,   例如多行变单行,单行变多行。  xargs默认的命令是echo,这意味着通过管道传递给xargs的输入将会包含换行和空白,   不 查看详情

xargs---组合命令的工具(代码片段)

...n并将其转换成特定命令的命令参数。xargs也可以将单行或多行文本输入转换为其他格式,例如多行变单行,单行变多行。xargs的默认命令是echo,空格是默认定界符。这意味着通过管道传递给xargs的输入将会包含换行和空白,不过... 查看详情

postgresql一行变多行unnest与string_to_array,多行变一行string_agg(代码片段)

Postgresql一行变多行unnest与string_to_array,多行变一行string_agg1.源码--创建表createtabletb(idint,valuevarchar(30));--插入数据insertintotbvalues(1,'aa,bb');insertintotbvalues(2,'aaa,bbb,ccc');--原始数据SELECT*FROMtb--一行变多行selectid,unnest(strin... 查看详情

让 xargs 对每一行输入执行一次命令

...一次命令?它的默认行为是将行分块并执行一次命令,将多行传递给每个实例。来自http://en.wikipedia.org/wiki/Xargs:查找/path-typef-print0|x 查看详情

linuxxargs命令(代码片段)

...,也能够从文件的输出中读取数据。xargs也可以将单行或多行文本输入转换为其他格式,例如多行变单行,单行变多行。xargs默认的命令是echo,这意味着通过管道传递给xargs的输入将会包含换行和空白,不过通过xargs的处理,换行... 查看详情

linux命令--xargs(将命令的结果作为参数)(代码片段)

...够从文件的输出中读取数据。        可以将单行或多行文本输入转换为其他格式,例如多行变单行,单行变多行。使用场景    很多命令不支持|管道来传递参数,而日常工作中有这个必要,所以就有了xargs... 查看详情

一天一命令-xargs

...o,默认分隔符是空格。xargs可以将输入文本转换为单行或多行显示,即指定每行显示的个数。Usage: xargs [OPTION]... COMMAND INITIAL-ARGS...-0 显示为一列,默认显示为一行,以空格为分隔符-a& 查看详情

linuxxargs命令学习

...能够从文件的输出中读取数据;xargs也可以将单行或多行文本输入转换为其他格式,例如多行变单行, 查看详情

xargs

...的数据源例如:ls*.c|xargsgrepmainxargs默认会执行echo命令1.将多行输入转换成单行输出catexample.txt|xargs2.将单行输入转换成多行输出catexample.txt|xargs-n3xargs工作原理:xargs命令接受来自stdin的输入,将数据解析成单个元素,然后调用指定... 查看详情

perl搜索并用xargs-0替换一行

Q...Eperlquotingmeansnouglyescapingintheregex.find's-print0withxargs-0isthesecrettohandlingfileswithspacesintheirnames.find.-name"*.html"-print0|xargs-0perl-p-i-e's|Qhttp://66.36.242.244/~olxhxlwq/E|http://www.johnclarkprose.com/|g' 查看详情

hive应用:将一行变成多行

...gfunctionstransformasingleinputrowtomultipleoutputrows其实就是一行变多行的函数explode具体用法可以参考官网用split函数将字符串转换成数组用explode函数将数组变成多行大功告成! 查看详情

linux利用xargs批量查看所有文件的第一行内容+批量清空所有文件的内容(代码片段)

核心代码输出当前目录下所有文件的第一行内容 ls|xargs-I%sh-c'echo"Firstlinein%:";head-1%'清空当前目录下所有文件的内容ls|xargs-I%sh-c'echo"">%'删除当前目录下所有文件ls|xargs-I%sh-c'rm./%'注意:参数-I是... 查看详情

exec与xargsscreencurl

...mtime+10-execrm-rf批量更改文件名:find./-execmv{}{}_bakxargs可以把多行变成一行cat1.txt|xargsscreen相当于一个虚拟 查看详情

python中实现“一行拆多行“和“多行并一行“,你会吗?

...问今天粉丝提了下面这样一个问题,其中一个是"一行拆多行",另外一个是"多行并一行",貌似群友用powerquery已经解决了。但是基于Python怎么做呢?接着往下看。一行拆多行上面这个问题我会提供两个思路,供大家选择,当然肯... 查看详情

[记忆向]工作中一些实用的linux命令组合(持续)

...景,一边使用,一边学习.1.xargs 这是一个神奇的命令,对于多行的处理,都可以用到-t  先打印,后执行-I  将xargs的每项名称,一般是一行一行赋值给,可以用代替-n 限制执行的次数    find/var/log/-typef-mti 查看详情

[记忆向]工作中一些实用的linux命令组合(持续)

...景,一边使用,一边学习.1.xargs 这是一个神奇的命令,对于多行的处理,都可以用到-t  先打印,后执行-I  将xargs的每项名称,一般是一行一行赋值给,可以用代替-n 限制执行的次数    find/var/log/-typef-mtime+3|xargs-t-Irm//删... 查看详情