如何在文本每一行末尾添加固定的字符串?

sh/bash/dash/ksh/zsh等Shell脚本
回复
boluor
帖子: 274
注册时间: 2007-10-14 0:11

如何在文本每一行末尾添加固定的字符串?

#1

帖子 boluor » 2010-01-11 10:36

比如说文本文件file中原来的内容是:
1234
5678
...
4567

现在我想让文件末尾都添加一字符串,变为:
1234*123
5678*123
...
4567*123

应该怎么做?
希望是shell,C语言等实现我已经搞定了,但是觉得很麻烦。
头像
yingfei
帖子: 273
注册时间: 2007-09-03 18:34
来自: 羊城通

Re: 如何在文本每一行末尾添加固定的字符串?

#2

帖子 yingfei » 2010-01-11 10:38

代码: 全选

awk '{print $0"*123"}'  file_name  > new_file
  • Ubuntu 10.10 ~
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: 如何在文本每一行末尾添加固定的字符串?

#3

帖子 eexpress » 2010-01-11 10:51

倒是头次见用awk的。
通常都是sed -i啊。
● 鸣学
头像
link_01
帖子: 1024
注册时间: 2008-11-05 13:24

Re: 如何在文本每一行末尾添加固定的字符串?

#4

帖子 link_01 » 2010-01-11 11:26

上次写的那个没考虑空格,这个应该可以:
sed '/./s/$/*123/' file > newfile
上次由 link_01 在 2010-01-11 16:17,总共编辑 1 次。
笔记
-------------------------------------
http://blog.163.com/wqt_1101
boluor
帖子: 274
注册时间: 2007-10-14 0:11

Re: 如何在文本每一行末尾添加固定的字符串?

#5

帖子 boluor » 2010-01-11 15:02

yingfei 写了:

代码: 全选

awk '{print $0"*123"}'  file_name  > new_file
thank you !!! 一时没想起来$0
boluor
帖子: 274
注册时间: 2007-10-14 0:11

Re: 如何在文本每一行末尾添加固定的字符串?

#6

帖子 boluor » 2010-01-11 15:03

link_01 写了:sed 's/\>$/*123/' file > newfile
替换行尾符号^/^ ,不错!
头像
yingfei
帖子: 273
注册时间: 2007-09-03 18:34
来自: 羊城通

Re: 如何在文本每一行末尾添加固定的字符串?

#7

帖子 yingfei » 2010-01-11 15:34

eexpress 写了:倒是头次见用awk的。
通常都是sed -i啊。
想想 某位大神肯定会来个 sed , 所以我就不抢他的先了。。
  • Ubuntu 10.10 ~
DerekTan
帖子: 33
注册时间: 2007-05-22 10:48
联系:

Re: 如何在文本每一行末尾添加固定的字符串?

#8

帖子 DerekTan » 2010-01-11 15:59

我来个不“通常”的 :em02

cat in_file | xargs -I{} echo "{}*123" >> out_file
头像
link_01
帖子: 1024
注册时间: 2008-11-05 13:24

Re: 如何在文本每一行末尾添加固定的字符串?

#9

帖子 link_01 » 2010-01-11 16:17

上次写的那个没考虑空格,这个应该可以:
sed '/./s/$/*123/' file > newfile
笔记
-------------------------------------
http://blog.163.com/wqt_1101
头像
HuntXu
帖子: 5776
注册时间: 2007-09-29 3:09

Re: 如何在文本每一行末尾添加固定的字符串?

#10

帖子 HuntXu » 2010-01-11 16:21

代码: 全选

perl -p -i.bak -w -e "s/$/*321/" file
HUNT Unfortunately No Talent...
头像
xzap
帖子: 256
注册时间: 2006-08-24 21:25

Re: 如何在文本每一行末尾添加固定的字符串?

#11

帖子 xzap » 2010-01-11 20:45

想不通这么简单的问题为什么回帖的这么多,我也凑个热闹

直接在vim里面

代码: 全选

:%s/$/*123/g
tusooa
帖子: 6548
注册时间: 2008-10-31 22:12
系统: 践兔
联系:

Re: 如何在文本每一行末尾添加固定的字符串?

#12

帖子 tusooa » 2010-02-20 13:59

代码: 全选

#!/bin/bash
while read line ; do echo "${line}*123" ; done < "$1"
全都是 shell builtin 啊

代码: 全选

] ls -ld //
hhxkss
帖子: 4
注册时间: 2009-02-06 15:46

Re: 如何在文本每一行末尾添加固定的字符串?

#13

帖子 hhxkss » 2010-02-26 16:14

sed '1,$s/$/*123/' file
回复