Shell 在linux中,有没有办法将文本添加到conf文件中字符串的末尾?

Shell 在linux中,有没有办法将文本添加到conf文件中字符串的末尾?,shell,ubuntu,terminal,echo,ubuntu-16.04,Shell,Ubuntu,Terminal,Echo,Ubuntu 16.04,我有一个问题:我有一个文件,如果我知道如何编辑,我想从命令编辑。我想按该行的内容查找文件 我在CyberPatriot,我的团队在我所在的州排名第二。我认识一队的人,我认识一队的人。它让我很痛苦,所以我想列一个命令列表,让它更快、更高效 假设我有这个文件: example oof goo random yes 我想把它改成这样: example oof goo random 'added text' yes 我该怎么做? 我知道我可以使用echo命令将文本添加到文件末尾,但我不知道如何将文本

我有一个问题:我有一个文件,如果我知道如何编辑,我想从命令编辑。我想按该行的内容查找文件

我在CyberPatriot,我的团队在我所在的州排名第二。我认识一队的人,我认识一队的人。它让我很痛苦,所以我想列一个命令列表,让它更快、更高效

假设我有这个文件:

example
oof
goo
random
yes
我想把它改成这样:

example
oof
goo
random 'added text'
yes
我该怎么做? 我知道我可以使用echo命令将文本添加到文件末尾,但我不知道如何将文本添加到特定行的末尾


谢谢,Owen

使用下面的方法

sed '4!d' file | xargs -I{} sed -i "4s/{}/{} \'added text\'/" file

基本上在上面的命令中,我们使用sed'4获得文件的第4行!d'文件,然后使用此行将其替换为相同的文本和一些新文本添加文本

您可以为此使用sed

sed 's/random/& Hello World/' file
将文本附加到匹配的字符串

在追加之前,可以使用^random$确保整行匹配

如果需要直接修改文件,可以使用-i标志,这有助于就地编辑。此外,在修改原始文件之前,使用-i.bak首先创建原始文件的备份,如中所示

sed -i.bak 's/random/& Hello World/' file
文件的原始副本可以在file.bak中找到


有关sed的更多信息:

检查此选项可能会有帮助非常感谢,但是,此问题是询问如何创建新行,而不是添加到现有行。如果您具有命令行访问权限,请使用“vi”、“emacs”或“ed”修改文件。谢谢,但是,我希望按内容而不是行号查找文件。您很快!回答得好。参考手册是很好的,但大多数人都会听到,因为他们不读它。。。。因此,您可以添加任何其他内容来完善图片,使其成为更有用的答案。@DavidC.Rankin同意。添加了更多信息。谢谢你的建议:谢谢。如果我能投两次票,我会的。我发现回答问题总是让你扮演老师的角色。高质量的答案是能够承载主题的答案,即使在提问者似乎打算做的事情中简短地给出。至少我是这样尝试的。我们都记得老师给我们留下的困惑比我们走进教室时更大。。。做一个好老师是关键。谢谢,这是我第一次问堆栈溢出问题,我惊讶于我的答案是如此的快和好。