ubuntu 尝试将用户输入的变量添加到文件末尾

mnemlml8  于 2022-10-27  发布在  其他
关注(0)|答案(1)|浏览(201)

使用Ubuntu。
目前,我正在尝试将用户输入的变量添加到文件的末尾。简而言之,这允许我使用Bash脚本自动添加VSFTPD用户。
目前我使用的是awk&sed。我没有Sed,但这是我的awk,我目前在一起。

awk '{$centre_name}' /etc/vsftpd-users
rekjcdws

rekjcdws1#

GNU AWK解决方案您可以使用-v将变量ram到GNU AWK中,我会这样做,让file.txt内容为

1
2
3

然后

var1="four"
awk -v var=${var1} '{print}END{print var}' file.txt

给出输出

1
2
3
four

解释:我使用-v将awk的变量var的值设置为外壳的变量var1的值,然后文件i的每一行都按原样设置print,处理完成后,我将print的值设置为var

  • (在Gawk 4.2.1中测试)*
    GNU sed解决方案您可以使用$来定位最后一行,并使用命令a来追加文本行,如下所示,对于前面所示的file.txt
var1="four"
sed "$ a ${var1}" file.txt

产生与上面相同的输出

  • (在GNU sed 4.5中测试)*

相关问题