FOR: Suorittaa määritetyn komennon kullekin tiedostojoukon tiedostolle.


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

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

"FOR" Ote Microsoft Windowsin ohjeesta

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

C:\\Windows>

Suorittaa määritetyn komennon kullekin tiedostosarjan 
tiedostolle.

FOR %muuttuja IN (sarja) DO komento [komennon parametrit]

%muuttuja Määrittää korvattavan parametrin (yksi merkki).
(sarja) Yksi tai useampia tiedostoja, yleismerkkejä 
voidaan käyttää.
komento Määrittää kullekin tiedostolle suoritettavan 
komennon.
komennon parametrit
Määrittää parametrit tai valitsimet 
suoritettavalle komennolle.

Jos haluat käyttää FOR-komentoa komentojono-ohjelmassa, määritä 
%%muuttuja
%muuttujan sijaan. Muuttujien nimet vaativat saman merkkikoon, 
joten %i on
eri muuttuja kuin %I.

Jos komentolaajennukset ovat käytössä, seuraavia FOR-komennon
lisäominaisuuksia tuetaan:

FOR /D %muuttuja IN (joukko) DO komento [komentoparametrit]

Jos joukko sisältää yleismerkkejä, ne vastaavat kansionimiä
tiedostonimien asemesta.

FOR /R [[asema:]polku] %muuttuja IN (joukko) 
DO komento [komentoparametrit]

Käy läpi kansiopuuta [asema:]polku suorittaen
FOR-käskyä jokaisessa puun kansiossa. Jos kansiota
ei ole määritetty /R-valitsimen jälkeen, oletusarvona 
on nykyinen kansio. Jos joukko on vain piste (.), luetellaan
kansiopuu.

FOR /L %muuttuja IN (alku, askel, loppu) 
DO komento [komentoparametrit]

Joukko on numeroiden jakso alusta loppuun askellettuna.
(1,1,5) luo jakson 1 2 3 4 5 ja (5,-1,1) luo jakson (5 4 3 2 
1)

FOR /F ["asetukset"] %muuttuja IN (tiedostonimijoukko) 
DO komento [komentoparametrit]
FOR /F ["asetukset"] %muuttuja IN ("merkkijono") 
DO komento [komentoparametrit]
FOR /F ["asetukset"] %muuttuja IN ('komento') 
DO komento [komentoparametrit]

tai, jos usebackq-asetus on käytössä:

FOR /F ["asetukset"] %muuttuja IN (tiedostonimijoukko) 
DO komento [komentoparametrit]
FOR /F ["asetukset"] %muuttuja IN ('merkkijono') 
DO komento [komentoparametrit]
FOR /F ["asetukset"] %muuttuja IN (`komento`) 
DO komento [komentoparametrit]

Tiedostonimijoukko tarkoittaa vähintään yhtä tiedostonimeä. 
Jokainen 
tiedosto avataan, luetaan ja käsitellään, ennen kuin 
siirrytään 
seuraavaan tiedostonimijoukkoon. Käsittely sisältää tiedoston 
lukemisen, jakamisen yksittäisiksi tekstiriveiksi ja 
jäsentämisen 
määrityksiksi. Tämän jälkeen silmukan perusosaa kutsutaan 
muuttujan 
arvoilla, jotka on määritetty löydettyjen 
määritysmerkkijonojen mukaan. 
Valitsin /F välittää oletusarvoisesti jokaisen tiedoston 
rivin 
ensimmäisen tyhjän määrityksen. Tyhjät rivit ohitetaan. Voit 
korvata 
oletusjäsennystoiminnon määrittämällä valinnaisen 
"asetukset"-parametrin. 
Tämä on lainausmerkein erotettu merkkijono, joka sisältää 
vähintään 
yhden jäsennysasetuksen määrittävän avainsanan. 
Avainsanoja ovat seuraavat:

