Perl внутри Bash: как вызвать Perl для сценария, сохраненного в строке
Мне нужно выполнить один и тот же сценарий Perl, несколько раз, на разных файлах.
Чтобы упростить процесс, я пытаюсь сохранить сценарий perl в виде строки bash и вызвать perl поверх строки, как в части кода «не работает», приведенной ниже:
#!/bin/sh
# works
perl -e 'print 1;'
# doesn't work
S="'print 1;'"
perl -e $S
perl -e $S
Я получаю следующий вывод:
1Can't find string terminator "'" anywhere before EOF at -e line 1.
Can't find string terminator "'" anywhere before EOF at -e line 1.
Что я здесь не так делаю? Можно ли добиться того же эффекта другим способом?