|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Victor Wagner 2:5020/400 23 Aug 2002 12:54:56 To : x0r Subject : Re: Как на bash'е... -------------------------------------------------------------------------------- x0r <x0r@f555.n466.z2.fidonet.org> wrote: xr> Hello, Maksim! xr> You wrote to Ivan Prokudin on Thu, 22 Aug 02 20:45:12 +0300: MP>> Мы к вам, профессор Ivan Prokudin, и вот по какому делу... MP>> 22 Авг 02 14:54, Ivan Prokudin -> ALL: IP>>> Че-то я торможу. Как _простейшим_ (самым коротким) образом IP>>> проверить наличие хотя бы одного из группы файлов? То есть, если IP>>> пришел есть в директории хоть один *.tic, запустить фехопроцессор. MP>> if test -f ~/*.tic then ... xr> лажа. xr> -f, -x, -z и т.д regexp не поддерживает. Во-первых, не регекс, а glob pattern. Во-вторых, его поддерживает сам bash, прежде чем передаст аргументы команде test. В-третьих, лажа в другом - данная конструкция обломается, если в директории будет два и более файла, удовлетворяющих шаблону. test выругается на too many arguments и возвратит не 0, а 2. test "`echo *.foo`" != '*.foo' Вот такая проверка - сработает. К сожалению без бэктиков обойтись не удалось, поскольку нужно чтобы результат раскрытия шаблона был передан в test как один аргумент. -- http://www.communiware.ru http://www.ice.ru/~vitus --- ifmail v.2.15dev5 * Origin: Leninsky 45 home network (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/151783cc99991.html, оценка из 5, голосов 10
|