ls -1
Команда будет отображать записи по одной в строке. В более общем случае вы можете использовать
--format=<WORD>
вариант. Здесь
across -x
commas -m
horizontal -x
long -l
single-column -1
verbose -l
vertical -C
где однобуквенные варианты, указанные в правом столбце, являются просто сокращениями для более длинной версии.
Поскольку вы используете Zsh, я бы использовал для этогоzmv
вместоfind
:
% autoload -Uz zmv
% zmv -n '(**/)(*)(#q.)' '$1${2//[^. [:IDENT:]]/-}' # -n: no execute
mv -- 'untitled file2 [].txt' 'untitled file2 --.txt'
mv -- 'untitled file3 [].txt' 'untitled file3 --.txt'
% zmv -v '(**/)(*)(#q.)' '$1${2//[^. [:IDENT:]]/-}' # -v: verbose
mv -- 'untitled file2 [].txt' 'untitled file2 --.txt'
mv -- 'untitled file3 [].txt' 'untitled file3 --.txt'
%
[^. [:IDENT:]]
соответствует всему, что не является точкой, пробелом или действительной частью идентификатора оболочки. (#q.)
— ограничить переименование обычными файлами, такими как ваш -type f
.
Подробнее: