Sie sind vermutlich noch nicht im Forum angemeldet - Klicken Sie hier um sich kostenlos anzumelden  
logo
Sie können sich hier anmelden
Dieses Board hat 2 Mitglieder
4 Beiträge & 4 Themen
Beiträge der letzten Tage
Foren Suche
Suchoptionen
  • Thema von bichlerp im Forum UNIX

    UNIX -- 20.01.2005

    #!/bin/bash
    # Autor: Patrick Bichler
    # Datum: 20.01.2005
    # Ueberprueft ob eine Datei angekommen ist

    if [ $# -eq 0 -o $# -gt 2 ]
    then
    echo "Es wurde kein oder nicht die richtige Anzahl an Paramtern angegeben"
    fi

    while :
    do
    if [ -s /tmp/$1
    then
    echo "Ihre Datei ist da!">&2
    cp /tmp/$1 `pwd`
    exit 0
    else
    sleep 10
    fi
    done &

  • Thema von bichlerp im Forum PRC

    /* Beispiel 9.3 */
    /* Schuelerkartei verwalten */

    #include
    #include
    #include
    #include

    struct Datum
    { int tag;
    char mon[4];
    int jahr;
    };

    struct Schueler
    { int gueltig;
    char name[41],adr[41];
    Datum geburt;
    };

    enum Aktion {erstellen,erweitern};

    void ausgabe(Schueler schuelerdaten);
    void eingabe(Schueler *schuelerdaten);
    void lesen(char dateiname[ ]);
    void dateischreiben
    (Aktion aktion,char dateiname[ ]);
    void aendern(char dateiname[ ]);
    void packen(char dateiname[ ]);

    const int sl=sizeof(Schueler);
    /* Satzlaenge */

    void ausgabe(Schueler schuelerdaten)
    { if (!schuelerdaten.gueltig)
    printf("GELOESCHT:\n");
    printf("Name: %s\n",schuelerdaten.name);
    printf("Adr: %s\n",schuelerdaten.adr);
    printf("Geburtsdatum:\n");
    printf(" TT: %d\n",
    schuelerdaten.geburt.tag);
    printf(" MMM: %s\n",
    schuelerdaten.geburt.mon);
    printf("JJJJ: %d\n",
    schuelerdaten.geburt.jahr);
    } /* ausgabe */

    void eingabe(Schueler *schuelerdaten)
    { schuelerdaten->gueltig=1;
    printf("Name: ");
    scanf("%40s",schuelerdaten->name);
    printf("Adr: ");
    scanf("%40s",schuelerdaten->adr);
    printf("Geburtsdatum\n");
    printf(" TT:");
    scanf("%2d",&(schuelerdaten->geburt.tag));
    printf(" MMM:");
    scanf("%3s",&(schuelerdaten->geburt.mon));
    printf(" JJJJ:");
    scanf
    ("%4d",&(schuelerdaten->geburt.jahr));
    } /* eingabe */

    void lesen(char dateiname[ ])
    { FILE *kartei;
    Schueler schuelerdaten;
    kartei=fopen(dateiname,"rb");
    while (fread(&schuelerdaten,sl,1,kartei))
    { if (!schuelerdaten.gueltig) continue;
    clrscr();
    ausgabe(schuelerdaten);
    gotoxy(1,12);
    printf("Weiter mit irgendeiner Taste");
    getch();
    }
    fclose(kartei);
    } /* lesen */

    void dateischreiben(Aktion aktion,char dateiname[ ])
    { FILE *kartei;
    Schueler schuelerdaten;
    char antwort;
    if (aktion==erstellen)
    kartei=fopen(dateiname,"wb");
    else /* erweitern */
    { kartei=fopen(dateiname,"ab");
    fseek(kartei,0L,2);
    }

    do
    { clrscr();
    eingabe(&schuelerdaten);
    fwrite(&schuelerdaten,sl,1,kartei);
    printf("\nWeitere Eingaben (J/N)");
    antwort=toupper(getche());
    } while (antwort != 'N');
    fclose(kartei);
    } /* dateischreiben */

    void aendern(char dateiname[ ])
    { int katnr;
    FILE *kartei;
    Schueler schuelerdaten;
    char antwort;
    clrscr();
    printf("Katalognummer:");
    scanf("%2d",&katnr);
    printf("\n\n");

    kartei=fopen(dateiname,"r+b");
    fseek(kartei,(long)(katnr-1)*sl,0);
    fread(&schuelerdaten,sl,1,kartei);
    ausgabe(schuelerdaten);
    printf("\n\n");

    printf("Loeschen (J/N)");
    antwort=toupper(getch());
    printf("\n\n");
    schuelerdaten.gueltig=antwort=='N';

    if (schuelerdaten.gueltig)
    eingabe(&schuelerdaten);
    fseek(kartei,(long)(-sl),1);
    fwrite(&schuelerdaten,sl,1,kartei);
    fclose(kartei);
    } /* aendern */

    void packen(char dateiname[ ])
    { FILE *eing,*ausg;
    Schueler schuelerdaten;
    char temp[ ]="TEMP";
    eing=fopen(dateiname,"rb");
    ausg=fopen(temp,"wb");
    while(fread(&schuelerdaten,sl,1,eing))
    if (schuelerdaten.gueltig)
    fwrite(&schuelerdaten,sl,1,ausg);
    fclose(ausg);
    fclose(eing);
    unlink(dateiname);
    rename(temp,dateiname);
    } /* packen */

    void main()
    { int antwort;
    char dateiname[30];
    strcpy(dateiname,"KARTEI");

    do
    { clrscr();
    gotoxy(1,5);
    printf("Erstellen......\n");
    printf("Erweitern......\n");
    printf("Lesen..........\n");
    printf("Aendern........\n");
    printf("Packen.........

    \n");
    printf("Fertig.........\n\n\n");
    printf("Auswahl........< >\n");
    gotoxy(17,13);
    antwort=toupper(getche());
    printf("\n");

    switch (antwort)
    { case 'E':
    dateischreiben(erstellen,dateiname);
    break;
    case 'W':
    dateischreiben(erweitern,dateiname);
    break;
    case 'L':
    lesen(dateiname);
    break;
    case 'A':
    aendern(dateiname);
    break;
    case 'P':
    packen(dateiname);
    break;
    }
    } while (antwort != 'F');
    } /* b093 */
    

  • Thema von bichlerp im Forum News

    Alle Mitglieder müssen sich neu registrieren!

Inhalte des Mitglieds bichlerp
Beiträge: 3
Xobor Forum Software von Xobor | Forum, Fotos, Chat und mehr mit Xobor
Datenschutz