POSIXly:
$ echo "1 /this/is/a/path" | awk '
{
cmd = "/usr/bin/basename -- " $2;
cmd | getline out;
print $1, out;
close(cmd);
}'
1 path
Eu quero executar o comando basename em um determinado campo awk.
echo "1 /this/is/a/path" | awk '{print $1" "system("/usr/bin/basename " $2)}'
mas a saída sempre produz um 0 a partir do comando do sistema. Como faço para imprimir a saída real?
POSIXly:
$ echo "1 /this/is/a/path" | awk '
{
cmd = "/usr/bin/basename -- " $2;
cmd | getline out;
print $1, out;
close(cmd);
}'
1 path
Tags awk