eol=c - Määrittää rivin lopun kommenttimerkin
(vain kerran).
skip=n - Määrittää tiedoston alussa ohitettavien
rivien määrän.
delims=xxx - Määrittää erotinjoukon. Tämä korvaa
oletuserotinjoukon (väli ja sarkain).
tokens=x,y,m-n - Määrittää ne rivien vuoromerkit, jotka
välitetään jokaisen iteraation 
perusosaan.
Tämä aiheuttaa lisämuuttujanimien 
varaamisen. 
m-n-muoto on alue, joka määrittää 
vuoromerkkien m 
ja n väliset vuoromerkit. Jos tokens=-
merkkijonon 
viimeinen merkki on tähtimerkki, 
komento varaa 
lisämuuttujan. Lisämuuttuja 
vastaanottaa tekstin, 
joka riville jää viimeisen jäsennetyn 
vuoromerkin 
jälkeen.
usebackq - Määrittää uuden semantiikan, missä 
kokolainausmerkkien sisällä oleva 
merkkijono 
toteutetaan komentona, ja 
puolilainausmerkkien 
sisällä oleva merkkijono on täsmällinen 
merkkijonokomento, jossa tiedostonimet 
voidaan 
kirjoittaa kokolainausmerkkien sisään 
tiedostonimijoukossa.

Esimerkkejä:

FOR /F "eol=; tokens=2,3* delims=, " %i in (oma.txt) do @echo %i 
%j %k

Jäsentää jokaisen Oma.txt-tiedoston rivin ohittaen rivit, 
jotka
alkavat puolipisteellä sekä välittää jokaisen rivin toisen ja
kolmannen merkinnän perusosaan siten, että merkinnät on 
erotettu
toisistaan pilkuilla tai väleillä. Huomaa perusosan 
käskyviittaus
%i toisen merkinnän hakemiseksi, %j kolmannen merkinnän 
hakemiseksi
ja %k kolmannen merkinnän jälkeisten merkintöjen hakemiseksi. 
Välejä
sisältävissä tiedostonimissä, sinun on sijoitettava 
tiedostonimet
kokolainausmerkkien sisään. Jotta lainausmerkkejä voitaisiin 
käyttää
tällä tavalla, myös usebackq-vaihtoehtoa on käytettävä. 
Muuten
kokolainausmerkkien välissä oleva teksti tulkitaan 
täsmälliseksi
merkkijonoksi.

%i on määritetty eksplisiittisesti FOR-komennossa, %j ja %k 
on
epäsuorasti määritetty tokens=-vaihtoehdon avulla. Voit 
määrittää
jopa 26 merkintää tokens=-rivillä. Muuttujaa, joka on 
suurempi
kuin kirjain z tai Z, ei kuitenkaan voi määrittää. Ota 
huomioon,
että FOR-muuttujat koostuvat yhdestä kirjaimesta, kirjainkoko 
on
merkitsevä, muuttujat ovat yleisiä eikä niitä voi olla 
samanaikaisesti
aktiivisena enempää kuin 52.

Voit käyttää FOR /F -komentoa myös peräkkäisten merkkijonojen
jäsentämiseen muodostamalla tiedostonimijoukkoja sulkeiden
sisään käyttämällä kokolainausmerkkejä. Niitä käsitellään
yksittäisinä jäsennettyinä tiedoston syöteriveinä.

Voit käyttää FOR /F -komentoa myös tulostekomennon 
jäsentämisessä
muodostamalla tiedostonimijoukon sulkeiden sisään käyttämällä
kokolainausmerkkejä. Merkkijonoa käsitellään komentorivinä, 
joka
välitetään Cmd.exe-alitiedostolle. Tulostus siepataan ja
jäsennetään tiedostona. Seuraava esimerkki:

FOR /F "usebackq delims==" %i IN (`joukko`) DO @echo %i

luettelee nykyisen ympäristön ympäristömuuttujanimet.

FOR-muuttujaviittauksien korvauksia on parannettu.
Voit käyttää nyt seuraavia valinnaisia syntakseja:

