Newsgroup: it.comp.os.dos
Titolo: Programmazione in Batch

salve a tutti,
è possibile trovare su internet o in commercio una guida per la
programmazione i batch??
Se si puo trovare qualcosa mi fate sapere dove?
Volevo inoltre sapere come si puo introdurre una riga per generare un input
in un file batch.
Per input intendo una domanda alla quale io poi risponderò da tastiera tipo
il comando input nel basic seguito poi da istruzioni IF THEN ELSE
Grazie cortesemente per l'attenzione
G

Mentre mi apprestavo a riciclare alcuni bit, *Gianluigi D'Oria* ha scritto:

Il comando choice fa per te: 
http://www.computerhope.com/choicehl.htm
@ECHO OFF
CHOICE /N /C:123 Scegli l'opzione (1, 2, o 3)
IF ERRORLEVEL ==3 GOTO Opzione3
IF ERRORLEVEL ==2 GOTO Opzione2
IF ERRORLEVEL ==1 GOTO Opzione1
:Opzione1
ECHO Hai scelto l'opzione 1
GOTO End
:Opzione2
ECHO Hai scelto l'opzione 2
GOTO End
:Opzione3
ECHO Hai scelto l'opzione 2
GOTO End
:End
-- 
3st3b4n
www.seber.it
Questo post è stato scritto con bit riciclati 

 Si puo fare una cosa simile??
Non con Choice, almeno che non venga messo in un loop tipo quello che scrivo 
qui sotto, anche se non saprei come uscirne premendo semplicemente Invio (in 
questo esempio si esce con il tasto +):
*** Nome.bat ***
@echo off
set Input=
:ReadInput
cls
echo Digita il nome:
choice /c:0123456789abcdefghijklmnopqrstuvwxyz+ /n %Input%
if errorlevel 1 if not errorlevel 2 set Input=%Input%0
if errorlevel 2 if not errorlevel 3 set Input=%Input%1
if errorlevel 3 if not errorlevel 4 set Input=%Input%2
if errorlevel 4 if not errorlevel 5 set Input=%Input%3
if errorlevel 5 if not errorlevel 6 set Input=%Input%4
if errorlevel 6 if not errorlevel 7 set Input=%Input%5
if errorlevel 7 if not errorlevel 8 set Input=%Input%6
if errorlevel 8 if not errorlevel 9 set Input=%Input%7
if errorlevel 9 if not errorlevel 10 set Input=%Input%8
if errorlevel 10 if not errorlevel 11 set Input=%Input%9
if errorlevel 11 if not errorlevel 12 set Input=%Input%A
if errorlevel 12 if not errorlevel 13 set Input=%Input%B
if errorlevel 13 if not errorlevel 14 set Input=%Input%C
if errorlevel 14 if not errorlevel 15 set Input=%Input%D
REM eccetera... eccetera...
if errorlevel 33 if not errorlevel 34 set Input=%Input%W
if errorlevel 34 if not errorlevel 35 set Input=%Input%X
if errorlevel 35 if not errorlevel 36 set Input=%Input%Y
if errorlevel 36 if not errorlevel 37 set Input=%Input%z
if errorlevel 37 if not errorlevel 38 goto End
goto ReadInput
:End
echo Hai digitato: %Input%
*** Fine Nome.bat ***
Oppure si potrebbe usare edlin o magari il comando "copy con testo.txt" (con 
cui viene copiato nel file testo.txt ciò che viene digitato sul prompt), il 
problema è che in tutti i casi (salvo smentita da qualche esperto) non è 
sufficiente la pressione di Invio per chiudere ma di una combinazione di 
tasti (Ctrl+z con copy con).
-- 
3st3b4n
www.seber.it
Questo post è stato scritto con bit riciclati 

  Si puo fare una cosa simile??
  A parte il "rigiro" che ti ha scritto 3st3b4n, scusa:
  ma a 'sto punto, perche' non te lo scrivi in basic?
  Cioe`, la domanda e`: perche' proprio in batch?
  Con i comandi  `standard' non puoi. Magari il  "DøctøR_DøøM" ti puo`
dare una dritta  usando il suo immancabile debug. Ma  se "mastichi" il
basic, dov'e` il problema?
  Dimenticavo: e` sempre buona  norma specificare il Sistema Operativo
con il quale si intende utilizzare il programma... ;)
-- 
Cio` che ho scritto, ho scritto.

 Si puo fare una cosa simile??
