Scp-Skript meldet Fehler

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von mr-sansibar, 08.01.2008.

  1. #1 mr-sansibar, 08.01.2008
    mr-sansibar

    mr-sansibar Jungspund

    Dabei seit:
    08.01.2008
    Beiträge:
    10
    Zustimmungen:
    0
    Hallo !
    Ich habe ein skript geschrieben der von einem server auf den anderen server was transferiert.
    aber komischerweise kommt hin und wieder eine Fehlermeldung:

    (10 - 09: value too great for base (error token is "09")

    nach mehrmaligen ausführen klappt es dann

    Code:
    
    #!/usr/bin/bash
    
    
    
    tageszeit=$(TZ=$(date +%Z)+$((24*1 - ($(date +%H) - $(date -u +%H)) )) date +"%Y%m%d")
    for d in /all_logs/logger/*; do
    test -d "$d" || continue
    echo $tageszeit
    server1:/y/y/y/y/.
    scp $d/*appl_logs*$tageszeit*.tar server2:/ora_x/x/x/x/.
    done
    
    
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 Wolfgang, 08.01.2008
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Hallo
    Was du da mit date machst ist recht seltsam. ;)
    Genau hier liegt der Fehler.
    Wenn bei der Uhrzeit 09 rauskommt, kann die Shell das nicht arithmetisch verarbeiten. Die Shell rechnet nur mit ganzen Zahlen ohne Vornullen!

    Aber was willst du mit dieser Datumsberechnung?

    Gruß Wolfgang
     
  4. #3 mr-sansibar, 08.01.2008
    mr-sansibar

    mr-sansibar Jungspund

    Dabei seit:
    08.01.2008
    Beiträge:
    10
    Zustimmungen:
    0

    ich will von der unix system datum - 1 machen.

    (08.01.2008) -1
     
  5. #4 Wolfgang, 08.01.2008
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Das geht aber einfacher wenn du GNU date verwendest:
    Code:
    gestern=$(date -d"yesterday" +%d%m%Y);
    echo $gestern
    07012008
    
    Spart die Rechnerei. ;)

    Gruß Wolfgang
     
  6. #5 mr-sansibar, 08.01.2008
    mr-sansibar

    mr-sansibar Jungspund

    Dabei seit:
    08.01.2008
    Beiträge:
    10
    Zustimmungen:
    0
    danke, aber
    yesterday wird nicht erkannt !

    was ist genau GNU.
    habe leider mit shell-skripting nicht soviel erfahrung !
     
  7. #6 Wolfgang, 08.01.2008
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Zu GNU!
    Welche bash bzw welches date hast du?
    Code:
    $ date --version
    date (GNU coreutils) 5.97
    
    Code:
    
    $ date -d"1 day ago"
    Mo 7. Jan 15:02:12 CET 2008
    wolle@Nietzsche:~/cache
    $ date -d"1 day ago" +%j
    007
     
     
  8. #7 mr-sansibar, 08.01.2008
    mr-sansibar

    mr-sansibar Jungspund

    Dabei seit:
    08.01.2008
    Beiträge:
    10
    Zustimmungen:
    0

    bekomme fehermeldung:

    -bash-3.00$ $ date --version
    -bash: $: command not found
     
  9. Gast1

    Gast1 Guest

    Code:
    -bash-3.00$ [B][COLOR="Red"]$[/COLOR][/B] date --version
    -bash: $: command not found
    *LOL*

    Das ganze ohne den $ am Anfang.
     
  10. #9 mr-sansibar, 08.01.2008
    mr-sansibar

    mr-sansibar Jungspund

    Dabei seit:
    08.01.2008
    Beiträge:
    10
    Zustimmungen:
    0

    danke, aber klappt nicht.
    ist es vllt. daran das ich im bash modus diesen befehl eingebe ?
     
  11. #10 Wolfgang, 08.01.2008
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Was meinst du mit bashmodus?
    Einfach eine shell öffnen
    dort eingeben:
    Code:
    date --version
    
    BTW Ich habe oben nur meine Shell Zitiert!
     
  12. #11 mr-sansibar, 08.01.2008
    mr-sansibar

    mr-sansibar Jungspund

    Dabei seit:
    08.01.2008
    Beiträge:
    10
    Zustimmungen:
    0
    sorrry !

    -bash-3.00$ date --version
    date: illegal option -- version
    usage: date [-u] mmddHHMM[[cc]yy][.SS]
    date [-u] [+format]
    date -a [-]sss[.fff]
     
  13. #12 Wolfgang, 08.01.2008
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Also dann lies dir mal das durch
    Oder ich frage direkt auch hier wieder mal:
    Von welchem OS reden wir?

    Die Manpage zu deinem date gibt dir übrigens auch Auskunft, ob es -d gibt, eventuell sogar über die Version.
     
  14. #13 mr-sansibar, 08.01.2008
    mr-sansibar

    mr-sansibar Jungspund

    Dabei seit:
    08.01.2008
    Beiträge:
    10
    Zustimmungen:
    0
    OS: Solaris 10

    und die option -d gibt es nicht, laut meiner Manpage !
     
  15. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  16. #14 Wolfgang, 08.01.2008
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Schön, dass wir schon im 13 Beitrag erfahren über was wir reden.

    Ich habe hier kein Solaris zur Hand.
    Aber wenn du nicht die Möglichkeit hast dir das GNU date zu installieren, dann musst du eben rechnen.
    Nur musst du die Vornullen vor der Berechnung entfernen.
    Z.B. indem du den Tag einzeln ermittelst und dann die 0 (Null) entfernst bevor du 1 abziehst.
     
  17. #15 mr-sansibar, 08.01.2008
    mr-sansibar

    mr-sansibar Jungspund

    Dabei seit:
    08.01.2008
    Beiträge:
    10
    Zustimmungen:
    0
    vielen dank !
    GNU date kann ich leider nicht installieren.
    dann muss ich eben auf dein hinweiss zurück greifen.

    vg, mr-sansibar
     
Thema:

Scp-Skript meldet Fehler

Die Seite wird geladen...

Scp-Skript meldet Fehler - Ähnliche Themen

  1. FSF vermeldet erfolgreiche Spendenkampagne

    FSF vermeldet erfolgreiche Spendenkampagne: Die Free Software Foundation hat ihre Winter-Spendenkampagne mit 542.000 US-Dollar und fast 500 neuen Mitgliedern abgeschlossen. Weiterlesen...
  2. Linux Foundation vermeldet fünf neue Mitglieder

    Linux Foundation vermeldet fünf neue Mitglieder: Die Linux Foundation, das Industriekonsortium zur Förderung von Linux, hat fünf weitere Mitglieder aufgenommen. Es handelt sich dabei um kleinere...
  3. Desura: Eigentümer meldet Insolvenz an

    Desura: Eigentümer meldet Insolvenz an: Die Mutterfirma der Spielevertriebsplattform Desura, Bad Juju, ist Medienberichten zufolge insolvent. Entsprechende Gerüchte über finanzielle...
  4. drawcut meldet /dev/sda2 doesnt exist obwohl vorhanden

    drawcut meldet /dev/sda2 doesnt exist obwohl vorhanden: Hallo zusammen, ich nun versucht das erstelle Redhat7 Image auch auf der neuen Hardware zu bespielen (WIr haben dafür ein System ) Wenn ich...
  5. GNU Hurd meldet sich zu Wort

    GNU Hurd meldet sich zu Wort: Auf der Linux-Konferenz FOSDEM gab ein Entwickler einen Überblick über den derzeitigen Stand des Projekts. Weiterlesen...