2016-09-16 2 views
0

После моих профессоров точных инструкций, я пытаюсь создать переменное с именем ЯЙЦА, который содержит 100 «A, запустив эту команду из моей Kali VM:Выполнение Perl скриптов переменных в Bash

[email protected]:~# EGG='perl -e "print 'A'x100"' 

Это мой результат при попытке повторить переменную:

[email protected]:~# echo $EGG 
perl -e "print Ax100" 

в демонстрации моего профессора, его переменная содержала 100 «а-х, как ожидается. Любые предложения по устранению этого?

+4

вы также можете показать ваш профессор этого: http://mywiki.wooledge.org/BashFAQ/082 о том, почему '$()' предпочтительнее '' – Sundeep

ответ

7

Вам нужно использовать обратные тики в оболочке, чтобы захватить вывод команды.

# EGG=`perl -e "print 'A'x100"` 
+0

О, спасибо так много. Я принимал их за апострофы за повторение лекции моего профессора. –

+10

Это одна из причин, по которой '$()' (например, 'EGG = $ (perl -e" print 'A'x100 ")') предпочтительнее, чем обратные кавычки - это гораздо труднее понять. –

Смежные вопросы