字符串替换文件内容

时间:2014-11-09 17:31:39

标签: string bash

我有一个名为tags.txt的文件,每行包含一个标记,例如:

workflow
blogging
writing

使用"Advanced Bash Scripting Guide"我编写了一个Bash脚本,它接受这些行并将它们变成单行逗号分隔列表。

tagsraw=$(<tags.txt)
tags=${tagsraw//$'\n'/', '}

如何在一行代码中执行此操作?

每当我尝试将(<tags.txt)代替tagsraw放在第二行,以多种形式,我得到一个&#34;糟糕的替代&#34;错误。是否可以在Bash中在没有中间变量的情况下执行此操作?

1 个答案:

答案 0 :(得分:3)

您可以使用awk

tags="$(awk -v OFS=', ' -v RS= '{$1=$1}1' tags.txt)"
echo "$tags"
workflow, blogging, writing