Warum bekomme ich einen Zug, wenn ich „ls“ ausführe?

Warum bekomme ich einen Zug, wenn ich „ls“ ausführe?

Mir ist vor kurzem etwas Merkwürdiges aufgefallen, das mir nicht besonders gefällt:

Wenn ich ls laufe, bekomme ich einen Zug

Warum bekomme ich also beim Ausführen einen Zug ls? Und wie kann ich das stoppen und dafür sorgen, dass es sich normal verhält? Ist das ein Easter Egg, das ich entdeckt habe? Ich verwende Ubuntu GNOME 15.04.

Informationsaktualisierung:

Beim Laufen which lsbekomme ich denselben Zug, und beim Laufen ls -l $(which ls)bekomme ich einfach eine andere Art von Zug.

Beim Ausführen command -v lswird nichts ausgegeben. Und beim Ausführen command -v slwird auch nichts ausgegeben.

Das alles hat möglicherweise etwas mit dem cowPaket (oder so ähnlich) zu tun, das ich vor Kurzem installiert habe und das versprach, „die Dinge ein wenig zu erleichtern“.

Antwort1

  1. Versuchen Sie, das lustige Paket zu entfernen über

    sudo apt-get purge sl 
    
  2. Überprüfen Sie Ihre Aliase auf lszB in Ihrem ~/.bashrcoder ~/.profile.

  3. Überprüfen Sie die Binärdatei /usr/games/slund löschen Sie sie

    sudo rm /usr/games/sl
    
  4. Überprüfen Sie die Ausgabe von

    strace sl |& grep execve
    strace ls |& grep execve
    

    wenn Punkt drei keinen Erfolg hat.

  5. Und installieren Sie in Zukunft NICHTS, was in der Beschreibung verspricht, „die Dinge ein wenig aufzulockern“.;)

Antwort2

Im Allgemeinen können Sie einem Befehl ein \ voranstellen, um Aliasing nur für diese Instanz des ausgeführten Befehls zu deaktivieren. Beispiel:

[2023]$ alias ls
Alias ​​ls='ls -F -Chs --color=tty'
[2024]$ ls
insgesamt 140K
4,0 KB bin/ 0 Downloads@ 0 prog.git@
...

[2025]$ \ls
bin Downloads doc.git freertos.git prog.git tmp
...

Ich empfehle daher, Ihr ls mit einem vorangestellten '\' auszuprobieren.

Als Nächstes können Sie versuchen, den Befehl ls direkt mit vollständigem Pfad auszuführen.

/bin/ls

Als nächstes geben Sie den Befehl /bin/ls ein.

Überprüfen Sie auch Ihren Pfad,

echo $PATH
Stellen Sie sicher, dass /bin der erste Eintrag ist.
$PATH=/usr/bin:/usr/local/bin:/usr/bin:/bin:/sbin:/usr/sbin:usr/local/sbin:/usr/local/bin

Aber ich glaube, dass das Entfernen cowhelfen würde.

verwandte Informationen