Come configurare smartphone e PC. Portale informativo

Tutto sui file bat. Creazione di file BAT

Le persone che hanno familiarità con il termine file batch sanno che i file BAT possono semplificare notevolmente la vita e risparmiare tempo se sai come scriverli e usarli correttamente. In questo articolo parlerò di come creare file BAT e ti presenterò gli errori comuni che di solito si verificano durante la loro scrittura.

Creare un file BAT è molto semplice. Basta aprire Blocco note e salvare un foglio bianco con estensione .bat, selezionando l'opzione Salva con nome... e scrivendo nel campo Nome file qualcosa che finisca in .bat, ad esempio test.bat.
Specifica il tipo di file come nello screenshot qui sotto - Tutti i file. Salva e ricevi un file BAT.

Puoi modificare il file BAT nel Blocco note o in qualsiasi altro editor di testo incentrato sull'utilizzo del codice.

Passiamo ora direttamente alle informazioni pratiche. Molte persone su Internet cercano una risposta alla domanda: come gestire gli spazi nei file BAT? . Nei percorsi di cartelle e file eseguibili, la presenza di uno spazio provoca un errore. La risposta più comune è: racchiudere il percorso tra virgolette. E questa risposta non è corretta. È vero, alcuni avranno la schiuma alla bocca e affermeranno che funziona. Quindi sono emersi due perché: perché non è vero e perché alcuni lo saranno.

Su Windows (così come su UNIX), i programmi installati sul sistema vengono registrati di conseguenza dal sistema. Pertanto, alcuni dei programmi installati possono essere avviati con un semplice comando da un file BAT o dall'applet Esegui del pannello Start. Uno di questi programmi è Firefox:

avviare firefox

Se dopo questo comando scrivi il percorso del file eseguibile, accade quanto segue: il browser Firefox si avvia e tenta di elaborare la richiesta, ovvero il file di cui è specificato il percorso. Cioè, se specifichi quanto segue:

avviare firefox C:\Programmi\Mozilla Firefox\firefox.exe

Il browser si aprirà, indipendentemente da ciò che dice dopo l'avvio di Firefox. Ecco perché alcuni compagni assicurano che tutto funziona alla grande. Tuttavia, se prendi un programma portatile, la situazione sarà completamente diversa. Prendiamo come esempio il client ftp Filezilla. Poiché il sistema non è a conoscenza del programma, la riga sopra

avvia filezilla

non funzionerà. Per eseguire un programma sconosciuto al sistema, è necessario specificarne il percorso:

avviare D:\FileZilla\FileZilla.exe

Nomi lunghi nei file bat

Parliamo ora di percorsi e spazi. Il primo modo per evitare questo problema è utilizzare un nome breve.

avviare C:\Programmi\Sound Club\scw.exe

Nell'esempio ci sono due nomi con spazi. Sostituiamoli con quelli corti. Le regole per creare nomi brevi sono le seguenti: il nome breve utilizza i primi sei caratteri del nome, spazi esclusi, dopo il nome il numero di serie della cartella è indicato tramite il simbolo ~ . Poiché le mie cartelle Programmi e Sound Club sono singolari, sarà simile a questa:

Programmi - Progra~1 Sound Club - SoundC~1 avvia C:\Progra~1 \SoundC~1 \scw.exe

Se ci sono due cartelle vicine, ad esempio Sound Club e Sound Clown, seguendo le regole, nell'esempio sopra dovrai specificare SoundC~2, poiché in questo caso Sound Club sarà il secondo nome (i nomi vengono contati in ordine alfabetico ordine).

Ma questo metodo è scomodo perché devi indicare i numeri di serie. La situazione con i file di programma è più o meno normale. Poche persone troveranno due cartelle simili nell'unità di sistema. Ma se decidi di installare più prodotti Mozilla sul tuo computer. Ti ritroverai con diverse cartelle, ad esempio:

Mozilla Firefox Mozilla Thunderbird Mozilla Sunbird

I nomi brevi per loro saranno

Mozill~1 Mozill~2 Mozill~3

Ora immagina di aver scritto un file BAT menzionando questi programmi. Se disinstalli Firefox, le voci rimanenti non funzioneranno più e se disinstalli Thunderbird, la voce per Sunbird non funzionerà più. Insomma, il metodo dei nomi brevi non è la nostra strada.

Spazi e virgolette nei file bat

Le virgolette funzionano davvero, ma non nel modo in cui di solito vengono consigliate. Solitamente si consiglia quanto segue:

avviare "C:\Programmi\Sound Club\scw.exe"

Quindi il comando non funzionerà, perché se guardi la guida relativa (start /? ), nella guida vedrai quanto segue:

START ["intestazione"] [comando/programma] [parametri]

Come puoi vedere, il primo parametro è il titolo della finestra ed è tra virgolette. Questo parametro è facoltativo, ma è comunque consigliabile specificarlo () per evitare errori durante l'esecuzione del comando. Non è necessario scrivere nulla tra virgolette. Risulterà così:

avviare "" "C:\Programmi\Sound Club\scw.exe"

Funzionerà anche l'opzione di racchiudere tutti i nomi con spazi separatamente tra virgolette:

avviare C:\"Programmi"\"Sound Club"\scw.exe

Tuttavia, in alcuni casi, nessuna delle soluzioni precedenti funziona. In questi casi, posso consigliare di utilizzare il comando cd. Vai alla partizione di sistema, quindi usa cd nella cartella Programmi ed esegui il programma (avvia):

%SystemDrive% cd \Programmi\Sound Club\ avvia scw.exe

Penso che questo metodo funzionerà ovunque. Ora un altro paio di punti importanti. Diciamo che hai creato un file batch che avvia tre programmi e devi escludere temporaneamente l'avvio di uno dei tre. Questo può essere fatto cancellando la riga o commentandola. Il primo metodo è vandalico e il secondo, vedi sotto.

avvia firefox avvia jetaudio rem avvia il deframmentatore

In questo caso, l'avvio del programma Defraggler.exe installato sul sistema è disabilitato. Righe di commento specificando il comando rem all'inizio della riga. Tutti i file BAT vengono eseguiti in una finestra della console. Per farlo scomparire una volta completati i comandi, non dimenticare di scrivere alla fine il comando exit.

avvia firefox avvia jetaudio rem avvia deframmentatore esci

Avvio di applicazioni da un file bat

Nella prima parte dell'articolo ho parlato in termini generali dei file BAT. Ora è diventato chiaro di cosa si tratta e con cosa si mangia. Nella seconda parte parleremo di cose più specifiche. Ad esempio, come utilizzare un file BAT per avviare più applicazioni con determinate impostazioni o installare automaticamente un programma per non perdere tempo con risposte come Accetti i termini del contratto di licenza? e non premere pulsanti inutili.

Sopra sono stati descritti diversi modi per avviare applicazioni utilizzando un file BAT. Il primo è un breve comando per avviare il programma installato sul sistema.

avviare firefox

Questo non sempre funziona. Pertanto, questa tecnica può essere pienamente applicata ad un sistema specifico, ma non è adatta come soluzione universale. Se il tuo obiettivo è far funzionare il file BAT ovunque e sempre, devi utilizzare percorsi completi:

avviare C:\"Programmi"\"Mozilla Firefox"\firefox.exe

Ho anche notato che il file BAT deve contenere un comando da completare:

avvia C:\"Programmi"\"Mozilla Firefox"\firefox.exe esci

Esecuzione di programmi in file bat con parametri (chiavi)

Non solo puoi eseguire il programma, ma anche dargli comandi aggiuntivi all'avvio. Ad esempio, comando per eseguire minimizzato:

