Portál AbcLinuxu, 29. prosince 2025 23:43
ls -U | tac > seznam.txt
ls -pU / | sed -n "/\(.*\)\/$/ s//\1/p" | tac > seznam.txt
ls -r / | grep / > seznam.txt
ls -rF | sed -n 's:/$::p'
ls -rd */.
find / -maxdepth 1 -mindepth 1 -type d | tac >seznam.txt
find u mne křičí:
find: warning: you have specified the -maxdepth option after a non-option argument -type, but options are not positional (-maxdepth affects tests specified before it as well as those specified after it). Please specify options before other arguments.
Navíc u takto zadaných parametrů find u mne křičí...Každýmu z tý hlášky dojde, že má dát -maxdepth 1 před -type d
Nesetříděno pozpátku? To teda nechci vidět jak by to mělo vypadat... IMHO se spíš špatně vyjádřil.
Nesetříděno pozpátku? To teda nechci vidět jak by to mělo vypadat... IMHO se spíš špatně vyjádřil.K čemu to tazatel potřebuje, to nechme stranou. Buďto to může být vypsáno v pořadí, v jakém byly soubory/adresáře vytvářeny (tak to tazatel chce (ale v opačném pořadí)), nebo podle abecedy (což takto nechce).
#!/usr/bin/python
import os
dirs = [name for name in os.listdir('.') if os.path.isdir(name)]
dirs.reverse()
file('seznam.txt', 'w').write('\n'.join(dirs))
Zdá se mi trochu divný požadavek, že chci něco nesetříděné a přitom v obráceném pořadí
sed "s: :\n:g" <<< "$(echo */)" | egrep -o "[^/]+" | sort -r > seznam.txtnebo
for dir in */; do echo ${dir%/}; done | tac > seznam.txt(Vtip
)
1)sed "s: :\n:g" <<< "$(echo */)" | egrep -o "[^/]+" | sort -r > seznam.txt
echo * vypisuje setříděně (alespoň u mne) a to tazatel nechce (ten sort na konci to samozř.nezachrání)
2) sed tady takto nelze použít, alespoň v případě, že soubor (adresář) bude obsahovat mezery
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.