制作一个脚本来替换Ubuntu上选定字符串中的字符

时间:2014-03-21 14:48:27

标签: bash ubuntu

我想在Ubuntu上创建一个脚本,我将用它来编辑一些文本文件时使用键盘快捷键将选定的西里尔字符串转换为拉丁语。例如,

Selected string | Changed 

қызыл           | qızıl

你能帮帮我吗?

1 个答案:

答案 0 :(得分:0)

您可以使用"翻译"创建数组。然后使用sed i进行替换:

declare -A array=()

while read word trans;
do
        array[$word]="$trans"
done < your_list

file="file_to_replace"
for key in ${!array[@]}; do
    #echo "array[$key] = ${array[$key]}" # to see the array composition
    sed -i "s/$key/${array[$key]}/g" $file
done

这假设your_list包含两列。首先是单词,第二个是&#34;翻译&#34;。

然后sed -i使用sed s/something/replacement/g语法执行就地替换。