%~I - Laajentaa %I-merkinnän poistamalla kaikki 
ympäröivät lainausmerkit (").
%~fI - Laajentaa %I-merkinnän FQN-polkunimen.
%~dI - Laajentaa vain %I-merkinnän aseman kirjaimen.
%~pI - Laajentaa vain %I-merkinnän polun.
%~nI - Laajentaa vain %I-merkinnän tiedostonimen.
%~xI - Laajentaa vain %I-merkinnän tiedostotunnisteen.
%~sI - Laajennettu polku sisältää vain lyhyitä nimiä.
%~aI - Laajentaa %I-merkinnän tiedostomääritteet.
%~tI - Laajentaa %I-merkinnän tiedoston päivämäärän ja 
ajan.
%~zI - Laajentaa %I-merkinnän tiedostokoon.
%~$PATH:I - Etsii PATH-ympäristömuuttujassa luetellut 
hakemistot 
ja laajentaa %I-merkinnän ensimmäisen löydetyn 
FQN-nimen. Jos ympäristömuuttujaa ei ole 
määritetty 
tai etsintä ei löydä tiedostoa, tämä muuttuja 
laajennetaan tyhjäksi merkkijonoksi.

Määritteet voidaan yhdistää, jotta saadaan yhdistelmätulokset:

%~dpI - Laajentaa vain %I-määritteen aseman kirjaimen 
ja polun.
%~nxI - Laajentaa vain %I-määritteen tiedostonimen ja 
laajennuksen.
%~fsI - Laajentaa vain %I-määritteen lyhyet nimet ja 
täydelliset 
polkunimet.
%~dp$PATH:I - Etsii %I-määritteen PATH-ympäristömuuttujassa
luetellut hakemistot ja laajentaa ensimmäisen 
löydetyn
aseman kirjaimen ja polun.
%~ftzaI - Laajentaa %I-määritteen hakemistoluettelon 
tulostusrivin 
muodossa. 

Yllä olevissa esimerkeissä %I ja PATH voidaan korvata millä 
tahansa 
kelvollisella arvolla. Kelvollinen FOR-muuttujanimi keskeyttää 
%~-syntaksin. Isojen kirjaimien käyttäminen muuttujanimissä 
(esimerkiksi %I) tekee niistä luettavampia ja estää niiden 
sekoittamisen määritteisiin, joissa kirjainkoko ei ole 
merkitsevä.

Esimerkit komennosta "FOR"

The`FOR`Windowsin komentokehotteessa olevaa komentoa käytetään erätiedostojen silmukointiin. Tässä on joitain esimerkkejä: Esimerkki 1: Tiedostojen selaaminen hakemistossa:

FOR %G IN (hakemistosta\*) DO ECHO %G

Description: Tämä komento tulostaa kunkin määritetyn hakemiston tiedoston nimen. Esimerkki 2: Tietyn tiedostotunnisteen sisältävien tiedostojen selaaminen:

FOR %G IN (hakemistosta\*.txt) DO ECHO %G

Kuvaus: Tulostaa kunkin määritetyn hakemiston tekstitiedoston nimen. Esimerkki 3: Tiedostojen iterointi rekursiivisesti alihakemistoissa:

FOR /R hakemistosta %G IN (*.txt) DO ECHO %G

Kuvaus: Kulkee rekursiivisesti kaikki määritetyn hakemiston alihakemistot ja tulostaa kunkin tekstitiedoston nimen. Esimerkki 4: Tietyn alueen lukujen selaaminen:

FOR /L %G IN (1,1,10) DO ECHO %G

Kuvaus: Tulostaa numerot väliltä 1-10. Esimerkki 5: Merkkien kiertäminen merkkijonossa:

FOR %G IN ("Hei") DO ECHO %G

Kuvaus: Tulostaa sanan "Hei" jokaisen kirjaimen. Esimerkki 6: Tiedoston sisällön selaaminen rivi riviltä:

FOR /F "tokens=*" %G IN (tiedosto.txt) DO ECHO %G

Kuvaus: Toistaa tiedoston "File.txt" rivit ja tulostaa jokaisen rivin. Esimerkki 7: Iterointi ympäristömuuttujien kautta:

FOR %G IN (%PATH%) DO ECHO %G

Kuvaus: Toistuu ympäristömuuttujan polkujen kautta`PATH`ja tulostaa jokaisen polun. Esimerkki 8: Käyttö`SET`ketjussa:

FOR %G IN (1 2 3) DO SET /A Määrä=%G * 2 & ECHO Kaksinkertainen %G On %Määrä%

Kuvaus: Asettaa muuttujan`Määrä`kaksinkertaiseksi silmukan nykyiseen numeroon ja tulostaa tämän. Esimerkki 9: Iterointi alihakemistojen ja tiedostojen kautta:

FOR /R %G IN (*) DO ECHO %G

Kuvaus: Kulkee rekursiivisesti kaikki nykyisen hakemiston alihakemistot ja tiedostot. Esimerkki 10: Sisäkkäiset silmukat:

FOR %G IN (1 2) DO FOR %H IN (A B) DO ECHO %G%H

Kuvaus: Sisältää kaksi silmukkaa ja tulostaa kaikki %G:n ja %H:n yhdistelmät. Huomaa, että erätiedostoissa`%`kautta`%%`pitäisi vaihtaa. Esimerkiksi:`FOR %G IN (...) DO ECHO %%G`. Suorassa kehotteessa käytetään vain yhtä prosenttimerkkiä (`%`).

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

Kun käytät`FOR`-komento Windowsin komentokehotteessa, on muutamia tärkeitä huomioitavia seikkoja: 1. Syntaksi erätiedostoissa: Jos sinulla on`FOR`komento erätiedostossa, sinun on`%`kautta`%%`korvike. Esimerkiksi:`FOR %%G IN (...) DO ECHO %%G`. 2. Muuttujien käyttö: Yleensä käytät muuttujia (esim.`%%G`) kohdassa`FOR`- Loop tallentaaksesi arvot. Huomaa, että muuttujat eivät voi käyttää määritettyjä arvoja silmukan ulkopuolella.

SET Variable=Alkuarvo
FOR %%G IN (Arvo1 Arvo2) DO SET Variable=%%G
ECHO %Variable%

Tässä tulee`%Variable%`pitää arvo "alkuarvo", koska`SET`-Opetus erikseen`FOR`silmukka suoritetaan. 3. Välyt poluissa tai tiedostonimissä: Jos polut tai tiedostonimet sisältävät välilyöntejä, polku tai tiedostonimi tulee laittaa lainausmerkkeihin sen varmistamiseksi, että ne tulkitaan oikein.

FOR %%G IN ("Hakemisto välilyönneillä\Tiedosto välilyönnillä.txt") DO ECHO %%G

4. Vaihtoehdot`FOR /F`-Loop: Jos`FOR`yhteydessä`/F`vaihtoehto (esim.`FOR /F "tokens=*" %%G IN (tiedosto.txt) DO ECHO %%G`), sinun on tiedettävä tiedoston syntaksi`tokens`ja`delims`Säädä asetuksia huolellisesti saadaksesi halutut tulokset. 5. Sisäkkäiset silmukat: Sisäkkäisten silmukoiden kohdalla sinun on varmistettava, että niitä käytetään oikein`%`tai`%%`kiinnitä huomiota sen varmistamiseen, että muuttujiin viitataan oikeassa silmukassa.

FOR %%G IN (1 2) DO (
    ECHO Ulompi silmukka: %%G
    FOR %%H IN (A B) DO ECHO Sisäinen silmukka: %%H
)

6. Tiedostorivien loppu sisään`FOR /F`: Jos sinä`FOR /F`Jos haluat iteroida tiedoston rivien yli, oletusarvoisesti jokainen rivi ensimmäiseen välilyöntiin tai sarkaimeen asti katsotaan tunnukseksi. Voit tehdä tämän vaihtoehdolla`delims`säätää.

FOR /F "tokens=* delims=" %%G IN (tiedosto.txt) DO ECHO %%G

7. Päivämäärä- ja aikamuuttujavaihtoehdot: Jos sinulla on`%DATE%`- tai`%TIME%`-Muuttujat yhdessä`FOR`- Loop, sinun tulee kiinnittää huomiota järjestelmän alueelliseen asetukseen, koska muoto voi vaihdella. 8. Iterointi UTF-8-koodattujen tiedostojen läpi:`FOR /F`komennolla voi olla vaikeuksia iteroida UTF-8-koodattuja tiedostoja. Tällaisissa tapauksissa voi olla parempi käyttää muita työkaluja, kuten`FINDSTR`käyttää. On tärkeää ottaa huomioon käyttötapauksesi erityisvaatimukset ja`FOR`- Säädä lenkki vastaavasti. Sinä pystyt`FOR /?`komentokehotteessa nähdäksesi täyden ohjeen ja kaikki käytettävissä olevat vaihtoehdot.


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 FOR - Suorittaa määritetyn komennon kullekin tiedostojoukon tiedostolle.

HTTP: ... console/fi/032.htm
0.171
18213

Desktop icons and shortcuts are not displayed in Windows 10/11?

LED TV/Fernseher, LCD-Fernseher, oder Plasma?

Screen recording Cursor hidden, play video is the mouse pointer visible?

Die Windows Tastenkombination um den Taskmanager schnell und direkt zu starten!

Problems when writing under Windows 10. 8.1, ...!

Help Windows 10/11 has no fax and scan function, where is it?



(0)