SHIFT: Vaihtaa korvattavien parametrien paikkaa komentojonotiedostoissa.


... Esimerkit komennosta "SHIFT"
... "SHIFT" Ote Microsoft Windowsin ohjeesta
... Tärkeää tietoa, vinkkejä "SHIFT"-komennolle

Komento: "SHIFT" on päällä Windows 11, 10, .. saatavilla

Esimerkit komennosta "SHIFT"

The`SHIFT`Windowsin komentokehotteessa olevaa komentoa käytetään parametrien paikan siirtämiseen erätiedostossa. Tässä on joitain esimerkkejä käytöstä`SHIFT`-Komento: Esimerkki 1: iteroi erätiedoston parametrien kautta:

@ECHO OFF
:LOOP
IF "%1"=="" GOTO END
ECHO Parameter: %1
SHIFT
GOTO LOOP
:END

Kuvaus: Tämä esimerkki käyttää silmukkaa erätiedoston kaikkien parametrien toistamiseen ja niiden näyttämiseen yksitellen. Käsky`SHIFT`käytetään parametrien paikan siirtämiseen. Esimerkki 2: Summaparametrit erätiedostossa:

@ECHO OFF
SET KAIKKI YHTEENSÄ=0
:ADD_LOOP
IF "%1"=="" GOTO END_ADD
SET /A KAIKKI YHTEENSÄ+= %1
SHIFT
GOTO ADD_LOOP
:END_ADD
ECHO kaikki yhteensä: %KAIKKI YHTEENSÄ%

Kuvaus: Tässä esimerkissä parametrit summataan silmukaksi. Käsky`SHIFT`siirtää parametrin sijaintia ja`SET /A`käytetään summan päivittämiseen. Esimerkki 3: Sisäkkäisten silmukoiden ja SHIFT-näppäimen käyttäminen:

@ECHO OFF
:OUTER_LOOP
IF "%1"=="" GOTO END_OUTER
ECHO Outer Parameter: %1
SHIFT
:INNER_LOOP
IF "%1"=="" GOTO END_INNER
ECHO Inner Parameter: %1
SHIFT
GOTO INNER_LOOP
:END_INNER
GOTO OUTER_LOOP
:END_OUTER

Kuvaus: Tämä esimerkki näyttää kuinka`SHIFT`voidaan käyttää sisäkkäisissä silmukoissa. Ulompi silmukka käsittelee ulkoisia parametreja, kun taas sisempi silmukka käsittelee sisäiset parametrit. Esimerkki 4: Parametrien ohittaminen SHIFT-näppäimellä:

@ECHO OFF
SHIFT
SHIFT
ECHO Kolmanneksi Parameter: %1

Kuvaus: Tässä käytetään kahta ensimmäistä parametria kahdella peräkkäisellä parametrilla`SHIFT`komennot ohitetaan ja kolmas parametri näytetään. Esimerkki 5: Tarkista ja käsittele parametrit:

@ECHO OFF
:PARAM_LOOP
IF "%1"=="" GOTO END_PARAM
IF /I "%1"=="/DEBUG" (
    ECHO Debug-Tila aktivoitu.
    SHIFT
    GOTO PARAM_LOOP
)
ECHO Käsitellä asiaa Parameter: %1
SHIFT
GOTO PARAM_LOOP
:END_PARAM

Kuvaus: Tämä esimerkki tarkistaa, onko ensimmäinen parametri "/DEBUG". Jos näin on, lähetetään viesti ja parametri ohitetaan. The`SHIFT`-komento on erityisen hyödyllinen eräskripteissä, joissa on käsiteltävä vaihteleva määrä parametreja. Ota huomioon, että`SHIFT`siirtää parametriluettelon sisältöä ja määrittää parametrien paikat uudelleen. Siksi se on tärkeää`SHIFT`Käytä viisaasti ja eräskriptisi logiikan mukaisesti.

"SHIFT" Ote Microsoft Windowsin ohjeesta

Microsoft Windows [Version 10.0.19045.3693]
(c) Copyright 1985-2023 Microsoft Corp.

C:\\Windows>

Vaihtaa korvattavien parametrien paikkaa komentojonotiedostossa.

SHIFT [/n]

