Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?
Forum>Software>Terminal und sein Folgen

Terminal und sein Folgen

MacSnake
MacSnake05.12.1016:45
Hallo liebe Mac-Gemeinde,
hab da ein Problem.
Ich musste im Terminal etwas eintippen um ein Problem zu lösen, aber es brachte nix.

Nun habe ich in sämtlichen Ordnern noch zusätzliche Ordner (siehe Bild)

Wie bekomme ich das wieder weg ?


Beste Grüße und Vielen Dank schonmal für Eure Hilfe


Rolf
0

Kommentare

steinb_i05.12.1016:51
Hilft das weiter: http://mac.equando.de/mac-osx/content/view/21/29/ ?
0
violenCe05.12.1016:52
was hast du denn im terminal eingetippt?

rm bzw rmdir um die manuell zu löschen?

oder willst du die versteckten elemente wieder ausblenden?
0
sierkb05.12.1017:07
defaults write com.apple.finder AppleShowAllFiles -bool FALSE

Damit das Ganze wirksam wird, muss anschließend der Finder neu gestartet werden, z.B. mit:

osascript -e 'tell application "Finder" to quit'; osascript -e 'tell application "Finder" to activate'

oder etwas knackiger mit

killall Finder

Erstere Methode den Finder neu zu starten, ist etwas galanter/schonender als die Methode über "killall Finder", weil sie gegenüber der killall-Methode die Positionen und Größen etwaiger gerade geöffneter Finder-Fenster erhält.

Alternativ kann der Finder auch neu gestartet werden durch Menüleiste Apfel "Sofort beenden..." Finder oder durch einfaches Aus- und wieder Einloggen des Benutzers.
0
sierkb05.12.1017:16
Nachtrag:

Evtl. vorher/nachher zur eigenen Gewissheit mit
defaults read com.apple.finder AppleShowAllFiles
den Wert von AppleShowAllFiles auslesen.
Wenn "1" oder "TRUE" oder irgendwas Äquivalentes ausgegeben wird (was ich in diesem Fall stark annehme) und nicht "0" oder "FALSE" bzw. was Äquivalentes, dann diesen Wert nach obiger Methode auf "0" bzw. "FALSE" zurücksetzen/korrigieren.
0
schlawuzelbaer05.12.1017:20
Das bekommt man auch mit dem Programm Tinker Tool gelöst.
0
sierkb05.12.1017:48
schlawuzelbaer
Das bekommt man auch mit dem Programm Tinker Tool gelöst.

Oder einem anderen Programm...
Kann man. Muss man aber nicht. TinkerTools (gleiches ebenso auch bzgl. sehr ähnlicher Programme wie Onyx, Maintenance, MacPilot, Deeper, IceClean, Secrets etc. pp.) macht diesbzgl. im Wesentlichen aber auch nix Anderes als das, was ich oben geschrieben habe: auf bereits bestehende Systemfunktionen zurückgreifen und diese manipulieren (und zwar durchaus auf dieselbe Weise wie oben genannt) und in vielerlei Hinsicht derlei Funktionalitäten des Systems in ein aufwendigeres GUI packen, die man eben mit solchen Einzeiler eigentlich auch flugs im Terminal erreichen kann (der Fragesteller war zuvor ja schon mal im Terminal bzw. hat es zuvor ja schon mal genutzt), ohne ein zusätzliches Programm wie TinkerTools herunterladen/installieren oder gar kaufen zu müssen, welches für solche Zwecke zwar "nice to have" ist aber nicht unbedingt "need to have"...

Es gibt für alles Mögliche irgendwelche Progrämmchen, die irgendwas anbieten oder wiederholen, das es eigentlich im System als Funktionalität schon gibt -- die Frage ist, ob man sie wirklich braucht bzw. ob man für sowas gerne um selbst einfachste und banale Dinge noch ein "rosa Schleifchen" haben will...
0
MacSnake
MacSnake05.12.1020:15
Ok, habt vielen lieben Dank für Eure Hilfe.

Die Tipps von sierkb haben geholfen.


Da wird Dein Stiefel morgen schön voll sein !


Wünsch Euch einen schönen Nikolaustag morgen!!!!!