start /min D:\FileZilla\FileZilla.exe uscita

Comandare in questo caso significa indicare la chiave. Il tasto è indicato con una barra dopo il comando principale (comando/tasto). Il comando principale in questo caso è start . È vero, il tasto min funziona solo nella metà dei casi, perché si riferisce specificamente al comando di avvio e non ai programmi avviati da questo comando.

In generale, ci sono molte chiavi e i set di chiavi per i diversi programmi possono variare in modo significativo. Ce ne sono, tuttavia, alcuni comuni. Ad esempio, il tasto della guida (/? o /help). Per vedere come funziona questa chiave, facciamo un esempio pratico. Apri la console (clicca + R , inserisci cmd , quindi Invio ) e digita quanto segue nella console:

inizio /?

La console visualizzerà un elenco di chiavi valide con commenti per il comando di avvio.

Prestare attenzione all'interruttore /wait. In alcuni casi, è semplicemente insostituibile. Ad esempio, hai deciso di utilizzare un file BAT per decomprimere l'archivio con il programma ed eseguire proprio questo programma. Il file batch conterrà due comandi: per decomprimere e per avviare. Poiché i comandi verranno eseguiti quasi contemporaneamente durante l'esecuzione del file BAT, l'archivio non avrà il tempo di decomprimersi e non ci sarà nulla da eseguire. Pertanto si verificherà un errore. In questo caso, la chiave verrà in soccorso /Aspettare:

Pertanto, il sistema eseguirà prima la prima azione, attenderà il suo completamento e solo successivamente procederà alla seconda. Se è necessario attendere un periodo di tempo specifico, è più semplice utilizzare un'utilità della console. Nel posto giusto nel file BAT, scrivi il seguente comando (il numero è il numero di secondi):

avviare Sleep.exe 15

Puoi fare molto con le chiavi. È possibile installare applicazioni. Per fare ciò vengono utilizzati diversi tasti a seconda del tipo di installer utilizzato per installare il programma sul computer:

/S /s /q /silent e molti altri

In alcuni casi può essere molto conveniente. Avast antivirus dispone di un'opzione di installazione silenziosa nella versione aziendale. La versione gratuita (home) presumibilmente non ha un'installazione silenziosa. Tuttavia, se sai come funziona il programma di installazione InstallShield, capirai che si tratta di una fandonia, poiché questo programma di installazione stesso supporta l'opzione di installazione silenziosa /S. Ciò significa che tutti i prodotti realizzati sulla base di esso fanno lo stesso. E Avast non fa eccezione. Basta creare un file con il contenuto nella cartella con BAT di Avast

avvia avast.exe /S esci

lo avvii e il programma viene installato sul tuo computer quasi senza la tua partecipazione. In questo modo puoi scrivere un intero elenco di programmi per l'installazione silenziosa e risparmiare tempo, ad esempio, sulla reinstallazione del sistema. Nell'articolo è possibile avere informazioni più dettagliate sulle chiavi.

Esistono altre opzioni per la gestione dei programmi che utilizzano i file BAT. Puoi avviare un programma dicendogli di aprire un file all'avvio. Utilizzo questo metodo durante lo sviluppo di siti Web. È molto comodo quando l'intero toolkit apre i documenti e le cartelle necessari con il clic di un solo pulsante:

connessione rem al server ftp start /min D:\FileZilla\FileZilla.exe "ftp://login:password@server" rem aprendo index.php in Firefox avviare C:\"programmi"\"mozilla firefox"\firefox.exe "http://localhost/site_folder/index.php" rem aprendo start.html in un editor di testo start /min C:\"Programmi"\text_editor.exe "E:\server\cartella_sito\index.html" rem aprendo la cartella con i file del sito start /min E:\server\cartella_con_sito uscita dalla console rem Uscita

Noto che tutte le tecniche sopra descritte possono essere utilizzate in varie combinazioni e combinazioni.

avvia /min /attendi programma.exe /m /S avvia C:\Directory\programma2.exe "C:\Files\file.odt" esci

Ma è importante ricordare: tutto ciò che riguarda l'esecuzione del programma avviato nel file batch viene scritto con esso sulla stessa riga.

avviare C:\"programmi"\"mozilla firefox"\firefox.exe "http://localhost/site_folder/index.php"

Come epilogo, offrirò per la tua recensione il convertitore di file BAT in applicazioni nel formato .exe - . Un file BAT non è sempre esteticamente gradevole, ma con l'aiuto di un convertitore puoi comprimere un file batch in un file exe, decorandolo con qualsiasi icona di tua scelta.

Mi sono imbattuto in un altro convertitore BAT in EXE, puoi considerarlo un'alternativa al programma precedente: Advanced Bat To Exe Converter

Un file BAT è un codice di programma salvato con l'estensione .bat o .CMD come preferisci.

Le possibilità dei file bat sono quasi illimitate, ma di norma i programmatori utilizzano queste estensioni per questioni semplici e di routine.

Utilizzando un file bat, puoi aprire file sul tuo computer, copiare, spostare ed eliminare file con o senza maschera, eseguire script da programmi di terze parti e aprire un browser con l'URL desiderato. Utilizzo spesso tali file per aprire cartelle ftp su un server remoto.

Come creare un file bat

Creare file baht non potrebbe essere più semplice. Apri un normale editor di testo e salvalo con l'estensione .bat.

Puoi anche utilizzare il programma avanzato “notepad++”

Ecco un codice di esempio per scrivere un file bat:

explorer.exe "C:\Programmi"

Questo codice aprirà la cartella "programmi" sull'unità C:\

La scrittura di file .bat richiede un'attenzione particolare da parte dell'utente del computer. Poiché i file batch possono eliminare intere directory, formattare una partizione del computer

Ecco un esempio di codice: formattazione della partizione F:\

@eco disattivato
formato F /q /autotest

Esempio di codice bat: crea 100 cartelle:

@eco disattivato
for /l %%i in (1,1,100) do mkdir "dir %%i"

Puoi creare un bat om e (Virus) uno script di programma dannoso: ad esempio, il codice seguente eliminerà file exe importanti.

@eco disattivato
fare del "c:\windows\exploer.exe"
fare del "c:\windows\mspoint.exe"
fare del "c:\windows\notepad.exe"

Comando per creare una cartella con un file bat

Il codice seguente creerà 3 cartelle nella posizione in cui si trova il file stesso. Inoltre, la prima cartella creata conterrà un'altra sottocartella. Poiché i nomi delle cartelle sono scritti in cirillico, aggiungiamo la riga di codifica chcp 1251. Tale file non può essere scritto con un normale blocco note, poiché non è possibile modificare la codifica delle lettere russe. Usa il blocco note++.

chcp 1251
MD .\cartella_articolo\base\
MD .\directory\
MD .\archiviazione\

Scarica il file Bat

- il file crea 3 cartelle

Esempio di codice bat su come aprire una cartella

explorer.exe "C:\Utenti\Amministratore\Desktop\foto\"

Come aprire il formato bat?

Proprio come quando si creano file .bat in un editor di testo, è possibile aprirli con lo stesso blocco note, wordpad o notepad++.

L'unica cosa da ricordare quando si apre un file bat è che quando si fa doppio clic sul file, verrà avviato il programma. Cioè, per aprirlo per la modifica, sposta il cursore sul file da modificare e fai clic con il pulsante destro del mouse per aprire il menu contestuale dove seleziona apri con notepad++

Inoltre, se clicchi su apri nel menu contestuale, avvierai anche l'esecuzione del file bat.

C'è un altro modo: apri l'editor di testo Blocco note e trascina al suo interno il file modificato.

