Shift

Изменяет положения пакетных параметров в пакетных файлах.

Синтаксис

shift

Параметры

отсутствуют

Примечания

  • Использование параметра командной строки shift с расширениями командного процессора

    Если расширения командного процессора разрешены (используются по умолчанию), команда shift поддерживает ключ /n, который указывает команде начинать сдвиг с n-го аргумента, где n  число от нуля до восьми. Например:

    SHIFT /2

    сдвинет %3 на %2, %4 на %3 и т. д. %0 и %1 останутся неизменными.

  • Работа команды shift

    Команда shift изменяет значения замещаемых параметров %0 - %9 путем копирования каждого параметра в предыдущий. Другими словами, значение %1 копируется в %0, значение %2  в %1 и т. д. Такой прием оказывается полезным при написании пакетных файлов, выполняющих одну и ту же операцию над любым числом параметров.

  • Работа более чем с 10 пакетными параметрами

    Команда shift также может быть использована для создания пакетных программ, воспринимающих более 10 параметров. В командной строке такой программы можно задать более 10-ти параметров, при этом все параметры, следующие за десятым (то есть за переменной%9) будут последовательно помещены в эту переменную %9.

  • Использование %* с командой shift

    Команда shift не влияет на пакетный параметр %*.

  • Смещение параметров в обратном направлении

    Команды, выполняющей обратный сдвиг не существует. После сдвига параметров командой shift начальное значение первого параметра (%0) не может быть восстановлено.

Примеры

В следующем пакетном файле Mycopy.bat показано, как использовать команду shift с произвольным числом пакетных параметров. Файл копирует набор файлов в заданный каталог. Пакетные параметры представлены аргументами имени файла и каталога.


@echo off
rem MYCOPY.BAT копирует произвольное число файлов
rem в каталог.
rem Используется следующий синтаксис:
rem mycopy dir файл1 файл2 ...
set todir=%1
:getfile
shift
if "%1"=="" goto end
copy %1 %todir%
goto getfile
:end
set todir=
echo Работа закончена


Для вопросов, обсуждений, замечаний, предложений и т. п. можете использовать раздел форума этого сайта (требуется регистрация).



Новый раздел о средствах командной строки в рамках этого же проекта расположен здесь





HTML и CSS
корректный
my counter

Фитотерапия Молитвы Водолечение Юмор Форум Кладовка link О авторе Фитотерапия Молитвы Водолечение Юмор Форум Кладовка Ссылки О авторе Отправить сообщение Карта сайта Поиск по сайту Главная страница