Как применить функцию к запоминаемому числовому шаблону в sed?
Упрощение проблемы, как показано ниже:
file.txt:
130 Some string here
40 Some string here
19 Some string here
script.sh:
#!/bin/bash
function tenmore
{
expr $1 + 10
}
sed -i.backup "s|^\([0-9][0-9]*\)\t\(.*\)|\2\t`tenmore \1`|g" file.txt
wantedoutput:
Some string here 140
Some string here 50
Some string here 29
что я на самом деле получаю:
Some string here 11
Some string here 11
Some string here 11
Итак, он интерпретирует \ 1 как выходсимвол 1 и выполняет функцию более 1 (1 + 10 = 11), а не над числовым значением, хранящимся в \ 1.Как я могу применить функции к \ 1?
Спасибо.