5 IF -lausunnot, joita käytetään älykkäämpiä Windows -komentosarjoja varten

5 IF -lausunnot, joita käytetään älykkäämpiä Windows -komentosarjoja varten

Jos teet paljon työtä Windowsin erätiedostoissa, IF -lausunto tarjoaa erittäin tehokkaan tavan lisätä joustavuutta skripteihisi.





Tässä artikkelissa opit viidestä päätyypistä IF -lausekkeita, joita voit käyttää Windows -erätiedostossa, kuinka oikea syntaksi näyttää ja realistinen esimerkki jokaisesta.





Jos olet valmis aloittamaan komentosarjojen kirjoittamisen, aloita!





1. Vertaa arvoja

Yksi perusasioista, jotka sinun on yleensä tehtävä eräskriptissä, on vertaa kahta arvoa ja toimi eri tavalla, riippuen vertailusta.

Oletetaan esimerkiksi, että halusit kirjoittaa eräskriptin, joka tarkistaa tietokoneen kiintolevyn koon päivittäin. Jos se on alle 3 Gt, haluat saada sähköpostiraportin, jossa sanotaan: 'Kiintolevytila ​​liian pieni.'



Jos haluat luoda komentosarjan, joka vertaa nykyistä vapaata kiintolevytilaa rajaasi, luo seuraava eräskripti ja tallenna se .bat -tiedostona.

@echo off
set DriveLimit=300000000
for /f 'usebackq delims== tokens=2' %%x in (`wmic logicaldisk where 'DeviceID='C:'' get FreeSpace /format:value`) do set FreeSpace=%%x
Echo FreeSpace='%FreeSpace%'
Echo Limit='%DriveLimit%'
If %FreeSpace% GTR %DriveLimit% (
Echo There is enough free space.
) else (
Echo Not enough free space.
)

WMIC on Windowsin Windowsin hallintainstrumenttien komponentti, joka sisältää valikoiman komentoja, joiden avulla voit noutaa tietokoneen tietoja. Näin tämän komentosarjan wmic -komento kutsuu loogisen levyn tilaa ja sijoittaa sen FreeSpace -muuttujaan. Nyt voit vain korvata rivin 'Kaiku Ei tarpeeksi vapaata tilaa' blat -sähköpostikomennolla, jotta voit lähettää hälytyksen.





Aseta lopuksi tämä komentosarja Windowsin ajoitetuksi erätyöksi, joka suoritetaan päivittäin.

Jos et ole koskaan käyttänyt blatia aiemmin, meillä on artikkeli, joka näyttää kuinka asettaa blat. Etkö tunne aikataulutettujen töiden asettamista? Olemme saaneet artikkelin Windowsin ajoitettujen tehtävien määrittämisestä.





2. Merkkijonojen vertailut

Toinen arvokas IF -vertailu, jonka voit tehdä erätyössä, on merkkijonoja vertaamalla .

Seuraavassa esimerkissä näet, kuinka voit tarkistaa Windows -versiosi erätyön avulla. Sitten voit verrata tätä odotettuun Windows -versioon.

Jotkin tämän komentosarjan käyttötarkoitukset soveltuvat IT -tarkastuksiin, kun sinun on suoritettava komentosarja nopeasti ja varmistettava, että nykyinen käyttöjärjestelmä on uusin tai onko se päivitettävä.

Tältä skripti näyttää.

@echo off
for /f 'tokens=4-5 delims=. ' %%i in ('ver') do set VERSION=%%i.%%j
if '%version%' == '6.0' echo Windows Vista.
if '%version%' == '6.1' echo Windows 7
if '%version%' == '6.2' echo Windows 8
if '%version%' == '6.3' echo Windows 8.1
if '%version%' == '10.0' echo Windows 10.

Tämän skriptin tulos näyttää tältä.

Mahdollisuus vertailla merkkijonoja erässä avaa koko luettelon mahdollisuuksista. Jos tutkit kaikkia tietoja, jotka saat WMIC -komennosta näet kuinka monta tietokoneesi tilastoa voit seurata. Voit varoittaa näistä ajoitetuilla erätöillä.

3. Tarkista, onko tiedostoa olemassa

Toinen hyödyllinen tilanne, jossa erätiedoston IF -käsky on tarkista datatiedoston olemassaolo .

Monta kertaa erätyö on vain valvontatyökalu, joka voidaan ajoittaa tarkistamaan uusia saapuvia datatiedostoja tietyssä hakemistossa.

Tämän jälkeen erätyö voi joko kopioida tiedoston toiseen paikkaan, jossa sitä voidaan käsitellä, tai aloittaa jonkin Windows -komentosarjan, joka käsittelee tiedoston Excel -tulostukseksi.

(Olemme kirjoittaneet aiemmin, miten käytä Windowsin komentosarjoja tietojen käsittelyyn Excel -tiedostoon ; hyviä taustatietoja.)

Erätiedoston käyttäminen sen tarkistamiseen, onko tiedostoa hakemistossa, on nopeaa ja helppoa. Tältä skripti näyttää.

@echo off
if exist c: empdatafile.txt (
%WINDIR%SysWOW64cmd.exe
cscript LoadToExcel.vbs
) else (
rem file doesn't exist
)

IF EXISTS -vertailusta on hyötyä moniin asioihin.

