
Я использую оболочку bash на Mac 10.9.5. Как переместить все нескрытые файлы в определенном каталоге, то есть все те, которые не начинаются с "."?
Спасибо, - Дэйв
решение1
При нормальных обстоятельствах *
будет расширяться на все файлы, за исключением тех, которые начинаются с .
; однако, если dotglob
параметр установлен, скрытые файлы также будут расширяться, как описано вэтот ответ. Чтобы быть уверенным в исключении скрытых файлов при любых обстоятельствах, используйте:
mv [^.]* {TargetDir}/
Здесь [^.]
(или альтернативно [!.]
) соответствует любому отдельному символу, кроме .
, и *
соответствует любому количеству произвольных символов (включая пустую строку).