Shell脚本接受用户输入并更改文本文件中的字符串,并在单独的文件中追加和重复相同的文本。

时间:2017-06-03 00:29:53

标签: bash shell

我有一些文字和数字混合,我们可以说:

God is very 1234  and strong
He listens to us all day long
And teaches us to do what's right
But nobody knows 1234  what He does at night.

我想编写一个shell脚本,它从键盘获取用户输入并替换数字位并将更新后的文本复制到一个单独的文件中并重复此过程,以便创建一个文本文件,其中包含多次在下面添加的文本其他在每个用户输入时替换数字位。

1 个答案:

答案 0 :(得分:1)

您可以使用awk来达到您的要求。您可能会在下面看到简单的脚本来从键盘读取数字,并将其替换为file_orig。并且最后将每个输出附加到file

#!/bin/bash

echo "Input a numeric:"
read num

cat file_orig | awk -v aa=$num -v FPAT="[1-9]" '{ sub(/[0-9]+/,aa); print $0}' >> file