我有一个超过10000行的文本文件,并使用此代码分隔一些内容:
BS=`cat myfile | grep myword`
cutbs=`cut -d'=' -f2 $BS | sort -u
$cat cutbs
qwe
asd
zxc
现在我想在一行中打印这种类型的输出:
$cat cutbs
qwe asd zxc
答案 0 :(得分:2)
您只需使用paste -s
:
cut -d'=' -f2 $BS | sort -u | paste -s
Sun OS版本:
cut -d'=' -f2 $BS | sort -u | paste -s -
请参阅:
$ cat tubs
qwe
asd
zxc
$ cat tubs | paste -s -
qwe asd zxc
项目以制表符分隔,但您可以选择分隔符。带空格的示例:
$ cat tubs
qwe
asd
zxc
$ cat tubs | paste -s -d' ' -
qwe asd zxc
谨防你的例子:
cutbs=`cut -d'=' -f2 $BS | sort -u`
创建一个变量,然后运行
$cat cutbs
输出与$cutbs
答案 1 :(得分:0)
您可以使用sed:
$ cat $cutbs | sed -n -e ':start $!{N;s/\n/ /;t start;};P;D;'
或者tr:
$ cat $cutbs | tr '\n' ' '