Lösung 1:
ls | xargs
Es funktioniert für mich, es ist der einfachste Weg, den ich je gefunden habe. Hoffe, das hilft dir auch.
Lösung 2:
Ich kenne keinen Schalter, der das tun könnte, aber Sie können Ihre Ausgabe durch tr
leiten um es zu tun:
ls | tr "\n" " " | <whatever you like>
Lösung 3:
Wenn Ihr ls
diese Option hat, können Sie einen hohen Wert verwenden und es könnte tun, was Sie wollen:
ls -w 10000 -C . | head
Lösung 4:
Ah, jetzt, wo Sie die Frage aktualisiert haben ....
while true ; do echo * ; done | uniq
wird tun, was Sie gepostet haben, nur einfacher.
Sie sind jedoch besser dran, etwas zu verwenden, das Inotify verwendet, um dies zu tun, z. B.
inotifywait -m . -e create,delete
wenn du kein inotify hast, dann funktioniert so etwas auch gut:
import os
import time
last = set()
while True:
cur = set(os.listdir('.'))
added = cur-last
removed = last-cur
if added: print 'added', added
if removed: print 'removed', removed
last = set(os.listdir('.'))
time.sleep(0.1)
Lösung 5:
Was ist mit dem ganz Trivialen?
echo *
? :-) Sie müssen dafür nicht einmal forken. :-)