Gruß
Snake
0
almdudi
almdudi05.12.1020:17
Na ja, zugunsten einiger dieser Tools spricht halt, daß man sie mit einem einzigen Klick abrufen kann (z.B. 'Blind', dass einfach die Anzeige der versteckten Dateien an- und abschaltet) und auch in der Symbolleiste der Finderfenster verankern kann.
Oder daß Leute, die nicht wissen, was sie machen, damit nicht durch einen simplen Tippfehler (oder dadurch, daß sie Genauigkeit für unwichtig halten) großen Schaden anrichten (z.B. durch ein Leerzeichen hinter einem Schrägstrich).
Dagegen spricht natürlich, daß sie manchmal Möglichkeiten anbieten, die unbedarfte Gemüter ohne Nachdenken anwenden, womit sie auch großen Schaden anrichten können…
Ich find's ganz schön, daß viele Wege ins RAM führen (wie der Volksmund so sagt).

Und daß das Terminal nicht für jeden die Lösung ist, zeigt ja der Eröffnungspost: 'musste' 'was' eintippen (und was? - weiß er vermutlich nicht mehr). Brachte keine Lösung (war also wohl keineswegs ein guter Rat oder die richtige Lösung), bewirkte aber was völlig anderes.

Dann lieber ein, zwei Progrämmchen installiert, bei denen man mit Mitdenken wissen kann, was man macht. Muß ja nicht das übelbeleumundete Onyx sein, das sich in problematischer Weise mit root-Rechten versieht.

Nachtrag:
Und wie gefährlich das Terminal sein kann sieht man ja an dem Vorschlag in der zweiten Antwort, die Systemordner mit rm zu löschen…
0
sierkb05.12.1021:16
almdudi
Na ja, zugunsten einiger dieser Tools spricht halt, daß man sie mit einem einzigen Klick abrufen kann (z.B. 'Blind', dass einfach die Anzeige der versteckten Dateien an- und abschaltet) und auch in der Symbolleiste der Finderfenster verankern kann.

Abgesehen davon, dass Blind vom betreffenden Entwickler nicht mehr gewartet wird und uralt ist bzw. nur noch schwer im Netz aufzufinden ist -- hast Du Dir mal Blind genauer angeschaut, was es macht?
Ich habe mir zufällig genau dieses Programm nämlich mal an Land gezogen bzw. dessen Source-Code irgendwo aus den Untiefen des Netzes bzw. auf einer im Internet Archiv gelagerten Kopie der Webseite des betreffenden Entwicklers.
Und ich habe es leicht für mich modifiziert und neu mit XCode übersetzt und gebaut.
Auch dieses Programm macht nichts anderes als obige Zeilen via Obj-C aufzurufen und ist im Grunde ein riesen Obj-C-Brimborium um diesen einen Einzeiler.
Was wohl auch der Grund ist, warum es sich nicht unbedingt weiter verbreitet hat bzw. warum der Entwickler es eingestellt hat. Weil Aufwand und Nutzen da nämlich in einem ungünstigen Verhältnis stehen, und man selbiges auch ebenso hinbekommen kann, indem man diesen Einzeiler z.B. in eine Automator-Action oder einen Automator-Workflow packt und daraus was mit dem Automator generieren lässt.
Und genauso machen es zahlreiche andere Progrämmchen, die zu diesem Thema zu finden sind. Die machen alle nix anderes als diesen obig von mir genannten Einzeiler aufzurufen.

Diesbzgl. relevante Zeilen in dem von Dir genannten Blind, hier mal der Hauptbestandteil von Blind in Form der Datei FinderRelaunchController.m:

#import "FinderRelaunchController.h"

void changeVisibilitySettings ( void ) {
    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
    int preferenceState;
    NSTask *task = [[NSTask alloc] init];
    NSPipe *newPipe = [NSPipe pipe];
    NSFileHandle *readHandle = [newPipe fileHandleForReading];
    NSData *inData;
    NSString *tempString;
    
    [task setLaunchPath:@"/usr/bin/defaults"];
    [task setArguments:[NSArray arrayWithObjects:@"read", @"com.apple.finder", @"AppleShowAllFiles", nil]];
    [task setStandardOutput:newPipe];
    [task setStandardError:newPipe];
    
    // Read current preferences
    [task launch];
    inData = [readHandle readDataToEndOfFile];
    tempString = [[NSString alloc] initWithData:inData encoding:NSASCIIStringEncoding];
    preferenceState = [tempString intValue];
    preferenceState = (preferenceState == 1) ? 0 : 1; // Change the preferenceState to the other value; 1 => 0; 0 => 1
    
    // Change preferences
    [task release];
    task = [[NSTask alloc] init];
    [task setLaunchPath:@"/usr/bin/defaults"];
    [task setArguments:[NSArray arrayWithObjects:@"write", @"com.apple.finder", @"AppleShowAllFiles", [NSString stringWithFormat:@"%d", preferenceState], nil]];
    [task launch];
    [task waitUntilExit];
    
    [task release];
    [tempString release];
    
    [pool release];
}

