elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Sistemas Operativos
| |-+  Windows (Moderador: Randomize)
| | |-+  Ayuda con ms-dos
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda con ms-dos  (Leído 3,861 veces)
ayleid

Desconectado Desconectado

Mensajes: 232


biOS


Ver Perfil WWW
Ayuda con ms-dos
« en: 15 Octubre 2010, 00:10 am »

WEnassss...Mirad estoy intendando hacer lo siguiente en ms-dos:

He creado un disket de arranque con ntfs4dos copiado encima de un diskete de arranque hecho desde mipc-> formatear.

El problema viene con un .bat k intento ejecutar... el diskete arranca, me ve las unidades ntfs y fat pero.... al parecer quiero hacer que el usuario introduzca una variable con:

set /p letra= "Letra de unidad (solo letra sin dos puntos)"

copy %letra%:\a.txt %letra%:\a-backup.txt
copy /Y %letra%:\c.txt %letra%:\a.txt

echo ARCHIVOS SUSTITUIDOS CORRECTAMENTE!!!
pause
exit


EL problema es que con el set /p me dice "too many arguments" o "Syntax error" hay alguna manera de preguntar al usuario de otra forma??

REsumiendo: lo que quiero hacer es que el usuario introduzca la letra de unidad que ve en el ntfs4dos en mi batch y que el batch con esa letra la ponga en el copy y me haga la sustitucion de arhcivos...

alguna idea del error pork yo no lo veo jajajajaaj

PD: en el cmd de inicio ejecutar va bien es lo que no entiendo...


En línea

Placa base: GA-x48-DQ6
CPU: INTEL Q8200 2.33 GHZ 1333mhz fsb
Tarjeta grafica: ATI HD 5770 1Gb + Nvidia En210 (Physx mod)
Ram: 8GB kingston a Dual channel ddr2
Sonido: 5.1
OS: WIndows 7 ultimate  x64 bits
KuraraGNU

Desconectado Desconectado

Mensajes: 209



Ver Perfil
Re: Ayuda con ms-dos
« Respuesta #1 en: 15 Octubre 2010, 01:14 am »

No sabía lo que hacía el set /p, así que busqué por internet, ya que W7 no tiene consola, me pone esto:

set /P variable=
Esto sirve para que el programa permita al usuario escribir algo, que será luego usado como una variable, se escribe /P después de set y el valor se deja vacío.


Tú no lo dejas vacío ¿me equivoco? ¿O has puesto eso simplemente para que lo veamos? Si quieres que vean el mensaje escribe en la línea de encima de set /p un echo y lo pones.


En línea

ayleid

Desconectado Desconectado

Mensajes: 232


biOS


Ver Perfil WWW
Re: Ayuda con ms-dos
« Respuesta #2 en: 15 Octubre 2010, 08:25 am »

sip, yo no lo dejo vacio pork quiero k salga la pregunta xdd

Asi que kdaria asi no?-->

echo
set /p variable=
En línea

Placa base: GA-x48-DQ6
CPU: INTEL Q8200 2.33 GHZ 1333mhz fsb
Tarjeta grafica: ATI HD 5770 1Gb + Nvidia En210 (Physx mod)
Ram: 8GB kingston a Dual channel ddr2
Sonido: 5.1
OS: WIndows 7 ultimate  x64 bits
KuraraGNU

Desconectado Desconectado

Mensajes: 209



Ver Perfil
Re: Ayuda con ms-dos
« Respuesta #3 en: 15 Octubre 2010, 08:44 am »

Concretamente así

Código
  1. echo escriba la Letra de unidad (solo letra sin dos puntos)
  2. set /p letra=
En línea

ayleid

Desconectado Desconectado

Mensajes: 232


biOS


Ver Perfil WWW
Re: Ayuda con ms-dos
« Respuesta #4 en: 15 Octubre 2010, 08:56 am »

gracias por responder :)

pero lo pongo asi y el Ms-dos lo que hace es saltarse la linea del set P
y pone obviamente archivo no entontrado....
no se pero desde Inicio--ejecutar--cmd el bat va al 100% pero desde un ms-dos (me he dao cuenta de que es WIndows millenium 4.0 no se si esto afecta en algo)
pero me es imposible desde el diskette de arranque...
En línea

Placa base: GA-x48-DQ6
CPU: INTEL Q8200 2.33 GHZ 1333mhz fsb
Tarjeta grafica: ATI HD 5770 1Gb + Nvidia En210 (Physx mod)
Ram: 8GB kingston a Dual channel ddr2
Sonido: 5.1
OS: WIndows 7 ultimate  x64 bits
ayleid

