Unix Man (Справочное руководство)


CSH(1) - часть 6


pushd dir

Текущий каталог помещает в вершину стека каталогов, изменяет текущий каталог на каталог dir.

popd

Изменяет текущий каталог на каталог из вершины стека, затем удаляет (выталкивает) верхний каталог из стека, и объявляет его текущим.

swapd

Переставляет два верхних каталога в стеке. Верхний каталог становится вторым от вершины стека, а второй от вершины каталог становится верхним каталогом.

flipd

Производит переключения между двумя каталогами, текущим каталогом и верхним каталогом из стека. Если в данный момент Вы находитесь в каталоге dir1, а каталог dir2 располагается в вершине стека, то при выполнении команды flipd Вашим каталогом становится dir2, а dir1 помещается на его место в вершине стека. При повторном вызове flipd Вашим каталогом станет dir1, а dir2 снова станет верхним каталогом в стеке.

Подстановка Переменных


Интерпретатор shell поддерживает набор переменных, каждая из которых имеет в качестве ее значений список из нуля или более слов. Некоторые из этих переменных устанавливаются интерпретатором shell или на них можно ссылаться при помощи интерпретатора shell. Например, переменная argv является отображением списка аргументов интерпретатора shell, и на слова, указанные в значении этой переменной, можно ссылаться только специальными способами.

Значения переменных могут быть выведены на экран и изменены при помощи команд set и unset. Некоторое число переменных, на которые производятся ссылки при помощи интерпретатора shell, являются двоичными переключателями; интерпретатор shell не проверяет, какие значения имеют эти переменные, а только установлены они или нет. Например, переменная verbose является двоичным переключателем, который назначает вывод на экран отображения вводимой команды. Эта переменная устанавливается в результате применения в командной строке опции -v.

Некоторые другие операции трактуют переменные в числовом значении. Команда со знаком @ допускает выполнение числовых вычислений и назначение результата переменным. С другой стороны, значения переменных всегда представляются в виде (нуля или более) символьных строк. В целях проведения числовых операций нулевая символьная строка рассматривается, как ноль, а второе и последующие слова значения переменной, состоящего из нескольких слов, игнорируются.

После того, как для входной строки выявлены псевдонимы, и проведен синтаксический анализ, и перед тем, как каждая команда будет выполнена, выполняется подстановка переменных, подключаемая при помощи символов знака доллара ($). Такое раскрытие может быть отменено указанием обратной косой черты (\) перед знаком доллара, но не в двойных кавычках ("), где оно всегда появляется, и не в одинарных кавычках ('), где оно никогда не появляется. Строки, заключенные в обратные кавычки (`), интерпретируются позже (См. раздел Подстановка Команд ниже), так что подстановка знака доллара не возникает в таких строках до последнего момента, если вообще возникает. Знак доллар проходит без изменений, если за ним следуют пробел, знак табуляции или признак новой строки.

Переадресации ввода и вывода распознаются перед раскрытием переменных, и представляют собой переменные, раскрываемые особо. С другой стороны, имя команды и полный список аргументов раскрываются вместе. Таким образом, для первого слова (команды) возможна генерация более, чем одного слова, первое из которых становиться именем команды, а остальные - аргументами.

Если отсутствует заключение в двойные кавычки или не задан модификатор :q, результатами подстановки переменной могут в конечном счете оказаться подставленные команда и имя файла. Заключенная в двойные кавычки (") переменная, значение которой состоит из нескольких слов, раскрывается в часть одного слова со словами, указанными в значении переменной и разделенными пробелами. Когда для подстановки употребляется модификатор :q, переменная раскрывается в несколько слов, где каждое отделено пробелом и заключено в кавычки, чтобы воспрепятствовать дальнейшей подстановке команды или имени файла.

Ниже приведены последовательности для введения значений переменных на вход интерпретатора shell. Кроме выше указанного, ссылка на неустановленную переменную считается ошибкой.




Начало  Назад  Вперед



Книжный магазин