Text-Processing
如何用另一個文件中的內容替換引號之間的文本?
我有以下類型的文字:
$OU = 'or'; $DINHEIRO_CAIXA = 'Cash balance'; $PAGINA = 'Page'; $DE = 'from'; $ENVIAR = 'Send'; $PRINCIPAL = 'Main';
我已經使用了單引號內的所有文本
cat arquivo | grep -oP "'[^']+'" | tr -d "'"
然後將此提取的文本翻譯成葡萄牙語,但現在我不知道如何用翻譯後的文本替換單引號之間的原始文本,我正在尋找類似的東西
$OU = 'ou'; $DINHEIRO_CAIXA = 'Dinheiro em caixa'; $PAGINA = 'Pagina'; $DE = 'de'; $ENVIAR = 'enviar'; $PRINCIPAL = 'Principal';
我試過用
grep -F
它來替換文件本身,但它失敗了,因為模式不匹配,因為我在新文件上沒有引號,有沒有辦法做到這一點?
使用
awk
:awk -F\' ' { getline translate_text <"trans_file"; print $1, translate_text, $3; }' OFS=\' original_file
original_file
是您的原始文件;trans_file
是您翻譯的 original_file 格式如下:ou Dinheiro em caixa Pagina de enviar Principal