Benutzerdefinierte Suche

command cd im script

  1. orion

    orion Thread StarterMacUser Mitglied

    Mitglied seit:
    19.04.2003
    Beiträge:
    95
    Zustimmungen:
    0
    habe in einem script den command "cd /irgendein verzeichnis" eingesetzt.
    Danach weitere Befehle, die auch mit gewechseltem Verzeichnis durchgeführt werden. Beim Verlassen des scripts bin ich aber wieder im ursprünglichen Verzeichnis. Wie kann ich das Verzeichnis aber über ein script endgültig wechseln?

    danke orion
     
    orion, 25.08.2004
  2. canfAN

    canfANMacUser Mitglied

    Mitglied seit:
    06.02.2003
    Beiträge:
    66
    Zustimmungen:
    0
    Du musst das Skript in der selben Shell und nicht in einer Subshell ausführen.
    Das machst du indem du einen Punkt voranstellst (Leerzeichen danach beachten)

    Code:
    . /pfad/zu/deinem/skript
    
    Aufrufe in Form von ./programm, /usr/bin/programm oder sh programm rufen immer eine Subshell auf in der das Programm/Skript ausgeführt wird, Änderungen werden mit dem Beenden dieser Subshell und somit auch mit Ende des Programms verworfen.
     
    canfAN, 26.08.2004
  3. orion

    orion Thread StarterMacUser Mitglied

    Mitglied seit:
    19.04.2003
    Beiträge:
    95
    Zustimmungen:
    0
    Code:
    . /pfad/zu/deinem/skript
    
    Leider wird der Punkt . als command pwd interpretiert und führt dann zu einer Fehlermeldung, weil er ja falsche Parameter mitbekommt.
     
    orion, 26.08.2004
  4. TheFallenAngel

    TheFallenAngelMacUser Mitglied

    Mitglied seit:
    27.10.2003
    Beiträge:
    501
    Zustimmungen:
    7
    es muss heissen . ./script
     
    TheFallenAngel, 26.08.2004
  5. orion

    orion Thread StarterMacUser Mitglied

    Mitglied seit:
    19.04.2003
    Beiträge:
    95
    Zustimmungen:
    0
    dann kommt halt eben diese Meldung

    usage: pwd [-LP]

    der Punkt . steht für pwd
     
    orion, 26.08.2004
  6. TheFallenAngel

    TheFallenAngelMacUser Mitglied

    Mitglied seit:
    27.10.2003
    Beiträge:
    501
    Zustimmungen:
    7
    Hast du vielleicht einen alias gesetzt ? sitzt jetzt nicht am mac, aber hier unter Linux geht das so...
     
    TheFallenAngel, 27.08.2004
  7. orion

    orion Thread StarterMacUser Mitglied

    Mitglied seit:
    19.04.2003
    Beiträge:
    95
    Zustimmungen:
    0
    nein, diesen alias habe ich nicht gesetzt, das ist vorgegeben beim Mac.
     
    orion, 27.08.2004
  8. orion

    orion Thread StarterMacUser Mitglied

    Mitglied seit:
    19.04.2003
    Beiträge:
    95
    Zustimmungen:
    0
    jetzt habe ich die Lösung:

    der Aufruf, der das script veranlasst keine subshell aufzurufen lautet

    source pfad/zum/script
     
    orion, 27.08.2004
  9. TheFallenAngel

    TheFallenAngelMacUser Mitglied

    Mitglied seit:
    27.10.2003
    Beiträge:
    501
    Zustimmungen:
    7
    so extra am mac getestet, ich habe keinen alias auf ".".

    Wuerde meiner Meinung nach auch keinen Sinn machen, weil du nichtmal mehr Programme mit ./Programm starten koenntest.
     
    TheFallenAngel, 27.08.2004
  10. orion

    orion Thread StarterMacUser Mitglied

    Mitglied seit:
    19.04.2003
    Beiträge:
    95
    Zustimmungen:
    0

    Mit "./skript" wird Skript in subshell durchgeführt
    Mit "source skript" wird Skript in aufrufender Shell abgearbeitet
    Mit "." allein wird pwd durchgeführt.
    Mit ". ./skript" wird pwd durchgeführt mit Parameter "./skript" was zu
    einem fehler führt.
    So ist es bei mir.

    Vielen Dank
     
    orion, 27.08.2004
Die Seite wird geladen...
Ähnliche Themen - command script
  1. Herr Patschulke
    Antworten:
    8
    Aufrufe:
    424
    Herr Patschulke
    28.12.2016
  2. lazybaer
    Antworten:
    6
    Aufrufe:
    527
    trixi1979
    26.12.2015
  3. lazybaer
    Antworten:
    1
    Aufrufe:
    853
    falkgottschalk
    05.05.2012
  4. patrick152
    Antworten:
    2
    Aufrufe:
    1.146
  5. Enti
    Antworten:
    5
    Aufrufe:
    1.656