输出在一条线上

sha*_*nuo 2 unix awk sed

以下代码按预期工作.但我不能格式化输出.它会打印出这样的东西:

mysql
test
someDB
Run Code Online (Sandbox Code Playgroud)

我希望输出在一行上

mysql test someDB
Run Code Online (Sandbox Code Playgroud)

我尝试在脚本中使用sed但它没有用.

#!/bin/sh
for dbName in `mysqlshow -uroot -pPassWord | awk '{print $2}'`
do
echo "$dbName" | egrep -v 'Databases|information_schema';
done
Run Code Online (Sandbox Code Playgroud)

nau*_*cho 10

只要你想将所有输出行组合成一个,你也可以使用xargs:

例如

find 
.
./zxcv
./fdsa
./treww
./asdf
./ewr
Run Code Online (Sandbox Code Playgroud)

变为:

find |xargs echo
. ./zxcv ./fdsa ./treww ./asdf ./ewr
Run Code Online (Sandbox Code Playgroud)


gho*_*g74 5

您可以使用tr将输出转换为一行

<output from somewhere> | tr "\n" " "
Run Code Online (Sandbox Code Playgroud)