Jos esimerkiksi järjestelmä tai sovellus on käynnissä, joka luo uusia virhelokeja tiettyyn kansioon ongelman ilmetessä, voit suorittaa erätyön aina silloin tällöin seurataksesi, luodaanko uusia virralokeja, jotta voit lähettää hälytyksen.

4. Tarkista, epäonnistuiko komento

Erä tiedostojen komentosarjoissa, joita liian harvat IT -ihmiset tai ohjelmoijat käyttävät virheiden tarkistaminen .

Siellä liikkuu paljon erätöitä, jotka suorittavat kriittisiä IT -tehtäviä, kuten tärkeiden tiedostojen varmuuskopiointia tai tiedostojen kopiointia. Kun nämä erätyöt epäonnistuvat, järjestelmät epäonnistuvat ja ihmiset huomaavat.

On paljon älykkäämpää saada hälytys, kun erätyö on epäonnistunut ennen ihmiset alkavat huomata. Näin voit korjata ongelman ennakoivasti.

Voit tehdä tämän käyttämällä muuttujaa % errorlevel %, jonka useimmat sovellukset ja komennot palauttavat suorittamisen jälkeen.

Sinun tarvitsee vain seurata komentoasi IF % ERRORLEVEL %. Jos sovellus tai komento palautti nollan, kaikki on kunnossa. Jos ei, sinun on lähetettävä itsellesi sähköposti.

@echo off
xcopy C:
omefolder E:ackupfolder
IF %ERRORLEVEL% NEQ 0

Sinun ei tarvitse valita sähköpostireittiä. Voit aina kirjoittaa virhelokin, jonka voit tarkistaa joka aamu, tai käynnistää toisen sovelluksen tai komennon, joka yrittää kopioida vaihtoehtoisella komennolla. Mitä tahansa haluat tehdä, JOS % ERRORLEVEL % antaa sinun tehdä sen.

Jos haluat mieluummin käyttää IF -lauseketta tiettyjen virhekoodien tarkistamiseen, Windows tarjoaa melko laaja luettelo virhekoodeista .

5. Tarkista puuttuvat parametrit

Viimeinen hyödyllinen IF -lause ei ole tietty komento, vaan sen sijaan tarkistaa, että komentosarja ovat saaneet asianmukaiset syöttöparametrit .

Oletetaan esimerkiksi, että olet kirjoittanut komentosarjan, joka suorittaa xcopy -komennon syöttökansiosta yhteiseen verkkokansioon, jota ryhmä käyttää. Käyttäjän tarvitsee vain seurata komentosarjan nimeä parametreilla, jotka määrittävät henkilökohtaisen tiedostopolun.

On selvää, ettet voi suorittaa komentosarjaa oikein ilman määritettyä polkua, joten voit laittaa IF -käskyn komentosarjasi alkuun varmistaaksesi, että molemmat parametrit on syötetty.

Näin se näyttää.

@echo off
IF [%1]==[] (
GOTO sub_message
) ELSE (
xcopy %1 E:ackupfolder
)
GOTO eof
:sub_message
echo You forgot to specify your path.
:eof

Jos et ole koskaan käyttänyt parametreja eräkomentosarjoilla, prosenttiluku ja sen jälkeen numero edustavat parametrimuuttujaa. %1 on ensimmäinen parametri, %2 on toinen jne.

Erätyöt voivat olla tehokkaita

Monet ihmiset alkavat käyttää erätöitä yksinkertaisiin tehtäviin, jotka on suoritettava peräkkäin. IF -lausekkeiden avulla voit lisätä komentosarjoihisi paljon enemmän älykkyyttä.

Tietenkin, jos haluat todella parantaa sitä, voit harkita VBA: n tarkastamista oppaamme avulla ensimmäisen VBA -sovelluksesi luominen tai ehkä jopa oppia Python -ohjelmointia.

Voit usein käyttää tällaisia ​​kehittyneempiä ohjelmointikieliä tai oppia käyttämään PowerShelliä monien samojen tehtävien suorittamiseen, joihin tällä hetkellä käytät erätöitä.

Jaa Jaa Tweet Sähköposti Vapauta levytilaa poistamalla nämä Windowsin tiedostot ja kansiot

Tarvitsetko tyhjentää levytilaa Windows -tietokoneellasi? Tässä on Windows -tiedostot ja kansiot, jotka voidaan poistaa turvallisesti levytilan vapauttamiseksi.

Lue seuraava
Liittyvät aiheet
  • Windows
  • Ohjelmointi
  • Windows
Kirjailijasta Ryan Dube(942 artikkelia julkaistu)

Ryanilla on BSc -tutkinto sähkötekniikasta. Hän on työskennellyt 13 vuotta automaatiotekniikassa, 5 vuotta IT -alalla ja on nyt sovellusinsinööri. MakeUseOfin entinen toimituspäällikkö, hän on puhunut kansallisissa datan visualisointia käsittelevissä konferensseissa ja hän on esiintynyt kansallisessa televisiossa ja radiossa.

kuinka voin tallentaa instagram -valokuvani
Lisää Ryan Dubelta

tilaa uutiskirjeemme

Liity uutiskirjeeseemme saadaksesi teknisiä vinkkejä, arvosteluja, ilmaisia ​​e -kirjoja ja ainutlaatuisia tarjouksia!

Klikkaa tästä tilataksesi