LINUX.ORG.RU

shell: раскрыть escaped символы


0

0

Есть shell-скрипт в котором есть строчка:

su -l USERNAME -c "$@"

А аргументах, передаваемых скрипту, есть escaped unicode-символы, например: \303\272\ (символ ú). А $@ может выглядить примерно следующим образом:

sleep 20; /usr/bin/some-app -rlti --modify-window=1 --password-file /tmp/passwd user@host.local::traysh/Documents/M\303\272sicas /media/

Таким образом они (символы) не расскрываются и программа вызывается с неверными аргументами.

Как минимальными усилиями сделать unescape этих символов? Про $'\303\272\' известно, но как применить эти знания в данном контексте — непонятно. На целевой системе — busybox со всеми вытекающими.

Спасибо.

★★★

Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.