Назначение вывода команды переменной оболочки

Я пытаюсь назначить вывод команды cut переменной, однако столкнулся со странной проблемой.Я использую оболочку tcsh.

$echo $0
tcsh

Вот команда, которую я запускаю:

$set a=`cut -f2 -d' ' test.txt`
Missing }.    //This is the output I am getting

Теперь файл очень простой (ну, это не тот файл, над которым я работал, но я свел проблему к этому.)

Test.txt:

{ {corner

Вот и все! Это файл. Если я изменю файл на это:

{ {corner}

Оператор работает, но "a" получает следующее значение:

$echo $a
corner   //Please note its not {corner} but corner

Следовательно, я думаю, что оболочка пытается выполнить {угол как команда, и поскольку она отсутствует, оболочка закрывающей скобки жалуется. Кто-нибудь знает, почему он показывает такое поведение? Насколько я понимаю, он должен просто присвоить результат cut переменной, но похоже, что он присваивает его рекурсивно! Новичок

8
задан Richeek 30 March 2012 в 03:23
поделиться