как напечатать переменную в csh, в которой есть *

#csh

#csh

Вопрос:

У меня есть команда, которая возвращает строку в качестве вывода, рассмотрите приведенный ниже код. Я хочу присвоить выходные данные commnd переменной в .cshrc. и, в конечном итоге, переменной запроса.

 set possible_out = "** NONE **"
set cur_v=possible_out
  

теперь, когда в csh, если я делаю

 echo $cur_V
  

Я получаю вывод

[полный список директорий] [полный список директорий] НЕТ [полный список директорий] [полный список директорий]

dir = каталоги в текущей папке. Как я могу распечатать строку как необработанную строку?

Комментарии:

1. вы хотели set cur_v="$possible_out" ? (обратите внимание на $ и dbl-кавычки). Кроме того, вам, вероятно, потребуется экранировать * символы типа \* (возможно, только один "" символ), и в зависимости от использования вам может потребоваться использовать до 5 символов ‘»»`. Рассмотрите возможность использования метасимвола, отличного от оболочки, вместо * . Я думаю , что это не вызовет у вас никаких проблем в простых случаях. Удачи.

2. да, я пытался сделать пример кода здесь, так что, вероятно, вы правы насчет $. также escape char будет полезен только в том случае, если я делаю это сам. возможно, что это будет результатом исполняемой команды. т. е. set possible_out = `cmd_here`

3. что я узнал, так это то, что вместо печати я могу использовать possible_out напрямую, чтобы ввести запрос на печать и получить правильные результаты.