ls in bash geht nicht mehr...?!?

  1. zauberer

    zauberer Thread StarterMacUser Mitglied

    Mitglied seit:
    11.01.2004
    Beiträge:
    218
    Zustimmungen:
    0
    Ich bekomme in der bash auf ls hin immer als Fehlermeldung

    Segmentation fault

    Die tcsh läuft dagegen ohne irgendwelche Probleme.

    Keine Ahnung seit wann das Problem besteht, aber es bestand nicht immer.
    Ich benutze nur selten das Terminal und modifiziere auch nichts. Habe lediglich schon ein paar Sachen mit FinkCommander geladen.
     
    zauberer, 30.01.2005
  2. Junior-c

    Junior-c

    Ein Neustart hat auch nichts gebracht? Lösch mal die Terminal plist in ~/Library/Preferences (com.apple.Terminal.plist) und starte das Terminal neu.

    MfG, juniorclub.
     
    Junior-c, 31.01.2005
  3. zauberer

    zauberer Thread StarterMacUser Mitglied

    Mitglied seit:
    11.01.2004
    Beiträge:
    218
    Zustimmungen:
    0
    schade hat leider nichts gebracht ...

    Danke für den Tipp. Leider sind lediglich die Einstellungen zurückgesetzt.

    ls - weiterhin bei bash fehlerhaft

    unter bin habe ich ls gefunden und "doppelgeklickt" - das funktioniert!

    Fehler der bash?
     
    zauberer, 31.01.2005
  4. ratti

    rattiMacUser Mitglied

    Mitglied seit:
    09.05.2004
    Beiträge:
    1.515
    Zustimmungen:
    56
    which ls
    (Sollte dann auch /bin/ls ergeben)

    alias | grep ls
    gibt vermutlich aus, daß simples eintippen von "ls" gar nicht "ls" bedeutet, sondern etwa sowas:

    alias ls='ls --color=auto'

    (Das ist meine Linux-Kiste... darf also bei dir was anderes sein...)
    Ebendieser Parameter könnte dafür sorgen, daß der Kram crasht. (Was er natürlich nicht sollte.)
    Kannst ja mal ausprobieren:

    unalias ls
    ls
    (Ungetestet.)

    Gruß, Ratti
     
    ratti, 31.01.2005
  5. zauberer

    zauberer Thread StarterMacUser Mitglied

    Mitglied seit:
    11.01.2004
    Beiträge:
    218
    Zustimmungen:
    0
    $ which ls
    /sw/bin/ls

    % which ls
    /bin/ls


    Tata! Guter Tipp. Die zweite Hälfte habe ich aber nicht gerafft.
    Soweit ich weiss, ist sw ein Verzeichniss, in dem die Finksachen abgelegt werden. Mir fällt ein, dass ich auch das TeX System mal mit dem i Installer auf die Platte gebannt hatte.

    Wie kann ich denn den Ort ändern bzw. wo ist originär belegt, wo nach dem entsprechenden Befehl gesucht werden soll. Hier scheint ja auch der Fehler zu liegen.

    Eine .term habe ich nur für mein tcsh gefunden. Muss ich jetzt eine anlegen? Wie kann der Fehler eigentlich zustande gekommen sein?
     
    zauberer, 31.01.2005
  6. ratti

    rattiMacUser Mitglied

    Mitglied seit:
    09.05.2004
    Beiträge:
    1.515
    Zustimmungen:
    56
    Moin,

    Wer sagt's denn. Das is'n Unix. Da hat alles seinen Grund. :)

    Das mit dem alias? Damit kann man sich Verweise definieren. Zum Beispiel um DOS-Umsteigern alte Gewohnheiten zu ermöglichen:

    alias dir=ls

    ...dann kann man auch "dir" eintippen. Vielfach wird der Befehl genutzt, indem der Alias auf das Original verweist, aber zusätzliche Parameter anfügt. Typisches Beispiel neben dem angegebenen ls ist:

    alias rm=rm -i

    ...dann fragt "rm" immer nach, ob es eine Datei löschen darf. Machen Provider gern auf ihren Kisten.

    Gesucht wird nach Kommandos in folgenden Ordnern in ebendieser Reihenfolge:

    echo $PATH

    Den kann man an sehr vielen Orten verändern. Hast du eine ~/.bashrc oder ~/.profile?

    Oder, einfach mal:

    grep PATH ~/.*

    oder

    find ~/ -mindepth 1 -maxdepth 1 -type f -exec grep PATH "{}" \;

    Irgendwo steht vermutlich sowas in der Art:

    export PATH=/sw/bin:$PATH

    Gruß, Ratti
     
    ratti, 01.02.2005
  7. maceis

    maceisMacUser Mitglied

    Mitglied seit:
    24.09.2003
    Beiträge:
    16.696
    Zustimmungen:
    602
    Du hattest/hast fink installiert und fink hat Dir Deine PATH Variable in der bash "verbogen".
    Nun wir das fink ls in /sw/bin schneller gefunden als das Mac OS X ls in /bin.
    Was Du jetzt am Besten machst hängt davon ab, ob Du fink noch verwenden möchtest.
    Ein erster workaround wäre:
    sudo mv /sw/bin/ls /sw/bin/ls.fink

    HTH
     
    maceis, 01.02.2005
  8. zauberer

    zauberer Thread StarterMacUser Mitglied

    Mitglied seit:
    11.01.2004
    Beiträge:
    218
    Zustimmungen:
    0
    ~/.bashrc oder ~/.profile habe ich nicht gefunden. Naja über die normale Suche.
    Folgende Sachen wurden ausgepuckt:


    echo $PATH
    /sw/bin:/sw/sbin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/teTeX/bin/powerpc-apple-darwin-current:/usr/X11R6/bin
    rechner:~ nutzer$ grep PATH ~/.*
    grep: /Users/nutzer/.: Operation not permitted
    grep: /Users/nutzer/..: Operation not permitted
    grep: /Users/nutzer/.Trash: Operation not permitted
    /Users/nutzer/.bash_history:pATH=/usr/TeX/bin/powerpc-darwin6.6:$PATH; export PATH
    /Users/nutzer/.bash_history:pATH=/usr/TeX/bin/powerpc-darwin6.3:$PATH;*export*PATH
    /Users/nutzer/.bash_history:pATH=/usr/TeX/bin/powerpc-darwin6.3:$PATH;*export*PATH
    /Users/nutzer/.bash_history:pATH=/usr/TeX/bin/powerpc-darwin6.3:$PATH; export PATH
    /Users/nutzer/.bash_history:pATH=/usr/TeX/bin/powerpc-darwin6.6:$PATH; export PATH
    grep: /Users/nutzer/.dvdcss: Operation not permitted
    grep: /Users/nutzer/.gimp-2.0: Operation not permitted
    grep: /Users/nutzer/.gimp-2.0-etc: Operation not permitted
    grep: /Users/nutzer/.java: Operation not permitted
    grep: /Users/nutzer/.jedit: Operation not permitted
    grep: /Users/nutzer/.jpi_cache: Operation not permitted
    grep: /Users/nutzer/.lyx: Operation not permitted
    grep: /Users/nutzer/.mplayer: Operation not permitted
    grep: /Users/nutzer/.xnview: Operation not permitted

    rechner:~ nutzer$ find ~/ -mindepth 1 -maxdepth 1 -type f -exec grep PATH "{}" \;
    PATH=/usr/TeX/bin/powerpc-darwin6.6:$PATH; export PATH
    PATH=/usr/TeX/bin/powerpc-darwin6.3:$PATH;*export*PATH
    PATH=/usr/TeX/bin/powerpc-darwin6.3:$PATH;*export*PATH
    PATH=/usr/TeX/bin/powerpc-darwin6.3:$PATH; export PATH
    PATH=/usr/TeX/bin/powerpc-darwin6.6:$PATH; export PATH


    sudo mv /sw/bin/ls /sw/bin/ls.fink - was genau wird dabei verschoben bzw. was soll ls.fink darstellen? Und ja, ich würde gerne wieder auf fink zurück kommen. Hmm Wuselkram :rolleyes:
     
    zauberer, 01.02.2005
  9. ratti

    rattiMacUser Mitglied

    Mitglied seit:
    09.05.2004
    Beiträge:
    1.515
    Zustimmungen:
    56
    Ich glaube nicht, daß man per Apfel-F unsichtbare Dateien findet.

    Ganz offensichtlich, /sw/bin ist im Suchpfad am höchsten priorisiert.

    Nichts sinnvolles dabei. Bitte nochmal probieren mit "/etc/" statt "~/".


    Nix Wuselkram. Steht alles im Handbuch. Damit wird die Datei umbenannt in "ls.fink", sodaß "ls" wieder die OS-X-Version aufruft. Deinen Segafault bekommst du dann stattdessen mit "ls.fink" als Befehl.

    Ich halte das nicht für sinnvoll. Dann lieber gleich "mv /sw /sw.BEISEITE", bis man das Problem geklärt hat.

    Gruß, Ratti
     
    ratti, 01.02.2005
  10. oneOeight

    oneOeightMacUser Mitglied

    Mitglied seit:
    23.11.2004
    Beiträge:
    48.160
    Zustimmungen:
    3.885
    wär es nicht einfacher das ls was in /sw/bin ist mal neu zu compilieren?
    wo immer es auch her kam ;)
     
    oneOeight, 01.02.2005
Die Seite wird geladen...
Ähnliche Themen - bash geht
  1. Sascha_77
    Antworten:
    10
    Aufrufe:
    1.272
    Sascha_77
    13.01.2014
  2. benqsimens
    Antworten:
    3
    Aufrufe:
    1.185
    weltenbummler
    03.04.2013
  3. 3wayhandshaker
    Antworten:
    3
    Aufrufe:
    876
    DrunkenFreak
    14.11.2010
  4. mahed
    Antworten:
    17
    Aufrufe:
    2.705
    Olivetti
    17.10.2010
  5. tuxlookalike
    Antworten:
    6
    Aufrufe:
    712