Kirjautuminen

Haku

Tehtävät

Keskustelu: Yleinen keskustelu: Windows komentorivi

Triton [27.11.2008 17:12:52]

#

Miten komentoriviltä saa esiin kaikki käytettävät komennot syntaksineen, vai saako mitenkään? HELP-kommennolla ei saa kun tärkeinten komentojen nimet... Ja jos ei komentoriviltä onnistu, niin löytyykö netistä?

TsaTsaTsaa [27.11.2008 17:23:35]

#

Tarkoitatko komennoilla komentoja tyyliin "cd.." vai ohjelmia esim. "ipconfig"?

EDIT: Hakukoneiden käytön perusteet 3op

Triton [27.11.2008 17:24:32]

#

Komentoja, niin kuin cd... Onko muuten olemassa jotakin toistokomentoa?

TsaTsaTsaa [27.11.2008 17:26:38]

#

EDITissä lista syntakseineen.

Grez [27.11.2008 17:50:39]

#

Triton kirjoitti:

Miten komentoriviltä saa esiin kaikki käytettävät komennot syntaksineen, vai saako mitenkään? HELP-kommennolla ei saa kun tärkeinten komentojen nimet... Ja jos ei komentoriviltä onnistu, niin löytyykö netistä?

Olisiko esimerkkiä sellaisesta komennosta, jota ei löydy tuolta helpistä? Ainakin itsellä sieltä löytyy mm FOR, jota tuossa jälkimmäisessä postauksessa kaipailit.

Esimerkiksi tuossa Tsatsatsaa hakukonelöydöksessä on suurin osa listalla olevasta tavarasta ohjelmia (ei siis komentotulkin komentoja), joista osaa ei edes windowsissa ole vakiona, vaan vaativat esim. resource kitin asennuksen.

Juhko [18.12.2008 18:35:35]

#

Triton kirjoitti:

Onko muuten olemassa jotakin toistokomentoa?

Siis jos puhutaan .BAT-komentojonotiedostoista, on mahdollista:

@echo off
set muuttuja=N
:loopStart

  echo Toistetaan...

  set muuttuja=%muuttuja%A
  if "%muuttuja%"=="NAAAAA" goto loopEnd
  goto loopStart

:loopEnd

Ohjelma tulostaa merkkijonon "Toistetaan..." viisi kertaa.

Jos komennot kirjoitetaan suoraan komentoriviltä, niin FOR taitaa olla ainoa, eikä kovin monikäyttöinen.

Grez [18.12.2008 19:16:09]

#

Juhko kirjoitti:

FOR taitaa olla ainoa, eikä kovin monikäyttöinen.

Kyllä tämä minusta näyttää aika monikäyttöiseltä

G:\>for /?
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ä.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta