Почему части моей строки исчезают при использовании «echo» в оболочке? - PullRequest
0 голосов
/ 08 мая 2018

Я пытался что-то записать в файл через командную строку Linux, используя echo:

echo -e "<?php\nprint_r($_GET[\"name\"]);"     > print.php

Но я получаю это:

<?php
print_r(["name"]);

Что заставляет $_GET исчезнуть?

1 Ответ

0 голосов
/ 08 мая 2018

В bash знак доллара представляет переменную, даже внутри строки. Чтобы заставить его напечатать $_GET, вам нужно будет экранировать $ с обратной косой чертой:

echo -e "<?php\nprint_r(\$_GET[\"name\"]);"     > print.php
...