-1

我需要一个 unix shell 脚本,它在执行时接受一个句子并将给定的单词替换为另一个单词。

4

2 回答 2

1

如果您需要命令来执行此操作,请尝试 sed。

例如,在句子中hello替换为:goodbyehello world

$ sed 's/hello/goodbye/g' <<< "hello world"
goodbye world

如果你想在 bash 脚本中这样做:

#!/bin/bash

if [[ $# -lt 3 ]]
then
     echo "Usage: $(basename $0) word replacement sentence" >&2
     exit 1
fi

word="$1"
replacement="$2"
sentence="$3"

echo "${3//$1/$2}"

例子:

$ replace.sh hello goodbye "hello world"
goodbye world
于 2012-11-08T11:31:09.683 回答
0

使用 sed:

sed 's/source/destination/' file_with_sentence.txt

  • 来源是搜索词
  • 目的地是替代品
  • file_with_sentence... 是 sef 解释

您可以将其包装到一些 unix shell 脚本中(您没有告诉您使用的是哪个 shell)

甚至更好:

echo "这是我的句子" | sed 's/源/目标/'

于 2012-11-08T10:37:23.860 回答