我有一个csv文件,其中每行包含一个人的名字,如下所示。
| 11th October | 06 6606 1161 | Mr Bean is 43 years old. Mr Bean likes apples. |
字符串
我的目标是编写一个bash脚本,用一个新的姓氏替换文件中的姓氏。
例如,使用脚本replace_surname.sh
-
#!/bin/sh
if [ ! -z $1 ]
then
#replace surname following 'Mr' with $1
fi
型
我希望,给定上面的csv和命令replace_surname.sh Smith
| 11th October | 06 6606 1161 | Mr Smith is 43 years old. Mr Smith likes apples. |
型
我试过的-
sed -i 's/^Mr .*$/Mr PacMan/' test.csv
型
还有一些来自here的文件,这对文件没有任何影响.
我有点卡住了,我的csv文件有数百条记录,所以我不想用手来做这一切!任何帮助都非常感谢:)
1条答案
按热度按时间5anewei61#
这应该可以做到:
字符串
即如果旧姓是1个字
Regex可以进一步改进,但您应该了解