Importante: Gli utenti spesso confondono il concetto di file con l'estensione .bat e il client di posta "The Bat" per l'invio e la ricezione di documenti di posta.

Operatori di file Bat di base

@ Tutti i comandi eseguiti da bat vengono visualizzati sullo schermo, per rimuovere cose non necessarie, davanti al comando viene posizionato un "cane". Spesso utilizzato con @echo disattivato.
impostato Imposta le variabili. Ad esempio, setper=c:\windows qui per assegna il percorso. È possibile scrivere un valore complicato in una variabile e specificarlo nello script, il che rende il codice più compatto. Se il suo contenuto cambia, non dovrai modificare i valori ovunque venga fornita questa variabile.
:: Uno dei due metodi per commentare un file bat senza visualizzare questa riga sullo schermo.
:ETICHETTA Quando aggiungi i due punti a una parola, viene creata un'etichetta che ti consente di passare a diverse sezioni del corpo del file. Un'etichetta può avere un nome diverso, LABEL ne è un esempio.
CHIAMATA Bat è un comando che richiama un file batch all'interno di un altro. Tutti i parametri descritti in uno dei file possono essere passati l'uno all'altro.
SCELTA Seleziona comando.
CLS Cancella il contenuto della shell visualizzato sopra CLS.
ECO Visualizza un messaggio sullo schermo. Ad esempio, "ECHO Come stai?" verrà visualizzato "Come stai!" Se non usi @ECHO off all'inizio del file batch, vedrai il percorso del file bat e due messaggi, il che non è necessario. Puoi creare una riga vuota digitando ECHO. con un punto alla fine.
USCITA Termina lo script batch corrente.
VAI ALL'ETICHETTA Utilizzato per passare a un'etichetta specifica, in questo caso LABEL, ed eseguire lo script dopo di essa.
SE Come nei linguaggi di programmazione bat, il comando if rappresenta il soddisfacimento di una condizione, a seconda della quale lo script seguirà un percorso o un altro. Fare riferimento alla guida per la sintassi.
per Un ciclo utilizzato per organizzare le stesse azioni più e più volte.
PAUSA Se hai bisogno di vedere l'output di uno script e questo viene eseguito e la finestra si chiude rapidamente, utilizza PAUSE. Ti consentirà di visualizzare il risultato e completare lo script premendo qualsiasi pulsante.
R.E.M. Secondo modo di commentare. Diversamente da:: viene stampato sullo schermo se non è presente il costrutto @ECHO off.
SPOSTARE Modifica la posizione dei parametri batch nel file bat.
INIZIO Avvia programmi, finestre, ecc. Ha molti attributi.

Per una descrizione più dettagliata del codice del file bat, leggere la Guida di Windows

Molti redattori tecnici hanno la necessità di automatizzare di tanto in tanto l'elaborazione dei file. A volte parliamo dell'elaborazione una tantum di un gran numero di file, a volte parliamo dell'esecuzione sistematica delle stesse azioni, ad esempio quando si utilizzano le tecnologie DocBook o DITA). L'elaborazione di ogni file con un comando manuale separato non solo richiede tempo, ma porta anche ad errori difficili da identificare che derivano dalla naturale disattenzione dell'operatore.

Nel sistema operativo MS-DOS e in tutti i sistemi operativi della famiglia Microsoft Windows i mezzi più semplici per automatizzare l'elaborazione dei file (e delle directory) sono i cosiddetti file batch. Diciamo subito che i file batch non sono l'unico mezzo per automatizzare il lavoro dell'utente, anche tra quelli integrati. Nei sistemi operativi della famiglia Microsoft Windows, a partire dalla versione 98, è presente anche un Windows Script(ing) Host. Inoltre, nessuno ci vieta di utilizzare per questi scopi un linguaggio interpretato, ad esempio Perl, Python o Ruby. Tuttavia, gli strumenti elencati, sebbene potenti, richiedono competenze di programmazione, ad es. comporre e, soprattutto, eseguire il debug dei programmi, almeno a un buon livello amatoriale. L'utilizzo dei file batch è accessibile a chiunque senza una formazione specifica; sono sufficienti attenzione e buon senso.

Nota importante. Un libro di consultazione completo o anche un libro di testo ben scritto sui comandi MS-DOS e sullo sviluppo di file batch dovrebbe descrivere le numerose sfumature associate all'uso di vari parametri, le peculiarità del funzionamento dei file batch nelle diverse versioni di Microsoft Finestre, ecc. e così via. Questo articolo non ha la pretesa di essere completo, in particolare:

  • non descriveremo modi diversi per ottenere lo stesso risultato;
  • Non descriveremo tutte le possibilità e gli usi dei comandi citati.

Ora il nostro compito è aiutare coloro che non hanno familiarità con questo strumento, o quasi, a iniziare a padroneggiare i file batch. È quindi possibile leggere tutti i dettagli nella documentazione aziendale o nei libri di consultazione.

Processore di comandi

Molti sistemi operativi, compresi quelli sviluppati da Microsoft, includono un processore di comandi. Questo è il nome di un programma che avvia l'esecuzione di varie azioni in risposta ai comandi immessi dall'utente dalla tastiera. Fondamentalmente, queste azioni consistono nell'avviare i programmi necessari con determinati parametri. Ma non solo; Vedremo più avanti che alcuni comandi vengono eseguiti direttamente dal processore dei comandi. Fondamentalmente, questi sono i comandi che servono a controllare il contesto e la sequenza di esecuzione dei comandi. Tuttavia, non rifletteremo troppo profondamente sulla natura dei comandi, almeno a meno che non sia necessario. Ancora più importante, qualsiasi programma che sia tecnicamente possibile eseguire dalla riga di comando viene considerato dal processore dei comandi come un comando. Non fa differenza tra i comandi nativi originariamente integrati nel sistema operativo e i programmi installati su di esso.

Per avviare il processore dei comandi:

  1. Fare clic sul pulsante Inizio. Sullo schermo verrà visualizzato il menu principale.
  2. Seleziona Esegui dal menu principale. Sullo schermo verrà visualizzata una finestra di dialogo Avvio del programma.
  3. Nel campo Apri, inserisci la stringa cmq.
  4. Fare clic sul pulsante OK. Sullo schermo apparirà una finestra del processore dei comandi.

Riga di comando e comandi

La finestra del processore dei comandi nella sua forma originale sembra cupa e lavorarci non è molto conveniente per la maggior parte delle persone. È molto più semplice utilizzare i file manager in stile Norton Commander. Forniscono sia gli strumenti per navigare rapidamente nel file system sia i tempi per l'immissione dei comandi.

Per immettere il comando:

  1. Digitare il testo del comando nella riga di comando.
  2. Premere il tasto accedere.

I comandi del processore dei comandi e del sistema operativo sono descritti nella documentazione operativa di quest'ultimo. Questa documentazione è parzialmente contenuta nel sistema operativo stesso. Per accedervi utilizzare il comando aiuto. Questo comando visualizza un elenco di comandi disponibili. Per ottenere una descrizione di un comando specifico, utilizzare il comando come parametro aiuto il suo nome dovrebbe essere indicato. La riga di comando mostrata nell'elenco seguente visualizza una descrizione del comando per.

Aiuto per

Se hai provato a inserire il comando aiuto, probabilmente hai notato che il risultato del suo lavoro (il cosiddetto output) non si adatta a uno schermo. Lo stesso problema si verifica con il testo di descrizione del comando per. La buona notizia è che l'output può essere reindirizzato su un file. La riga di comando mostrata nel seguente elenco genera il file comandi.txt, contenente un elenco di tutti i comandi MS-DOS.