Desconectado Desconectado

Mensajes: 232


biOS


Ver Perfil WWW
Re: Ayuda con ms-dos
« Respuesta #5 en: 15 Octubre 2010, 10:54 am »

Cosa nueva... he formateado el diskette como un diskette de arranque pero ahora si que es seguro ms-dos 6.22  igualmente cuando llega al set /p letra= se lo salta y da error :S

alguna idea por ahi?
En línea

Placa base: GA-x48-DQ6
CPU: INTEL Q8200 2.33 GHZ 1333mhz fsb
Tarjeta grafica: ATI HD 5770 1Gb + Nvidia En210 (Physx mod)
Ram: 8GB kingston a Dual channel ddr2
Sonido: 5.1
OS: WIndows 7 ultimate  x64 bits
KuraraGNU

Desconectado Desconectado

Mensajes: 209



Ver Perfil
Re: Ayuda con ms-dos
« Respuesta #6 en: 15 Octubre 2010, 15:45 pm »

A ver, así de primeras se me ocurre una cosa, con el ordenador encendido, si ejecutas el .bat te va perfectamente ¿no? Sin embargo, con el diskete de arraqnque no ¿cierto? Pues esto es porque en el diskete de arranque, no se tienen todos los comandos que se tienen en la versión de windows entera, sólo algunos comandillos, los justos para formatear e iniciar windows, los cuales se encuentran en command.com o algo así.

Mira a ver en el disco de arranque en el modo explorar si lo ves, o haz un /help desde el arranque a ver si te sale todos los comandos que tiene (no se si el /help funcionará). Podrías intentar, meter manualmente el set.bat o como se llame (estará en windows/system32/bin o algo así, es que no tengo xp así que no puedo mirartelo :() en el disco de arranque, ahora mismo me pongo a buscar qué comandos están en el command.com y te comento.
En línea

~

Desconectado Desconectado

Mensajes: 85


Ver Perfil WWW
Re: Ayuda con ms-dos
« Respuesta #7 en: 15 Octubre 2010, 16:08 pm »

También esto:

Código:
@set letra=%1
@echo La letra de la unidad es %letra%

El %1 es el primer parámetro de la líea de comandos.

Cuando se declara una variable, como "letra", se escribe normalmente, pero cuando se vuelve a usar se usa entre 2 signos de porcentaje, en este caso se escribe %letra% para usar el valor después de declarada.

Para correrlo sería algo como:

MiBat.bat C:
En línea

Donar con PayPal para que siga trabajando:
https://www.ebay.com/usr/udocproject3

Streams en vivo de programación:
PC 1 - PC 2

http://www.youtube.com/@AltComp126/streams
KuraraGNU

Desconectado Desconectado

Mensajes: 209



Ver Perfil
Re: Ayuda con ms-dos
« Respuesta #8 en: 15 Octubre 2010, 16:17 pm »

Pues también, que estoy tonta, mira que no acordarme de eso XD

Bueno pues hale, lo voy a hacer entero a ver XD

Código
  1. @echo off
  2. rem Comprobamos que ha introducido la letra
  3. if "%1" == "" goto sintaxis
  4.  
  5. copy %1%:\a.txt %l1%:\a-backup.txt
  6. copy /Y %1%:\c.txt %1%:\a.txt
  7.  
  8. rem comprobamos que no haya habido nigún error
  9. goto correcto
  10.  
  11. :sintaxis
  12. echo Escriba la Letra de unidad (solo letra sin dos puntos)
  13. goto fin
  14. :error
  15. echo Error al construir el fichero
  16. goto fin
  17. :correcto
  18. echo ARCHIVOS SUSTITUIDOS CORRECTAMENTE!!!
  19. :fin

El errorlevel se evalúa si es mayor o igual, estos son los casos de errorlevel para copiar archivos
Código            Significado
0       Los ficheros fueron copiados sin error.
1       No se encontraron ficheros para copiar.
2       El usuario presionó Ctrl+Pausa para suspender el proceso de Xcopy.
4       Ocurrió un error de inicio. No hay suficiente memoria o espacio en el disco, se introdujo  
        un nombre de unidad no válida o se utilizó una sintaxis incorrecta en la línea de órdenes.
5       Ocurrió un error de escritura de disco.
« Última modificación: 15 Octubre 2010, 17:16 pm por KuraraGNU » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines