Aus Neugier fragte ich mich, ob es einen Grund für den zusätzlichen Speicherplatz gibt, wenn ich ls
im Desktop-Verzeichnis tippe. Vergleichen Sie...
~/Desktop$ ls
file1 file2 file3
...zu...
~/Documents$ ls
file1 file2 file3
Beachten Sie, dass ich ls
bei der Eingabe auf dem Desktop am Anfang der Zeile ein zusätzliches Leerzeichen bekomme (nicht Teil des Dateinamens). Ich kann keinen anderen Beispielspeicherort finden, an dem ich diesen zusätzlichen Speicherplatz am Anfang der Zeile erhalte. Bekommt das noch jemand? Gibt es einen Grund?
NB: Ich verwende die Ubuntu Bionic Beaver LTS-Version und das mit ihr gelieferte Standardterminal.
touch " "
) erstelle, habe ich zwei Leerzeichen vor.ls -la
stattdessen oder ausfind -type f -printf "file: -%P-\n"
und stellen Sie die Ausgabe bereit. Wahrscheinlich gibt es eine Datei mit nicht druckbarem Zeichen. Das Färben von Dateien kann sich möglicherweise auch darauf auswirken.\ls
dir
Antworten:
Das zusätzliche Leerzeichen wird angezeigt, wenn Sie Dateinamen in Ihrem Verzeichnis benötigen
'
(z. B. Dateinamen mit Leerzeichen oder anderen Sonderzeichen).Nach dem Entfernen der "seltsamen" Dateien erhalte ich:
quelle
Ich bin mir ziemlich sicher, dass
file1 file2 file3
nicht genau das auf Ihrem Bildschirm angezeigt wird. Sie haben wichtige Informationen (die tatsächlichen Dateinamen) ausgelassen, die leicht relevant sein könnten.Ich gehe davon aus, dass Sie einen Dateinamen haben, der ein Leerzeichen oder ein anderes Sonderzeichen enthält.
Neuere Versionen von coreutils
ls
zitieren solche Dateinamen, normalerweise in einfachen Anführungszeichen. Wenn mindestens eine Datei ein solches Anführungszeichen erfordert, wird vor allen anderen Dateinamen ein Leerzeichen eingefügt, sodass sie sich "gut" ausrichten, wenn sie sich untereinander befinden, d. H. Das einfache Anführungszeichen (Apostroph) ist für die Ausrichtung ignoriert.Siehe
--quoting-style
und-N
im Handbuch Seitels
für einige weitere Details, und der Abschnitt „Formatierung der Dateinamen“ in seiner Info - Seite für noch mehr Details. Sie könnten zB ein Aliasingls
für in Betracht ziehenls -N
.quelle