In Windows XP:
set /p A="Inserire Nome del Server: "
echo Il nome del Server inserito č: %A%
In DOS puro ti conviene usare qualche utility che ti dia una mano.
Ciao
---
http://www.amriottini.net/roberto/
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 ha scritto nel messaggio 
news:d35d8r$luf$1...@news.newsland.it...


 basic, dov'e` il problema?
--cut--
@echo off
fc con nul /lb1 /n |find "1:" >tmp.bat
echo.e 100 "   set a=">deb
echo.w>>deb
echo.q>>deb
debug tmp.bat <deb >nul
del deb
call tmp.bat
del tmp.bat
--cut--
Questo batch prende l'input da tastiera e lo salva sulla variabile a.
Alcuni caratteri non possono essere salvati (come =, >, < e |).
Ciao

  Alcuni caratteri non possono essere salvati (come =, >, < e |).
  Come Volevasi Dimostrare...
  Bastava solo `evocarlo'... ;)
  Sei veramente tremendo, anzi: `quattromendo'.
  Mi saresti stato molto utile... quattordici anni fa, uffa...


 --cut--
Sono senza parole, d'altra parte ho ripetuto la terza per insufficenza in 
DOS...
Ho provato ad eseguirla sotto XP, ma la riga:
fc con nul /lb1 /n |find "1:" >tmp.bat
mi genera l'errore:
FC: impossibile aprire CON - File o directory non esistenti
Perň io il device CON lo uso spesso con il comando copy e funziona sempre.
Perché in questo caso non va?
-- 
3st3b4n
www.seber.it
Questo post č stato scritto con bit riciclati 

il comando input nel basic seguito poi da istruzioni IF THEN ELSE
Io da anni uso il seguente batch che richiamo ogni volta che necessito input!
input.bat
---- cut -----
@echo off
echo Il seguente batch copia l'input da tastiera nella variabile INPUT_
rem Testa l'output di "date": se  Inserire o Immettere
set BAT=Inserire
echo. | date | find "%BAT%" > nul
if errorlevel 1 set BAT=Immettere
echo Immettere l'input:
REM     fc /lb1 con nul | find /v "*****" | find /v "Confronto" > setinput.bat
fc con nul /lb1 /n | date | find "    1:  "> setinput.bat
rem routine per estendere l' input a piu' parametri
echo @echo off>%BAT%.bat
echo set input_=%%6>>%BAT%.bat
echo :next>> %BAT%.bat
echo if "%%7"=="" goto fine>> %BAT%.bat
echo shift>> %BAT%.bat
echo set input_=%%input_%% %%6>> %BAT%.bat
echo goto next>> %BAT%.bat
echo :fine>> %BAT%.bat
call setinput
del setinput.bat
del %BAT%.bat
set BAT=
echo Il valore di INPUT_ e': %input_%
---- cut ----
Faccio un batch tipo:
@echo off
echo dimmi la parolina:
call input.bat
if input_==pippo goto step1
if input_==pluto goto step2
.....
.....
:step1
echo hai scritto pippo
:step2
echo hai scritto pluto
eccetera...
Poiché accetta come input piú variabili, puoi gestire molte cose...
P.S. non é tutta farina del mio sacco...
-- 
,,, e dopo che ci avranno trasformato in vegetariani, a causa del vino al
metanolo, del pesce al mercurio, dei polli alla diossina, dei maiali agli
ormoni,  delle mucche,  pecore e  capre pazze,  ci daranno da mangiare la
frutta al benzene e la verdura radioattiva.
La nostra unica salvezza sara' nel Soylent Green!

 ha scritto nel messaggio 
news:3bvm9mF...@individual.net...


grazie molte del suggerimento.
G.
""BIG" (Umberto)" <B...@Flowers.it> ha scritto nel messaggio 
news:425ac892...@127.0.0.1...


 ha scritto nel messaggio 
news:V6T5e.55818$zZ1.1...@twister1.libero.it...


 che ti serve
Non mi serve che funzioni sotto XP. Era solo per provare.
-- 
3st3b4n
www.seber.it
Questo post è stato scritto con bit riciclati