Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - el_lujo

#1
Saludos, señores.

Debido a una necesidad, quisiera una ayuda de ustedes los expertos.

Mi necesidad es la siguiente:
a 50 usuarios se les guardan todos los archivos de documentos con un gestor de respaldo; pero cada día debo borrar esos archivos navegando cada una de las carpetas.

En síntesis, quisiera saber si existe una forma (creo que sí) que yo pueda en batch borrar todos los archivos exceptuando algunas subcarpetas y por ende los archivos en esa subcarpeta.

Navegando por la web vi unas líneas de códigos para manejo de borrado de carpetas y obviando algunas dependiendo de un archivo .txt.

Lo encontrado fue esto:
Esto para crear la lista de directorios y guardarlos en un archivo:


dir /ad /b > carpetas.txt

Y esto para eliminar las subcarpetas


For /f "delims=" %n in (carpetas.txt) do rmdir /s /q "%%n"


Ahora bien, tratando de implementar esto a mi necesidad:


@ECHO OFF
TITLE BORRADO DOCs. OFFICE
ECHO SE COMENZARA CON EL BORRADO DE LOS ARCHIVOS
ECHO ASEGURESE DE QUE LA CARPETA DE LOS ARCHIVOS EN OFFICE
ECHO ESTA MAPEADA EN LA UNIDAD Z:
PAUSE
Z:
For /f "delims=" %n in (carpetas.txt) do rmdir /s /q "%n"
ECHO BORRADO COMPLETO
PAUSE > NULL


La pregunta:

Cómo puedo, en vez de borrar subcarpetas, borrar sólo los archivos, tanto de la carperas como subcarpetas de esa unidad?

Gracias.
#2
Saludos, señores.

quisiera orientación sobre un problema que no puedo resolver en un programa en c/c++, el cual debo simular la primera línea del compilador pascal.

Donde tengo problemas es en la supresión de los espacios en blanco a la izquierda de la cadena, ejm.  suponiendo que la primera linea es: program NombrePrograma;

Quiero suprimir cualquier espacio en blanco que tenga esta línea a la izquierda y derecha.  Adjunto lo que he logrado en conjunto con otros compañeros.

Con ayuda de la internet, agregué una función que por sí sola suprime los espacios, pero no sé por qué no me resulta igual agregandola al código.

sé que algo esta mal pero no puedo verlo.


Gracias.

Código (cpp) [Seleccionar]
/*Simulacion de Pascal

*/

           
#include <stdio.h>  
#include <stdlib.h>  
#include <conio.h>
#include <string.h>

void suprime(char cadena[]);

int main()
{
char cCad[50],cCadena[50], cPRO[8]="PROGRAM",cPRO1[8]="program";
   int  TaCad,cont=0;
   
       system ("cls");
printf("\n\t               SIMULACION COMPILADOR PASCAL \n\n");
       printf ("\n1: ");gets (cCadena);

   
  //=================================================================================
suprime(cCadena);
TaCad=strlen(cCad);
if (cCad[0]=='\0')  
{
printf ("\n Error [Linea 1]:- Falta 'PROGRAM', 'nombre del programa' y ';' \n ");
}

for ( i=0; i<=6; i++)
{

if (cCad[i]!= cPRO[i])
{
if (cCad[i]!=cPRO1[i]) cont++;
}
}

if (cCad[i]==' ')

if (cont!=0 && TaCad>0)
{
printf ("\n Error [Linea 1]:- 'PROGRAM' esta mal escrito  \n ");
}

if (cCad[7]!=' ' && cont==0 && TaCad>8)
{
printf ("\n Error [Linea 1]:- Falta espacio entre 'PROGRAM' y nombre de programa\n");
}

if (cCad[7]!=' ' && cont!=0 && TaCad<8)
{
printf ("\n Error [Linea 1]:- Omision de espacio entre 'PROGRAM' Y el nombre del Programa\n");
}

if  (cCad[8]==';' && cont==0 && TaCad>=7)
{
printf ("\n Error [Linea 1]:- Omision del nombre del programa \n\n");
}

if  (cCad[8]==';' && cont==0 && TaCad==8 )
{
printf ("\n Error [Linea 1]:- Omision del nombre del programa \n\n");
}

if  (cCad[1]==' '|| cCad[0]==';' ||cCad[8]==' ')  
{
printf ("\n Error [Linea 1]:- Omision del nombre del programa \n\n");
}

if (cCad[7]==';' || cCad[7]=='\0' && cont==0)
{
printf ("\n Error [Linea 1]:- Omision del nombre del programa \n\n");
}

if (cCad[TaCad-1]!=';')
{
printf ("\n Error [Linea 1]:- Falta El ';' al Final de la linea\n\n");
}

     
system ("PAUSE");
}

void suprime(char cadena[])
{

char cCad[100];
int x=0, z=0, y=strlen(cadena);




while(cadena[x]==' ')
{
if(cadena[x]==' ')
x++;
}


while(cadena[x]!='\0')
{

cCad[z]=cadena[x];
x++;
z++;
}

}


Mod: Cuando publiques código, usa las etiquetas GeSHi
#3
Saludos.
Estoy comenzando a estudiar programación.
Tengo la siguiente tarea:
Debo hacer una aplicacion en c++ que limpie la pantalla.
Requisitos:
-Que el comando que limpie la pantalla sea "limpiar".
-Que sin importar que se escriba mayuscula o minúscula haga la función sin reventarse.

Honestamente no se nada y el profesor lo que quiere es que investiguemos; se vale buscar ayuda porque en el curso se discutirá. Lo que no puedo es llegar sin el resultado.

Gracias de antemano.

Nota: Admito que según el reglamento no se hacen tareas. Solo  estoy interesado en la ayuda de cómo debo interpretar usar una palabra como comando.

Gracias de nuevo.