разница между /dir и /dir/ [duplicate]

Одиночные кавычки нельзя вставлять в одинарные кавычки. Попробуйте:

$ grep "require('jquery')" index.js
window.jQuery = require('jquery');

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

$ grep 'require('\''jquery'\'')' index.js
window.jQuery = require('jquery');

Обсуждение

Чтобы лучше понять, что происходит, вы можете использовать echo операторы, чтобы увидеть, как оболочка обрабатывает строки:

$ echo 'require('jquery')'
require(jquery)

В приведенном выше примере есть две строки в одинарных кавычках: require ( и ) . Что касается оболочки, строка jquery не заключена в кавычки.

$ echo "require('jquery')"
require('jquery')

Поскольку оболочка принимает одинарные кавычки как часть строк, заключенных в двойные кавычки, вышеуказанное работает нормально.

Иногда, чтобы избежать расширений оболочки, нужно, чтобы все было в строке в одинарных кавычках. В этом случае:

$ echo 'require('\''jquery'\'')'
require('jquery')

В приведенном выше примере есть три строки в одинарных кавычках: require (, jquery и ) . Между этими строками находятся одинарные кавычки, которые экранируются, чтобы оболочка рассматривала их как обычные символы.


Этот ответ предполагает, что оболочка является оболочкой bash, dash, ash или другой оболочкой, производной от POSIX или bourne. Для получения информации о других снарядах см. ответ Стефана Шазеласа .

2
20.01.2016, 15:05
1 ответ

readlink ожидает символическую ссылку, а затем отображает файл/дир, на который указывает символическая ссылка.

  • в вашей первой попытке: он видит символическую ссылку, поэтому отображает то, на что она указывает
  • во второй попытке: он видит music/., что является Music/., который является указанным каталогом, а не символической ссылкой, указывающей на этот каталог, поэтому у него нет ссылки для интерпретации. (Другими словами, когда вы добавляете конечное "/", дескриптор файла оболочки вместо этого предназначен для указанного каталога).
5
27.01.2020, 21:52

Теги

Похожие вопросы