Jos komentolaajennukset ovat käytössä, SHIFT-komento tukee /n-
valitsinta,
jolloin argumenttien siirto alkaa n:nnestä argumentista. 
Muuttujan n arvo
voi olla välillä 0 - 8. Esimerkiksi:

SHIFT /2

siirtää %3:n %2:en, %4:n %3:en jne. %0:n ja %1:n arvot jäävät 
ennalleen.

Tärkeää tietoa, vinkkejä "SHIFT"-komennolle

Kun käytät`SHIFT`komento eräskripteissä, on joitain tärkeitä näkökohtia huomioitava: 1. Parametrien menetys: Jos et`SHIFT`tämä siirtää parametrien sijaintia parametriluettelossa vasemmalle. Tämä tarkoittaa, että ensimmäisen parametrin arvo (`%1`) toisen parametrin (`%2`) korvataan, toisesta parametrista tulee kolmas (`%3`), ja niin edelleen. Viimeisen parametrin arvo (`%9`) menetetään, ja arvo`%0`(skriptin nimi) pysyy ennallaan. 2. Vuorojen lukumäärä: Voit`SHIFT`vain yhdeksän kertaa eräkomentosarjassa, koska siinä on vain yhdeksän numeerista parametria (`%0`siihen asti kun`%9`) antaa. Yhdeksännen muuton jälkeen yhdeksännen parametrin arvo jää hukkaan. 3. SHIFT silmukoissa: Jos et`SHIFT`silmukassa, sinun tulee varmistaa, että ehdot tarkistetaan oikein, jotta vältetään loputon silmukka, jos muita parametreja ei ole.

@ECHO OFF
:LOOP
IF "%1"=="" GOTO END_LOOP
ECHO Parameter: %1
SHIFT
GOTO LOOP
:END_LOOP

4. SHIFT sisäkkäisissä silmukoissa: Jos et`SHIFT`sisäkkäisissä silmukoissa huomioi, että parametrien siirtäminen silmukassa vaikuttaa myös parametrien paikkoihin sisäkkäisissä silmukoissa.

@ECHO OFF
:OUTER_LOOP
IF "%1"=="" GOTO END_OUTER
ECHO Outer Parameter: %1
SHIFT
:INNER_LOOP
IF "%1"=="" GOTO END_INNER
ECHO Inner Parameter: %1
SHIFT
GOTO INNER_LOOP
:END_INNER
GOTO OUTER_LOOP
:END_OUTER

5. Viiveellinen laajennus ja SHIFT: Jos et`SHIFT`yhdessä viivästetyn laajenemisen kanssa (`ENABLEDELAYEDEXPANSION`), ota huomioon, että`!`ei käytetä viivästettyyn laajenemiseen`%`.

@ECHO OFF
SETLOCAL ENABLEDELAYEDEXPANSION
SET COUNT=0
:LOOP
IF "!1"=="" GOTO END_LOOP
SET /A COUNT+=1
SHIFT
GOTO LOOP
:END_LOOP
ECHO määrä Parameter: %COUNT%

On tärkeää ottaa huomioon järjestys ja tiheys`SHIFT`Suunnittele huolellisesti varmistaaksesi, että parametrit siirretään odotetulla tavalla eikä tietoja menetetä. Tarkistaa myös tyhjiä parametreja (`IF "%1"==""`) on tärkeää äärettömien silmukoiden välttämiseksi.


Deutsch
English
Español
Français
Italiano
日本語 (Nihongo)
한국어 (Hangugeo)
汉语 (Hànyǔ)
Türkçe
Português
Português
Svenska
Norsk
Dansk
Suomi
Nederlands
Polski









Windows-10


... Windows 10 FAQ
... Windows 10 How To


Windows 10 How To


... Windows 11 How To
... Windows 10 FAQ



Komento SHIFT - Vaihtaa korvattavien parametrien paikkaa komentojonotiedostoissa.

HTTP: ... console/fi/060.htm
0.093
17991

Wozu der Stress-Test am Windows Computer?

Why does Quad Explorer for MS OS need to be updated so often?

How to, turn off view the zip files in the tree-view, (disable, show, folder)?

How to show last open favorite (the name) in the explorer title bar?

Unter Android Maus Touch Geschwindigkeit am Samsung Galaxy anpassen?

Wie deinstalliere ich Anwendungen, bzw. APPs an meinem Samsung?



(0)