Aiuto > comandi.txt

Per generare un file con la descrizione del comando per, devi dare il seguente comando (puoi dare qualsiasi nome al file di output).

Aiuto per > for.txt

In totale, nei moderni sistemi operativi Microsoft ci sono poco meno di 80 comandi ed è impossibile descriverli in un articolo. Qui possiamo solo citare alcuni comandi utili per automatizzare l'elaborazione dei file e mostrare come utilizzarli. Questi comandi verranno utilizzati in ulteriori esempi. Puoi sempre chiarire i dettagli tramite comando aiuto o nella rubrica.

copia— copiare uno o più file;

del— eliminare uno o più file;

mossa— spostare uno o più file o directory;

rinominare(abbreviato ren) - rinominare uno o più file o directory;

xcopia— copiare l'albero delle sottodirectory;

mkdir(abbreviato md) — creazione di una directory;

rmdir(abbreviato rd) — eliminazione di una directory.

Una delle regole generali della sintassi dei comandi MS-DOS prevede che quando si specificano i parametri, venga specificata prima l'origine e poi il risultato. Ad esempio, se vogliamo spostare un file birra.txt dal catalogo scatola al catalogo tavolo, dobbiamo inserire il comando indicato nel seguente elenco.

Sposta la tabella box\beer.txt

Prima cosa spostare, poi dove spostare.

Se vogliamo rinominare il file lena.txt archiviare natasha.txt, allora il comando dovrebbe essere scritto come mostrato di seguito.

Ren lena.txt natasha.txt

Innanzitutto, cosa rinominare, quindi cosa rinominare.

Directory corrente. Percorsi assoluti e relativi

Quando si lavora con i comandi dei file, il concetto di directory corrente diventa estremamente importante. Il punto è che quando specifichiamo un file come parametro di comando, usiamo sempre uno dei due modi possibili per puntarlo: un percorso assoluto o un percorso relativo. Nel percorso completo specifichiamo tutto, ad esempio iniziando con l'unità (o il nome di rete del computer). d:\misha\box\birra.txt. Qualunque sia la directory corrente quando viene immesso il comando, il percorso completo corrisponderà allo stesso file. Per un percorso relativo, la directory corrente funge da punto di partenza. Il caso più semplice di percorso relativo è il nome di un file. Nel contesto dell'esecuzione del comando, significa un file con quel nome situato nella directory corrente.

Per registrare un percorso relativo alla directory corrente, esiste una notazione condizionale . (punto). Per registrare il percorso relativo alla directory che contiene la directory corrente, esiste una notazione condizionale .. (due punti). Il comando mostrato nell'elenco seguente copia tutti i file dalla directory corrente alla directory vicino, situato accanto ad esso.

Copia *.* .\vicino

File batch

Finora, nel fornire esempi, davamo per scontato di inserire ogni volta i comandi manualmente. Quando si elaborano un gran numero di file o si eseguono sistematicamente gli stessi comandi, questo diventa complicato. Pertanto, il processore dei comandi offre la possibilità di eseguire file di comandi. Un file batch è un file di testo in cui vengono digitati i comandi (o almeno un comando). Un file batch di esempio è mostrato nell'elenco seguente. Prova a indovinare cosa fa questo file batch.

Aiuto copia > copy.help aiuto sposta > move.help md msdos-aiuto sposta *.help msdos-aiuto

Se lo scopo di questo file rimane per te un mistero, prova a crearlo ed eseguirlo effettivamente. È consuetudine assegnare ai file di comando l'estensione pipistrello. Ecco come i file di questo tipo vengono riconosciuti dal processore dei comandi. Questo file può essere chiamato, ad esempio, make-help.bat.

Per eseguire il file batch:

  1. Inserisci il suo nome come comando. Successivamente, il file batch verrà eseguito.