@implementation FinderRelaunchController

- (void)awakeFromNib {
    [errorWindow setLevel:NSScreenSaverWindowLevel-1];
    [self performSelectorOnMainThread:@selector(tryRelaunchingFinder:) withObject:nil waitUntilDone:NO];
}

- (IBAction)abort:(id)sender
{
    [NSApp terminate:sender];
}

- (IBAction)forceQuit:(id)sender
{
    changeVisibilitySettings();
    NSTask *forceQuitTask = [[NSTask alloc] init];
    [forceQuitTask setLaunchPath:@"/usr/bin/killall"];
    [forceQuitTask setArguments:[NSArray arrayWithObjects:@"Finder", nil]];
    [forceQuitTask launch];
    
    [forceQuitTask waitUntilExit];
    [forceQuitTask release];
    
    [NSApp terminate:sender];
}

- (IBAction)tryRelaunchingFinder:(id)sender
{
    NSAppleScript *relaunchScript = [[NSAppleScript alloc] initWithSource:@"tell application \"Finder\" to quit"];
    NSDictionary *errorDictionary = [[NSDictionary alloc] init];
    
    [relaunchScript executeAndReturnError:&errorDictionary];
    [errorWindow orderOut:nil];
    
    if ([errorDictionary count] == 0) { 
        //everything worked out, so let us change preferences, restart Finder and quit Blind
        changeVisibilitySettings();
        
        NSTask *launchTask = [[NSTask alloc] init];
        [launchTask setLaunchPath:@"/usr/bin/open"];
        [launchTask setArguments:[NSArray arrayWithObjects:@"-a", @"Finder", nil]];
        [launchTask launch];
        
        [launchTask waitUntilExit];
        [launchTask release];
        
        [NSApp terminate:nil];
    } else {
        [errorWindow orderFront:nil];
    }
}

@end

Blink ist also ein riesiger Code-Bohei um diesen schlichten Ein- oder maximal Zweizeiler, den ich oben bereits nannte (wenn Du Dir den Obj-C-Code anschaust, wirst Du den Ein-/Zweizeiler bzw. seine Bestandteile zu Deiner Verblüffung schnell wiedererkennen)!

Abgesehen von diesem Code-Overkill von Blind um diesen schnöden Einzeiler sollte diese Funktionalität des Anzeigen/Versteckens auf Knopfdruck meiner Meinung aber zum festen Bestandteil des Finders gehören; einen entsprechenden Bug habe ich mal bei Apple eingereicht, bisher aber keine Reaktion. Es ist mir ein absolutes Rätsel, wie Apple den Finder ohne ein eingebautes User Interface in Form eines entsprechenden Toolbar-Buttons oder Menüeintrags für diese Funktion ausliefern kann, denn sie wird mehr gebraucht als man gemeinhin denkt. Vor allem bei Entwicklern und Anwendern, die regelmäßig mit versteckten Dateien und dot-Dateien umgehen müssen (man denke da z.B. auch mal an .htaccess-Dateien bei Webinhalten, die der Finder einfach ausblendet und die man öfters auch gerne sehen und z.B. per FTP hochladen muss/möchte).
Oder daß Leute, die nicht wissen, was sie machen, damit nicht durch einen simplen Tippfehler (oder dadurch, daß sie Genauigkeit für unwichtig halten) großen Schaden anrichten (z.B. durch ein Leerzeichen hinter einem Schrägstrich).

Der Fragesteller hat ausdrücklich nach einer Terminal-Lösung gesucht bzw. deutlich gemacht, dass er schon mal im Terminal war, siehe seine gewählte Überschrift, siehe sein gewählter Text.
Dagegen spricht natürlich, daß sie manchmal Möglichkeiten anbieten, die unbedarfte Gemüter ohne Nachdenken anwenden, womit sie auch großen Schaden anrichten können…

Und das ist mit TinkerTools, Onyx und wie sie alle heißen, prinzipiell anders? Ich meine: das ist da prinzipiell genauso oder sogar noch gefährlicher: weil im Zweifel ohne Nachzudenken einfach drauflosgeklickt wird und meistens noch nichtmal die dem Programm beiliegende und erläuternde Hilfefunktion oder Dokumentation vorher gelesen wird. Nach dem Motto: "Dumm klickt gut!"
Ich find's ganz schön, daß viele Wege ins RAM führen (wie der Volksmund so sagt).

