Bagikan melalui


menggeser

Mengubah posisi parameter batch dalam file batch.

Sintaksis

shift [/n <N>]

Parameter-parameternya

Pengaturan Deskripsi
/n <N> Menentukan untuk mulai bergeser pada argumen Nth, di mana N adalah nilai apa pun dari 0 ke 8. Memerlukan ekstensi perintah, yang diaktifkan secara default.
/? Menampilkan bantuan pada prompt perintah.

Komentar

  • Perintah shift mengubah nilai parameter batch %0 melalui %9 dengan menyalin setiap parameter ke yang sebelumnya—nilai %1 disalin ke %0, nilai %2 disalin ke %1, dan sebagainya. Ini berguna untuk menulis file batch yang melakukan operasi yang sama pada sejumlah parameter.

  • Jika ekstensi perintah diaktifkan, perintah shift mendukung opsi baris perintah /n . Opsi /n menentukan untuk mulai bergeser pada argumen Nth, di mana N adalah nilai apa pun dari 0 hingga 8. Misalnya, SHIFT /2 akan mengalihkan %3 ke %2, %4 ke %3, dan sebagainya, dan membiarkan %0 dan %1 tidak terpengaruh. Ekstensi perintah diaktifkan secara default.

  • Anda dapat menggunakan perintah shift untuk membuat file batch yang dapat menerima lebih dari 10 parameter batch. Jika Anda menentukan lebih dari 10 parameter pada baris perintah, parameter yang muncul setelah kesepuluh (%9) akan digeser satu per satu ke %9.

  • Perintah shift tidak berpengaruh pada %* parameter batch.

  • Tidak ada perintah shift mundur. Setelah menerapkan perintah shift , Anda tidak dapat memulihkan parameter batch (%0) yang ada sebelum shift.

Contoh

Untuk menggunakan file batch, yang disebut Mycopy.bat, untuk menyalin daftar file ke direktori tertentu, ketik:

@echo off
rem MYCOPY.BAT copies any number of files
rem to a directory.
rem The command uses the following syntax:
rem mycopy dir file1 file2 ...
set todir=%1
:getfile
shift
if "%1"=="" goto end
copy %1 %todir%
goto getfile
:end
set todir=
echo All done