In un file batch, ogni comando occupa una riga. Più precisamente, esiste un modo per posizionare un comando su più righe consecutive; per fare ciò, immediatamente prima di ogni interruzione di riga è necessario inserire il simbolo “cap”. ^ . (Ogni capo deve essere l'ultimo carattere della riga; non devono esserci spazi o tabulazioni dopo di esso.) Un esempio di tale comando è mostrato nel seguente elenco.

Se esiste disser.txt ^ copia disser.txt ^ d:\science\papers\drafts\sources

Ma per semplicità, per non fare ogni volta riserve, assumeremo che in un certo senso si tratti di una lunga linea “logica”.

Quando viene eseguito un file batch, il processore dei comandi lo scansiona dall'alto verso il basso, dalla prima all'ultima riga ed esegue i comandi nell'ordine in cui li incontra. Li esegue in generale come se li avessimo inseriti manualmente. In generale, perché alcuni comandi si comportano in modo leggermente diverso se immessi manualmente e se eseguiti da un file batch.

Guardando al futuro, diciamo che, se necessario, la sequenza di esecuzione dei comandi può essere modificata utilizzando i comandi di controllo (cosa può causare tale necessità è una domanda a parte).

Non confondere la directory corrente con la directory in cui si trova il file batch da avviare. Supponiamo che la directory corrente sia lavoro, contiene una directory utensili e la directory degli strumenti memorizza i file batch. Ne avvii uno con il comando strumenti\collect-images.bat. Quindi, “dal punto di vista” di questo file di comando, la directory corrente sarà ancora lavoro, ma no utensili.

Commentare il file batch e il suo output. comandi echo e rem

Un file batch è essenzialmente un programma scritto nel linguaggio del processore dei comandi del sistema operativo. Il testo del programma dovrebbe essere fornito di commenti in modo che, quando ci ritornerai qualche tempo dopo, non dovrai ricordare faticosamente perché è necessario questo programma e come funziona.

Il sistema di comandi MS-DOS fornisce un comando per la creazione di commenti: rem. Questo è un comando fittizio che non implica l'esecuzione di alcuna azione, ma ti consente di scrivere un testo arbitrario sulla riga dopo il tuo nome. Inoltre, il processore dei comandi non lo percepisce come un errore di sintassi. Un esempio di formattazione di un file di comandi con commenti è mostrato nel seguente elenco.

Rem ************************************************* **** rem Generazione di file della guida utilizzando i comandi copia e sposta rem *********************************** * ***************** rem Crea file della guida help copy > copy.help help move > move.help rem Crea una directory per archiviare i file della guida md msdos-help rem Sposta i file della guida nella directory preparata spostare *.help msdos-help

Notare le righe vuote che suddividono il file batch in "paragrafi". Questo semplice trucco ti consente di rendere il tuo file batch più leggibile.

Quando si esegue il file batch di cui sopra, tutti i comandi verranno visualizzati sullo schermo mentre vengono eseguiti, il che non è sempre conveniente. L'emissione del comando può essere disabilitata utilizzando il comando @eco disattivato. Simbolo "Cane" davanti al comando eco Ciò significa che questo comando stesso deve essere eseguito in modalità "silenziosa". Potremmo anche non usare la riga di comando eco disattivato, ma posiziona un “cane” davanti a ciascun comando.

In molti casi, si desidera che un file batch visualizzi determinati messaggi sullo schermo (o in un file). In alcuni casi, questi possono essere messaggi di errore, in altri messaggi informativi che spiegano all'utente del file batch cosa sta succedendo nel momento in cui creiamo qualche altro file utile con il file batch. Lo stesso comando echo viene utilizzato per visualizzare i messaggi. Gli viene passato come parametro il testo del messaggio da visualizzare. L'elenco del file batch migliorato è riportato di seguito.

@echo off rem ********************************************** ******** ******* rem Generazione di file della guida utilizzando i comandi copia e sposta rem ************************ ********* ******************** @echo Generazione di file della guida. Solo un secondo... rem Crea i file della guida help copy > copy.help help move > move.help rem Crea una directory per archiviare i file della guida md msdos-help rem Sposta i file della guida nella directory preparata move *.help msdos -aiuto echo Fatto!

Passaggio di parametri a un file di comandi

Supponiamo di voler creare un file batch che generi prima la guida che descrive un comando specificato dall'utente e quindi lo carica nel Blocco note per la visualizzazione. Il trucco sta nel dirgli in qualche modo la prossima volta che eseguiremo il file batch a quale comando siamo interessati questa volta.

Per risolvere questo problema, viene fornito un meccanismo di elaborazione dei parametri. Funziona in modo abbastanza semplice. Se, durante l'esecuzione di un file batch, l'utente ha specificato diversi parametri, nel testo del file batch indichiamo il primo di essi con la voce %1 , seconda voce %2 , terza voce %3 eccetera. Usiamo queste notazioni nel testo del file di comando più o meno allo stesso modo in cui usiamo i pronomi nel linguaggio naturale.

Il testo del file di comando che risolve il problema è mostrato nel seguente elenco. Presta attenzione al comando aiuto. Il primo parametro del file di comando gli viene passato come parametro.

@echo off rem Creiamo un file con la descrizione del comando, rem il cui nome è passato dal parametro help %1 > help.tmp rem Carichiamo il file di descrizione nell'editor Notepad notepad help.tmp

Supponiamo di dare il nome a questo file batch show-help.bat. Per caricare la descrizione di un comando in un blocco note, ad esempio, dir, dobbiamo inserire il comando come segue.

Show-help.bat dir

Il seguente file di comando crea una directory con il nome specificato nel primo parametro e scrive in essa un file contenente il testo che descrive il comando specificato nel secondo parametro.

Rem Un esempio di file di comando con due parametri rem Crea una directory con il nome specificato dal primo parametro md %1 rem Crea al suo interno un file con la descrizione del comando rem specificato dal secondo parametro help %2 > %1\ %2.aiuto

Cosa succede se l'utente specifica quattro parametri anziché due durante l'esecuzione di questo file batch? Va bene, non interferiranno con nulla, semplicemente non verranno utilizzati. Cosa succede se l'utente specifica solo il primo parametro? Il secondo parametro sarà vuoto. L'effetto sarà questo: il file batch verrà eseguito, ma come se fosse al posto della registrazione %2 non c'è nulla. Il comando help genererà un elenco di tutti i comandi e lo inserirà in un file con un nome vuoto e l'estensione .help. Se l'utente esegue questo file senza specificare alcun parametro, allora quando il processore dei comandi tenta di eseguire il comando md(ricorda, questo serve per creare una directory), otterremo un errore di sintassi perché il comando md deve avere un parametro.

Pertanto, l’utilizzo dei parametri crea grandi opportunità, ma può complicare notevolmente le cose. Affinché il file batch funzioni sempre correttamente, è necessario verificare la correttezza dei parametri specificati dall'utente e rispondere in qualche modo a dati di input incompleti o errati. Ovviamente non puoi farlo, ma un file batch che funziona in modo errato può causare problemi, soprattutto se comporta la cancellazione o la sovrascrittura dei dati.

Variabili. imposta il comando

Una variabile è un valore denominato. Nei libri di testo di programmazione, una variabile viene solitamente paragonata a una busta su cui è scritto un nome. Puoi mettere qualcosa all'interno della busta, ad esempio una certa somma di denaro: questo è il suo valore. Come con l'inviluppo, il valore della variabile può essere modificato.

Per dichiarare una variabile e allo stesso tempo assegnarle un valore, utilizzare il comando impostato. Un esempio di questo comando è mostrato nel seguente elenco.

Rem Compilatore di file della guida in formato CHM set help_compiler=c:\HTML Help Workshop\hcc.exe

Per estrarre il valore di una variabile, il suo nome viene inserito tra due segni di percentuale, come mostrato di seguito.

Rem Compilatore dei file della guida in formato CHM set help_compiler=c:\HTML Help Workshop\hcc.exe rem File della guida del progetto del modulo "Warehouse" set store_hpj=help\sources\store\store.hpj rem File della guida del progetto del " Modulo Sales" set sales_hpj=help\sources\sales\sales.hpj rem Compila i file della guida %help_compiler% %store_hpj% %help_compiler% %sales_hpj%

L'elenco seguente mostra perché le variabili sono utili.

In primo luogo, consentono di utilizzare un frammento breve come suo sinonimo all'interno di un file batch anziché un frammento lungo (ad esempio, il percorso del compilatore del file della guida). Almeno è conveniente.

In secondo luogo, consentono di evitare la ripetizione nel testo del file di comando di frammenti che potrebbero cambiare in futuro. Immagina di aver reinstallato Microsoft HTML Workshop in una directory diversa. Se in un file batch si utilizza una variabile per registrarne il percorso, sarà sufficiente correggere solo una riga del file batch, ovvero quella in cui è assegnato il valore della variabile help_compiler. Se scrivessimo il percorso del compilatore ogni volta che è necessario chiamarlo, dopo aver modificato il percorso dovremmo correggere ciascuna di queste righe. Nell'esempio sopra ce ne sono due, ma in un progetto reale potrebbero essercene facilmente cinque o quindici, a seconda del numero di file di aiuto che vogliamo compilare. Il problema non è che correggere manualmente ogni riga sia difficile (dopotutto nessuno ha cancellato i comandi “copia” e “incolla”), ma che ciò aumenta notevolmente la probabilità di un errore accidentale.

Anche i parametri del file batch sono variabili, ma differiscono dalle variabili ordinarie in quanto i loro valori vengono impostati all'avvio del file batch. In futuro, quando si parlerà di variabili, in particolare di come lavorare con i loro valori, ci riferiremo anche ai parametri del file di comando, almeno in assenza di riserve esplicite al riguardo.

Quando si scrivono file batch, viene spesso utilizzata la seguente tecnica: diversi valori di variabili vengono indicati affiancati (o intervallati da alcuni simboli o linee), in modo da ottenere qualche nuovo valore significativo. Un esempio è mostrato nell'elenco seguente.

Rem Percorso del compilatore del file della guida set help_compiler="c:\Program Files\HTML Help Workshop\hhc.exe" rem Percorso della directory in cui si trovano i progetti del file della guida set project_path=e:\work\projects\help- progetti rem Chiamiamo il compilatore per elaborare un progetto specifico, rem il cui nome è passato nel primo parametro %help_compiler% %project_path%\%1.hpj

Controllo delle condizioni e selezione delle opzioni. comandi if e goto

Il comando if consente di selezionare gruppi di comandi in un file batch che vengono eseguiti o non eseguiti a seconda di determinate condizioni. Cosa serve?

Il controllo delle condizioni è quasi un passaggio necessario quando si creano file batch che utilizzano parametri. Prima di iniziare il lavoro, il file batch generalmente deve assicurarsi che gli venga passato il set corretto di parametri. In caso contrario, il rischio che venga eseguito in modo errato o inefficace è elevato e l'utente resterà solo a chiedersi quale sia il problema. Inoltre, se un file batch cancella, sposta o sovrascrive dati, può persino causare danni se i parametri non sono corretti.

L'elenco seguente mostra il file dei comandi per la compilazione del file della guida con cui hai già familiarità. All'inizio del file di comando è stato aggiunto un controllo per la non vacuità del primo parametro. Si prega di notare questa caratteristica della sintassi: l'operazione di confronto utilizza un doppio segno di uguale. Se il primo parametro non è vuoto, viene eseguito il comando goto, che “lancia” la shell all'etichetta specificata. In questo caso, il nome di questa etichetta è compile. Tieni presente che dove appare un'etichetta, il suo nome è preceduto da due punti, ma nel comando goto non lo è. Se il primo parametro è vuoto, la shell passa alla riga successiva, che produce un messaggio di errore. E poi a quello successivo, che lo trasferisce alla fine del file su un'etichetta con il nome fine.

@echo off rem Controlliamo se il parametro è specificato altrimenti "%1"=="" goto compile rem Se il parametro è vuoto, emette un messaggio di errore echo Il nome del progetto del file di aiuto rem non è specificato e vai a dalla fine del file dei comandi rem alla fine vai all'etichetta finish rem Questa è un'etichetta denominata compile:compile rem Di seguito sono riportati i comandi di compilazione rem Percorso del file della guida compiler set help_compiler="c:\Program Files\HTML Help Workshop\hhc .exe" rem Percorso della directory in cui si trovano i progetti di aiuto files set project_path=e:\work\projects\help-projects rem Chiama il compilatore per elaborare un progetto specifico, rem il cui nome è passato nel primo parametro %help_compiler% %project_path%\%1.hpj rem Questa è un'etichetta denominata finish:finish

Diciamolo chiaro, il metodo proposto per controllare un parametro non è il più efficace.

Innanzitutto, se l'utente specifica erroneamente il nome di un file inesistente come parametro, il file batch si accontenterà di ciò e tenterà di compilare. Un modo migliore è verificare se tale file esiste effettivamente. A questo scopo il linguaggio di comando MS-DOS mette a disposizione una parola speciale esistere. Pertanto sarebbe meglio scrivere: se esiste %1.hpj vai alla compilazione.

In secondo luogo, l'uso attivo del comando vai a(il cosiddetto salto incondizionato) e le etichette confondono notevolmente il codice. Tecnicamente non sono male, ma eseguire il debug e mantenere un file batch scritto in questo stile è piuttosto scomodo. Pertanto, i programmatori considerano da tempo il salto incondizionato una tecnica indesiderabile. Di seguito è mostrata una versione più corretta, dal punto di vista dello stile di programmazione, strutturata, che utilizza la costruzione se altro. Funziona così: se la condizione è vera, i comandi tra parentesi seguono Se, e se falso, poi tra parentesi dopo altro.

@echo off rem Controlla se il parametro è impostato se non esiste %1.hpj (rem Se il parametro è vuoto, viene visualizzato un messaggio di errore echo Questo progetto di file di aiuto non esiste.) else (rem Di seguito sono riportati i comandi di compilazione rem Percorso al compilatore del file della guida set help_compiler="c:\Programmi\HTML Help Workshop\hhc.exe" rem Percorso della directory in cui si trovano i progetti del file della guida set project_path=e:\work\projects\help-projects rem Chiama il compilatore per elaborare un progetto specifico, rem il cui nome è passato nel primo parametro %help_compiler% %project_path%\%1.hpj)

Prestare attenzione alla rientranza dal bordo sinistro. Sono facoltativi, ma rendono più leggibile il testo del file batch.

Facciamo un altro esempio di come lavorare con gli assegni. Il seguente file batch crea una directory denominata file di aiuto(supponiamo di caricare al suo interno i file della guida compilati). Inoltre, se esiste già una directory con lo stesso nome (e probabilmente contiene vecchi file di aiuto che non vorreste perdere: e se quelli nuovi risultassero peggiori?), il file batch le assegna l'estensione bak . Ma se la directory file-di-aiuto.bak esisteva già, il file batch lo elimina (supponiamo che una copia di backup sia sufficiente per noi).

Se esistono file-di-aiuto.bak rd file-di-aiuto.bak se esistono file-di-aiuto ren file-di-aiuto file-di-aiuto.bak md file-di-aiuto

Elaborazione di file in blocco. per comando

Il comando for consente di organizzare l'esecuzione di azioni ripetute dello stesso tipo. Puoi usarlo per visualizzare i numeri da uno a dieci, come mostrato nell'elenco seguente.

Per /l %%i in (1,1,10) esegui echo %%i

Variabile io chiamato contatore di loop. A causa della sintassi unica del comando per, il nome del contatore del loop deve essere composto da una lettera. Inoltre, se stiamo scrivendo un file batch, allora dobbiamo mettere un doppio segno di percentuale davanti al nome del contatore del ciclo, ma se stiamo semplicemente digitando un comando sulla riga di comando, allora uno solo.

La logica di questo comando è la seguente. Dopo la parola In viene indicato l'intervallo di variazione del contatore dei cicli. In questa versione del comando si tratta di una terna di numeri: il valore iniziale del contatore, il passo di conteggio, il valore limite del contatore. Quando si esegue un comando, la shell assegnerà prima la variabile io Senso 1 , e quindi ad ogni passaggio del ciclo lo aumenterà di 1 fino a superarlo 10 . Ovviamente, ci saranno dieci di questi passaggi. Se specificassimo un numero come passaggio di conteggio 2 , il ciclo verrebbe eseguito cinque volte. Ad ogni passo del ciclo, viene eseguito il corpo del ciclo scritto dopo la parola Fare. Nell'esempio sopra, questo è il comando echo, che visualizza il valore corrente del contatore del loop.

Probabilmente puoi pensare a una situazione in cui qualcosa di simile è effettivamente richiesto, ma di solito il comando per utilizzato per scorrere ed elaborare i file. Va detto che in casi abbastanza semplici l'elaborazione in blocco dei file viene eseguita utilizzando caratteri jolly. Se vogliamo sostituire tutti i file nella directory corrente con l'estensione .htm SU .html, inseriamo il comando ren *.htm *.html. Ma se la stessa cosa deve essere fatta non in una directory, ma nell'albero delle directory, allora non puoi fare a meno del comando for. Il seguente file batch esegue questa operazione per tutti i file htm nella sottodirectory del sito Web della directory corrente. Più precisamente, nell'intero albero delle directory che si trova all'interno sito web.

Per /r il sito web %%i in (*.htm) fare ren %%i %%~ni.html

Chiave /R indica la necessità di attraversare la directory sito web e tutti i suoi interni. Se non lo specifichi (ma non ti è consentito specificare una directory), verranno elaborati solo i file nella directory corrente. L'intervallo dei valori del contatore del loop in questa variante del comando è l'insieme di tutti i file con l'estensione .htm, situato all'interno di una directory (più precisamente, un albero) sito web. Una voce strana a prima vista ~ni significa che dal valore della variabile io Devi solo selezionare il nome del file. Il linguaggio di comando MS-DOS fornisce diversi modificatori di questo tipo, ad esempio la scrittura ~xi denota l'estensione del file. Tutti i modificatori sono descritti nella guida del comando per.

Il corpo di un ciclo può essere costituito da diversi comandi racchiusi tra parentesi.

@echo off per /r sito web %%i in (*.htm) do (rem Stampa il nome del file echo %%i rem Rinomina il file ren %%i %%~ni.html)

Trasferimento del controllo a un altro file batch. comando di chiamata

È possibile richiamare un altro file batch da un file batch. Il comando per questo è chiamata. Ottimo, le variabili specificate nel file batch chiamante sono “visibili” a quello chiamato. E viceversa, dopo che il file chiamato termina il suo lavoro e restituisce il controllo al chiamante, quest'ultimo “vedrà” le variabili lasciategli dall'“ereditarietà” chiamata. Ciò consente allo sviluppatore di file batch di fare qualcosa del genere: Se più file di comandi devono utilizzare gli stessi valori, ad esempio i percorsi di alcuni file, è possibile inserirli in un file di comandi separato, che svolgerà il ruolo di file di configurazione. Ogni file di comando funzionante inizierà con una chiamata al file di configurazione. Il vantaggio è che quando si modificano i percorsi, è necessario apportare modifiche solo a un file di configurazione e non a molti lavoratori.

File batch "Configurazione". config.bat.

Rem Percorso del compilatore del file della guida set help_compiler="c:\Program Files\HTML Help Workshop\hhc.exe" rem Percorso della directory in cui si trovano i progetti del file della guida set project_path=e:\work\projects\help- progetti

File batch "funzionante".

@echo off rem Imposta le variabili chiama config.bat rem Controlla se il parametro è impostato se non esiste %1.hpj (rem Se il parametro è vuoto, viene visualizzato un messaggio di errore echo Questo progetto di file di aiuto non esiste.) else ( rem Di seguito sono riportati i comandi di compilazione rem Chiamiamo il compilatore per elaborare un progetto specifico, rem il cui nome è passato nel primo parametro %help_compiler% %project_path%\%1.hpj)

Un file bat è un file di testo nei sistemi operativi Windows che contiene una sequenza di comandi di sistema per l'esecuzione da parte dell'interprete dei comandi “cmd.exe”. In generale, è un file di script. Dopo aver avviato il file bat, l'interprete dei comandi ne legge il contenuto riga per riga ed esegue in sequenza i comandi ricevuti. Oggi vedremo come creare un file bat e anche conoscere i programmi per creare e modificare questi file.

Lo scopo dei file bat

I file con estensione bat sono progettati per automatizzare molte attività di routine nel sistema operativo Windows. Saranno molto utili nei casi in cui è necessario eseguire alcune operazioni o sequenze di operazioni un gran numero di volte di seguito o ripetere periodicamente un determinato algoritmo. Innanzitutto si tratta di lavorare con il file system (creazione di un gran numero di directory, soprattutto annidate, ridenominazione di massa dei file). , Puoi scoprirlo cliccando sul link qui sopra.

Creazione di un file bat

Qualsiasi utente può creare un file di comandi di testo: qui non c'è assolutamente nulla di complicato. Per fare ciò, avrai solo bisogno di un editor di testo (la funzionalità di un blocco note standard sarà abbastanza sufficiente).

Primo metodo

  1. Crea un nuovo documento di testo in qualsiasi directory.

Per eseguire questa azione, richiamare il menu contestuale dello spazio della directory libero da cartelle e file e selezionare "Crea". Nell'elenco a discesa, fare clic sulla voce "File di testo".

  1. Immettere il nome del documento creato e fare clic su "Invio".
  2. Aprire il file creato facendo doppio clic con il mouse.

  1. Inseriamo alcuni semplici comandi per verificarne la funzionalità:

@ eco Ciao, ioM pipistrello!

@echo – comando per visualizzare il testo sullo schermo;

Ciao, sono pipistrello: il testo stesso;

pausa: attende le azioni dell'utente prima di chiudere la finestra. Dopo aver eseguito il comando “@echo”, l'interprete dei comandi non si chiuderà automaticamente, consentendo all'utente di conoscere i risultati della sua esecuzione (vedremo il testo inserito sullo schermo).

  1. Richiamare la voce “File” nel menu principale del blocco note e fare clic su “Salva con nome...”.

  1. Nella finestra di dialogo che appare, seleziona il tipo di file “Tutti i file”.

  1. Successivamente, aggiungiamo il seguente testo “.bat” al nome del nostro documento, che alla fine darà “file.bat”.
  2. Fare clic sul pulsante "Salva".

Di conseguenza, nella finestra di Explorer apparirà un documento chiamato "file.bat", per avviarlo è necessario fare doppio clic su di esso con il tasto sinistro del mouse oppure selezionarlo e premere "Invio".

La modifica di un file batch viene eseguita selezionando il comando "Modifica" dal menu contestuale.

Secondo metodo

Il secondo metodo per creare file bat è quasi simile al primo, ma non lo ignoreremo.

  1. Lanciamo Blocco note utilizzando qualsiasi metodo noto.
  • Attraverso il collegamento nel menu Start, vai su "Start - Tutti i programmi - Accessori - Blocco note" in Windows 7 o "Start - Tutte le applicazioni - Accessori - Windows - Blocco note" nelle edizioni successive di Windows.
  • Nella barra di ricerca "Start" / "Windows", inserisci Blocco note e avvia il programma facendo clic sul suo collegamento nell'elenco dei risultati.
  • Richiama la finestra per eseguire i comandi di sistema utilizzando la combinazione di tasti "Win + R", inserisci "blocco note" e fai clic su "Ok".
  1. Passiamo al punto n.4 del metodo precedente.

Modifica di file bat utilizzando Windows

  1. Fare clic con il tasto destro sul file bat, richiamando il suo menu contestuale.

  1. Dal menu che appare, seleziona “Modifica” o “Modifica”.
  2. Il contenuto del file bat apparirà nella finestra che si apre con un editor di testo standard, solitamente Blocco note.
  3. Apportiamo le modifiche necessarie e salviamo il risultato.

Dr.Batcher – un programma per creare file bat e modificarli

Anche se oggi l'uso dei file bat non è così popolare tra gli utenti, è comunque più efficace ricorrere al loro aiuto per risolvere molti problemi del computer. Se un principiante che utilizza occasionalmente un interprete di comandi è soddisfatto della funzionalità del Blocco note, allora per un amministratore di sistema e un Vareznik che crea build di Windows o software installato automaticamente per esso, uno strumento più avanzato e conveniente per lavorare con documenti in formato bat è necessario. È l'utilità Dr.Batcher. L'interfaccia e la funzionalità del programma non sono molto diverse dai blocchi note come Notepad++. Il menu principale contiene i pulsanti per i comandi utilizzati di frequente. Dr.Batcher numera le pagine, supporta i segnalibri, contiene un elenco di comandi di sistema per i file bat ed evidenzia la sintassi dei comandi immessi.

Creazione di un file bat in Dr.Batcher

  1. Lanciamo l'applicazione.
  2. Chiama la voce "File" nel menu principale e fai clic su "Nuovo". Lo stesso si fa cliccando sull'icona del foglio bianco situata nel menu “File”.
  3. Nella finestra di dialogo, selezionare "Svuota file batch".

Sullo schermo apparirà una finestra del programma con tutte le funzioni necessarie per lavorare con i file bat.

Modifica dei file bat in Dr.Batcher

Esistono diversi modi per aprire un documento in formato bat per la modifica in Dr.Batcher, che verrà discusso ulteriormente.

Modifica tramite il menu contestuale di un file bat

  1. Richiama il menu contestuale del documento in formato bat.
  2. Nell'elenco a discesa, seleziona "Modifica con Dr.Batcher".

Quindi si aprirà una finestra del programma con il contenuto del nostro file batch di testo, in cui è possibile apportare modifiche al suo contenuto.

Modifica dei file bat utilizzando Dr.Batcher

  1. Avvia l'applicazione Batcher.
  2. Chiama la voce "File" nel menu principale.
  3. Seleziona "Apri" dal menu a discesa.

La stessa cosa si fa cliccando sull'icona della cartella situata sotto il menu principale.

  1. Nella finestra di dialogo di apertura del file, specificare il percorso del documento in formato bat richiesto e fare clic su "Apri".

Il nostro file bat si aprirà nella finestra Dr.Batcher e potrai apportarvi modifiche.

Oggi impareremo di cosa si tratta bat e allo stesso tempo ne creeremo uno.

Penso che molti, in un modo o nell'altro, creino periodicamente (i cosiddetti backup) determinati file e cartelle.

Tutto sembra familiare e non è necessario fare nulla di particolarmente complicato: inserire una chiavetta, aprire “Risorse del computer”, trovare ciò che si desidera copiare, selezionare, fare clic con il mouse, selezionare “copia”, spostarsi sulla directory desiderata, fare clic su "incolla", ecc.

Ma spesso tutti questi clic e movimenti inutili sono un po’ faticosi e richiedono tempo prezioso, soprattutto quando si copiano frequentemente gli stessi dati. In questo articolo ti dirò come, o meglio, come scrivere un file bat.

Andare.

File bat: cosa è cosa, introduttivo

Innanzitutto, qualcosa su cos'è un file bat, perché è necessario e con cosa viene utilizzato. Per non reinventare la ruota, userò un estratto da Wikipedia:

Un file batch (cioè file bat, dall'inglese batch file) è un file di testo in MS-DOS, OS/2 o Windows contenente una sequenza di comandi destinati ad essere eseguiti dall'interprete dei comandi.

Dopo aver eseguito un file batch, un programma interprete (solitamente COMMAND.COM o CMD.EXE) lo legge riga per riga ed esegue i comandi in sequenza.

Un file batch è analogo a uno script di shell nei sistemi operativi simili a Unix.

I file batch sono utili per avviare automaticamente le applicazioni. Il principale campo di applicazione è l'automazione delle operazioni più di routine che un utente di computer deve eseguire regolarmente.

Esempi di tali operazioni includono: elaborazione di file di testo; copiare, spostare, rinominare, eliminare file; lavorare con le cartelle; archiviazione; creazione di backup del database, ecc.

I file batch supportano le istruzioni if ​​e goto (e nei sistemi della famiglia Windows NT, l'istruzione for estesa), che consente di elaborare i risultati dell'esecuzione di comandi o applicazioni precedenti e, a seconda di ciò, eseguire ulteriormente questo o quel blocco di comandi ( solitamente, se l'applicazione viene completata con successo restituisce 0 nella variabile errorlevel; se non riesce, 1 o maggiore).

I file batch in DOS hanno l'estensione .bat; per altri sistemi operativi possono avere estensioni diverse, ad esempio .CMD in Windows NT e OS/2, oppure .BTM in 4DOS o shell simili.

Ora che abbiamo chiarito la teoria, passiamo alla pratica vera e propria, ovvero creare un soprannome di pipistrello.

Come creare un file bat e usarlo

Prepariamo un piccolo campo di prova in modo da avere qualcosa con cui sperimentare. Apri il mio computer e crea una cartella di prova sull'unità C:\. Entra e crea una cartella al suo interno.

Getta lì i file (5-10 pezzi): foto, documenti, ecc. Ecc. (qualsiasi cosa più breve). Il campo per la sperimentazione è pronto. Successivamente, dobbiamo creare, appunto, il file bat stesso, facendo clic sul quale copieremo la cartella C:\test\testcopy, ad esempio, nella cartella C:\test\backup. Non è necessario creare una seconda cartella (che sia il backup): apparirà automaticamente.

Creare un pipistrello è molto semplice. Fare clic con il tasto destro nel punto in cui vogliamo crearlo (la posizione non è importante, puoi farlo direttamente sul desktop) e selezionare "Crea" - " Documento di testo".

Dai un nome al file creato e aprilo con il blocco note o qualsiasi altro editor di testo. Quelli. Al momento abbiamo un file di testo aperto, che si chiama, ad esempio, copying.txt.

Aggiungi un comando al file, ad esempio, per copiare

Successivamente, infatti, dovremo inserire in questo file un comando che verrà riprodotto utilizzando la console (cmd) all'avvio di questo file. In questo caso utilizzeremo il comando xcopy perché permette di copiare file, directory e sottodirectory. Considerando tutti i percorsi, otteniamo il seguente comando:

xcopy C:\test\testcopy C:\test\backup /f /i /y /s

Lasciami spiegare di cosa si tratta:

  • xcopy è il comando stesso;
  • C:\test\testcopy è la fonte, cioè la cartella da cui vengono copiati file e directory;
  • C:\test\backup è il risultato, cioè la posizione in cui verranno copiati file e directory;
  • /f /i /y /s - parametri di sintassi aggiuntivi per il comando xcopy (vedere la sintassi di seguito).

Il numero di righe può essere qualsiasi, ad es. se devi copiare 100 cartelle, scrivi 100 righe in un file e modifichi solo i percorsi al loro interno.

Cosa ci sono (cioè quelli che ho indicato in questo esempio):

  • /f - visualizza i nomi dei file di origine e dei file di risultato durante il processo di copia
  • /i - crea una nuova directory se non si trova nel percorso finale
  • /y - sovrascrive il file se esiste già
  • /s - copia directory e sottodirectory se non sono vuote. Se l'opzione /s non è specificata, il comando xcopy funzionerà solo su una directory.

Per quanto mi riguarda, questo è l'elenco principale dei parametri necessari per la copia "silenziosa", ovvero. senza domande inutili su riscrittura, creazione di directory e altre cianfrusaglie. Per quanto riguarda il resto della sintassi, puoi leggere, ad esempio, .

Cambia il formato del file e prova a eseguirlo

Innanzitutto, apri "Risorse del computer", vai su "Strumenti" - "Opzioni cartella" - "Visualizza" e deseleziona " Nascondi l'estensione per i tipi di file registrati".

Fare clic su "Applica" e "Ok". Ora possiamo cambiare l'estensione dei file conosciuti dal sistema, e quindi andiamo sul nostro file, facciamo clic con il tasto destro, selezioniamo “Rinomina” e digitando sulla tastiera cambiamo l'estensione da txt a bat (rispondiamo alla domanda del sistema se questo vale la pena farlo in senso affermativo).

Di conseguenza, abbiamo la seguente immagine (nel tuo caso il file si chiama diversamente, ma ha lo stesso formato):

In realtà non ci resta che avviare questo file semplicemente cliccandoci sopra con il mouse.

Se hai fatto tutto correttamente, la console lampeggerà davanti a te e lungo un percorso noto apparirà una nuova cartella con un nome predeterminato e file all'interno copiati da una cartella a te nota, ad es. l'immagine sarà qualcosa del genere:

Bene, o leggermente diverso, a seconda dei percorsi e dei nomi delle cartelle specificati nel comando.
Puoi modificare il file ripristinandone l'estensione in .txt e aprendolo con qualsiasi editor di testo.

Epilogo

Come ho già detto e probabilmente tu stesso te ne sei reso conto, l'utilizzo di un file bat come questo spesso fa risparmiare molto tempo, ad es. lo scrivi una volta e lo lanci periodicamente con un clic, e invece di molti minuti di clic con il mouse e di scansione di tutto le cartelle, ottieni un processo di copia automatizzato.

Se lo desideri, puoi impostare questo nickname di pipistrello in modo che venga eseguito in determinati giorni tramite lo scheduler di Windows (o altri programmi che ti consentono di farlo) e in generale dimenticare il problema dei lunghi backup manuali.

Se avete domande o problemi, chiedete. Come sempre, ti aiuterò in ogni modo possibile ;)

PS: se la memoria non mi inganna, allora questo è un pezzo di un argomento tratto dai libri di amministrazione intelligente, in particolare dalla sezione " Automazione amministrativa".. così puoi essere orgoglioso di te stesso :)

I migliori articoli sull'argomento