Ja. Das stellt auch niemand in Abrede.

Und daß das Terminal nicht für jeden die Lösung ist, zeigt ja der Eröffnungspost: 'musste' 'was' eintippen (und was? - weiß er vermutlich nicht mehr). Brachte keine Lösung (war also wohl keineswegs ein guter Rat oder die richtige Lösung), bewirkte aber was völlig anderes.
Dann lieber ein, zwei Progrämmchen installiert, bei denen man mit Mitdenken wissen kann, was man macht.

Eben nicht! Siehe zuvor Gesagtes bzgl. Drauflosklicken. Ein falscher Klick ohne Nachzudenken geht i.d.R. viel schneller vonstatten als ein normalerweise bewusst eingetippter Befehl...
Muß ja nicht das übelbeleumundete Onyx sein, das sich in problematischer Weise mit root-Rechten versieht.

Onyx ist im Prinzip unterm Strich weder schlechter noch besser als die TinkerTools (bzw. umgekehrt). Und auch die TinkerTools/TinkerTools System holen sich bei Bedarf mehr Rechte, wenn sie sie für ihre Arbeit benötigen.
Nachtrag:
Und wie gefährlich das Terminal sein kann sieht man ja an dem Vorschlag in der zweiten Antwort, die Systemordner mit rm zu löschen…

So wie ich das lese, war das kein Vorschlag, sondern eine (vielleicht nicht ganz so ernstgemeinte) Frage:
was hast du denn im terminal eingetippt?
rm bzw rmdir um die manuell zu löschen?

Das System kaputtkriegen kann man auch via Finder und Onyx/TinkerTools/etc.pp. wenn man es nur dumm genug anstellt. Zudem soll es ja sogar Zeitgenossen geben, die haben für root das Kennwort freigeschaltet (was an sich ja nicht verwerflich ist aber begründet sein sollte und eher von dem Wissenden vorgenommen werden sollte als von dem Unwissenden, der Unwissende sollte es lassen) und loggen sich als Krönung über die Anmeldung auf dem grafischen Desktop von root ein (ich denke da so mal an Uhlhorn) und nutzen damit das OS bzw. Applikationen oder gehen gar damit in Netz...
0
_mäuschen
_mäuschen05.12.1022:55

Ich hab seit zig Jahren diesen AppleScript in meinem AS-Applications-Menu


do shell script "if [ `defaults read com.apple.finder AppleShowAllFiles` == 1 ]; then
 defaults write com.apple.finder AppleShowAllFiles 0
 else
 defaults write com.apple.finder AppleShowAllFiles 1
 fi"

tell application "Finder" to quit
delay 1
tell application "Finder" to launch





                                                                                    

0
almdudi
almdudi06.12.1013:34
@sierkb: Du hast dir ja viel Arbeit gemacht. Erstmal danke dafür, und ich will das auch nicht groß diskutieren, nur zwei Anmerkungen:
1. Der Satz im zweiten Post kommt mir nicht wie eine Frage vor nach dem bereits gemachten. Was sollte rm damit zu tun haben, daß versteckte Dateien auftauchen? Und wenn, dann ist es arg gefährlich formuliert.
2. Der von dir zitierte Absatz, "Dagegen spricht natürlich, daß sie manchmal Möglichkeiten anbieten, die unbedarfte Gemüter ohne Nachdenken anwenden, womit sie auch großen Schaden anrichten können…" bezieht sich ja ganz eindeutig auf Tools ("sie") und nicht auf Terminalbefehle.

Ich bleibe dabei, daß Tools Vorteile haben. Wie groß da außenrum was programmiert wurde, ist mir egal (im Prinzip wird ja auch bei einer Textverarbeitung viel außenrum programmiert um etwas, was man auch mit dem Terminal machen könnte).
Vorteil eines Tools ist, daß die Fehlermöglichkeiten auf der obersten Ebene liegen. Also der Anwender entscheidet, welchen Mist er damit eventuell macht.
Im Terminal kann er dagegen durchaus das Richtige machen wollen, aber durch Tippfehler oder ein kleines Mißverständnis etwas völlig Falsches machen.
0

Kommentieren

Diese Diskussion ist bereits mehr als 3 Monate alt und kann daher nicht mehr kommentiert werden.