Что: 9a7015f648c3b55e1c1ff22f8bfd2958dcf2e255 Когда: 2023-04-27 23:09:21+03:00 ------------------------------------------------------------------------ Темы: tip ------------------------------------------------------------------------ Поиск в find https://marc.info/?l=freebsd-current&m=168176556429526&w=2 Неожиданное поведение обнаружили у find, в зависимости от локали: $ touch FOO $ touch bar $ env LANG=C.UTF-8 find . -name '[A-Z]*' -print ./FOO $ env LANG=en_US.UTF-8 find . -name '[A-Z]*' -print ./FOO ./bar Говорят, что надо использовать классы символов: $ LANG=en_US.UTF-8 find . -name '[[:alpha:]]*' -print ./BAR ./foo $ LANG=en_US.UTF-8 find . -name '[[:lower:]]*' -print ./foo Вот правда в FreeBSD find их не понимает для -name. Но можно для -regex: $ LANG=en_US.UTF-8 find -E /etc/rc.d -regex '.*[[:upper:]]+' -print /etc/rc.d/NETWORKING /etc/rc.d/FILESYSTEMS /etc/rc.d/SERVERS /etc/rc.d/DAEMON /etc/rc.d/LOGIN ------------------------------------------------------------------------ оставить комментарий: mailto:comment@blog.stargrave.org?subject=Re:%20%D0%9F%D0%BE%D0%B8%D1%81%D0%BA%20%D0%B2%20find%20%289a7015f648c3b55e1c1ff22f8bfd2958dcf2e255%29 ------------------------------------------------------------------------ Сгенерирован: SGBlog 0.34.0