Следующий ведет себя так же, в Fedora и CentOS.
cd mydirectory
работает.
cd notadirectory
работает (получает ошибку от Баш).
Однако
cd `
дает мне какую-то подсказку:
>
Ничего, что я'вэ подумал, что для входа дает никакого ответа, он просто направляется в следующей строке снова подскажут. Я просто использовать <и>на Ctrl</роз>+<и>в</КБД>, Чтобы выйти обратно в корень моего @localhost
а.
Какова цель и что с ней можно сделать?
Спасибо!
То, что вы'вэ введенный в Апостроф - это начало инструкция на баш, чтобы оценить то, что вы набираете команду. На В >
указывает вы по-прежнему ввод команды на следующей строке.
Если закрыть Апостроф вы'll найти вся команда будет работать. Е. Г.
~$ cd `
> echo /var`
/var$
JohnC'ы ответ уже объясняет Апостроф. Но то, что вы также задаетесь вопросом о том, в >
строки. Это продолжение строки, и это не только вызвано апостроф, но always, когда ваш снаряд четко знает, что вы'повторно не сделали введя команду. Самый простой пример-ввод \ явное продолжение линии ` ` в конце строки ввода (которая способствует расщеплению длинный вход):
в
$ echo \
> hallo
Обратите внимание, что похожа на ПС1 управления командной строке'ы выглядят, вы также можете установить ПС2
, чтобы изменить продолжения запрос, например
$ export PS2="(cont.) "
$ echo \
(cont.) hallo
Есть много причин для продолжения произойти. Один Апостроф является неполным, но вы также могли бы ввести что-то вроде
ls -l `which cp`
в одной строке (сторона-Примечание: это's рекомендуемый, чтобы использовать $(
и )
вместо, так как скобки делают очевидным, где расширение начинается и заканчивается, в то время как один обратные апострофы сделать его более трудным, чтобы увидеть, где один's отсутствует. И гнездования...). Другие возможные причины для продолжения строки:
А
или в
интернет
после если
эсок
после дела
(компакт-диск $дом; кот .bashrc и)
|
, а также условное исполнение ||
и &АМП;&
(не &
, хотя, так что's просто, что делает команда работает в фоновом режиме)'
и "
в)Как ни странно, отсутствующую скобку }
после вычисления переменной ${
и вызывает продолжение строки, но не из-за вставленной в пространство:
$ echo ${
> PS2}
bash: ${
PS2}: bad substitution
Это означает, что ваша команда еще не завершена. На самом деле, обратный Апостроф, `
, используется для разделения команд в узде.
Пример:
cd /tmp # Go to /tmp
pwd # Prints the current working directory
ls `pwd` # Lists the content of the current working directory
Обратный Апостроф начинается/заканчивается командой подстановки. Оболочка считывает команду в обратные кавычки, интерпретирует результаты, и эти результаты в команде. Е. Г:. ЛС, по которым результаты КП` в "какие КП" не выполняется и результат этой команды, я.е /ОГРН/СР будет использоваться в качестве аргумента команды ls. Однако такое поведение является устаревшим в пользу более ясным и читаемым $(УМК) подстановка команд.
При вводе компакт-диска в ` <ввод> корпус ожидая команды, чтобы следовать, и, чтобы быть рядом с Апостроф.
В случае переменной расширения с помощью брекетов оболочка представляет продолжение подскажу, поскольку эти брекеты являются лексически оценивали до расширения делается.