удар - Функция к символу ESC?

Хинду довольно хорош для легкого веса. Это также вынуждает Вас скомпилировать все, и можно настроить параметры компиляции, таким образом, можно выбрать, что скомпилировать в и как, что означает, это хорошо для скорости также.

Единственный недостаток - то, что это вынуждает Вас иметь в наличии инструменты компиляции, которые могут быть проблемой для рабочего сервера. Если это - локальный сервер тестирования однако, то хинду может быть хорошим выбором.

1
22.11.2015, 08:12
2 ответа

Для ответа на вопрос, который задают, потому что другие могут искать этот заголовок:

  • zsh только: print -r -- ${(q)var} ${(qq)var} ${(qqq)var} ${(qqqq)var} для различных типов заключения в кавычки.
  • ksh93, zsh, или удар: printf %q "$var"
  • BusyBox (и все выше).

    Использование Вара выравнивает различия между пеплом, ударом и ksh:

    q1="'"
    q2="'\''"
    printf '%s\n' "'${var//$q1/$q2}'"
    

    Не в тире и старых оболочках (те недостающий $ {var//кусочек/ул.}).

  • самый портативный?

    printf "'%s'\n" "$(printf '%s' "$var" | sed "s/'/'\\\\''/g")"
    
    Or
    
    printf '%s\n' "$var" | sed "s/'/'\\\\''/g; 1s/^/'/; \$s/$/'/"
    

Улучшения с удовольствием одобрены!

4
27.01.2020, 23:21

Я соглашаюсь, что не должно быть проблемы со специальными символами в том имени файла.

Я нашел, что иногда сценарии не работают в папке, которую я ожидал. Если Вы заменяете "loadPatch - имя", с "эхом" можно проверить, что 1$ - то, что Вы ожидаете. Если это - то, что Вы ожидаете, затем добавляют эти строки, чтобы видеть, является ли текущий каталог тем, что Вы ожидаете:

ls -l $1
pwd
0
27.01.2020, 23:21

Теги

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