自定义 paste 命令的输出
在这最后一步中,我们将学习如何自定义 paste 命令的输出,以满足我们的特定需求。
首先,让我们创建另一个示例文件:
echo -e "apple,red\nbanana,yellow\ncherry,purple" > fruits.csv
现在,假设我们希望将 file1.txt、file2.txt 和 fruits.csv 文件中的信息合并,并使用分号(;)而不是默认的制表符来分隔输出字段。
我们可以使用以下命令:
paste file1.txt file2.txt fruits.csv -d ";"
示例输出:
Apple;Red;apple,red
Banana;Yellow;banana,yellow
Cherry;Purple;cherry,purple
在这个例子中,我们使用了 -d ";" 选项来指定分号作为分隔符。
你还可以使用 printf 命令进一步自定义输出格式:
paste file1.txt file2.txt fruits.csv | awk -F"\t" '{printf "%s; %s; %s\n", $1, $2, $3}'
示例输出:
Apple; Red; apple,red
Banana; Yellow; banana,yellow
Cherry; Purple; cherry,purple
在这个例子中,我们使用 awk 命令以制表符(-F"\t")分割输入,然后使用 printf 命令以所需的分隔符(;)和换行符(\n)格式化输出。