1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  2. Unsere jährliche Weihnachts-Banner-Aktion hat begonnen! Wir freuen uns auf viele, viele kreative Vorschläge.
    Mehr dazu könnt Ihr hier nachlesen: Weihnachtsbanner 2016

    Information ausblenden

shell-script für osx und linux scheitert an 'mktemp'

Dieses Thema im Forum "Unix & Terminal" wurde erstellt von koksnutte, 24.08.09.

  1. koksnutte

    koksnutte Ribston Pepping

    Dabei seit:
    13.04.05
    Beiträge:
    299
    'mktemp' unter linux erstellt eine datei mit einem einzigartigen namen in /tmp
    unter osx funktioniert das nicht, man muss um das gleiche ergebnis zu erhalten 'mktemp -t NAME' ausführen (die datei wird zwar in $TMPDIR erstellt, aber das ist ja egal).
    das wiederum funktioniert unter linux nicht richtig, die datei wird zwar erstellt, erhält aber keinen einzigartigen namen... :mad:

    gibts jetzt irgend einen trick um auf beiden systemen mit dem gleichen mktemp befehl eine einzigartige datei in einem temporären ordner zu erstellen oder muss ich dafür "pfuschen" und sowas in mein skript einbauen:
    'mktemp -t TEST$RANDOM'
     
  2. MacMark

    MacMark Biesterfelder Renette

    Dabei seit:
    01.01.05
    Beiträge:
    4.708
    Der Befehl hat zwei große Varianten. Hast Du die erste mit den templates schon probiert?

    Code:
    mktemp [-d] [-q] [-t prefix] [-u] template ...
    mktemp [-d] [-q] [-u] -t prefix
     
  3. Cathul

    Cathul Tydemans Early Worcester

    Dabei seit:
    26.10.07
    Beiträge:
    397
    Wieso fragst Du im Script nicht erst die Betriebssystemversion ab und rufst dann per if/else Verzweigung mktemp mit den richtigen Optionen entsprechend dem aktuellen Betriebssystem auf?
     
  4. koksnutte

    koksnutte Ribston Pepping

    Dabei seit:
    13.04.05
    Beiträge:
    299
    das hatte ich mir natürlich auch schon überlegt, nur wäre die methode für diesen zweck im vergleich zur vorher von mir geposteten möglichkeit (mktemp -t TEST$RANDOM) noch umständlicher.

    hab das ganze übrigens so gelöst: mktemp -t test.XXXX
    mktemp tauscht die X gegen zufällige zeichenfolgen.
     

Diese Seite empfehlen