Це відповідність команди, яку можна запустити в постачальнику безкоштовного хостингу OnWorks за допомогою однієї з наших численних безкоштовних онлайн-робочих станцій, таких як Ubuntu Online, Fedora Online, онлайн-емулятор Windows або онлайн-емулятор MAC OS
ПРОГРАМА:
ІМ'Я
match - Збіг рядків із шаблонами glob
СИНТАКСИС
відповідати [-gilrqs] [-n ] [-c CMD] [-x код] {[-p] модель | -f } str1 [str2 ...]
ОПИС
матч перевіряє рядки модель, який має бути глобусоподібним візерунком. модель
може містити такі спеціальні символи:
? А "?" персонаж в модель відповідає будь-якому окремому символу в рядку, за винятком символу
Символ "/" збігається лише в тому випадку, якщо відповідність було задано -s варіант.
* Символ "*". модель відповідає нулю або більше символів у рядку. The
винятком є те, що він відповідатиме лише символам "/", якщо відповідність задана -s варіант.
[...]
Набір символів у квадратних дужках відповідає будь-якому символу в наборі. в
Крім того, для визначення діапазону можна використовувати символ "-". Наприклад "[+e0-3]"
відповідатиме будь-якому із символів "+", "e", 0, 1, 2 або 3 у вхідному рядку. До
включити дефіс ("-") у набір відповідних символів або включити дефіс
перший або останній, або екранувати його за допомогою "\".
[!...]
Клас символів, якому передує "!" відповідає будь-якому символу, крім тих, які вказані в
клас. Винятком є те, що заперечований клас символів відповідатиме знаку "/", лише якщо
був даний матч -s варіант.
\c Символ зворотної косої риски екранує наступний символ c. Таким чином, щоб відповідати літералу "*",
Ви б використовували шаблон "\*".
match друкує кожен відповідний рядок модель, по одному на рядок, і виходить з 0, якщо один або більше
рядки збігаються. Якщо жоден рядок не збігається, збігайте вихід зі статусом 67 (або будь-яким іншим варіантом
статус був визначений -x прапор). Якщо -n n було вказано прапор, лише відбитки відповідності
текст, який відповідав nй поява «*» у шаблоні.
ВАРІАНТИ
-f файл
Вказує, з якого шаблону слід читати файл. матч читатиме кожен рядок
файл і розглядайте його як шаблон для відповідності рядкам аргументів. Для кожного
рядок аргументу, збіг припиняється, коли він потрапляє на перший відповідний рядок файлу. Якщо
файл не існує, збігається з виходами 67 або будь-яким кодом, зазначеним у -x.
-g Як правило, в -n параметр вибирає текст, що відповідає певним символам «*» у шаблоні.
-g змінює цю поведінку, щоб використовувати дужки для групування. Таким чином, наприклад,
текст "foo.c" відповідатиме шаблону "*(.[ch])", а вихід з опцією -n 1 був би
".c". Щоб включити литерал "(" або ")" у шаблон з -g варіант, ви повинні
перед символом ставиться "\".
-i Робить відповідність регістру нечутливим. вул буде вважатися відповідним за будь-яких змін
його капіталізація відповідала б. Наприклад, рядок "G" відповідатиме шаблону "[fh]".
-l Коли шаблон відповідає рядку більш ніж одним способом, -l прапорець каже призначити як
якомога більше тексту до крайніх лівих «*» у шаблоні. Наприклад, шаблон "*+*"
буде відповідати тексту "a+b+c", а перший "*" відповідатиме "a+b". Ця поведінка є
за замовчуванням, таким чином -l's ефект полягає лише у скасуванні попереднього -r прапор
-n n
За допомогою цього прапорця match друкує текст, який відповідає nго «*» у шаблоні, як
проти друку всього рядка. Крайній лівий «*» відповідає -n 1.
Уточнення -n 0 змушує match друкувати весь відповідний рядок. Уточнення -n -1 or
використання значення, що перевищує кількість "*" у шаблоні, призводить до того, що збіг не друкується
будь-що, і в цьому випадку ви все одно можете використовувати статус виходу, щоб перевірити, чи є відповідність.
Значення за замовчуванням для n дорівнює 0, якщо -g також було зазначено, у такому разі
за замовчуванням - 1.
-c команда
Коли -c вказано, матч виконується команда з системною оболонкою (/ Бен / ш), надаючи його як
аргумент $0 повний рядок, який відповідає, а як аргументи $1, $2 тощо, частини
рядок, який відповідає будь-якому символу "*". модель. Якщо команда не виходить зі статусом
0, матч завершиться негайно, перш ніж обробляти подальші збіги, будь-яким
статус команда повернувся. The -c та -n прапори є взаємовиключними.
-p модель
Визначає шаблон для відповідності. The -p прапорець необов'язковий; ви можете вказати
модель як перший аргумент після варіантів. Однак якщо ви хочете спробувати
зіставляючи один і той самий вхідний рядок із кількома шаблонами, то ви повинні вказати кожен
візерунок з a -p прапор
-q Цей варіант є синонімом -n -1; він пригнічує вихід, коли є збіг. ти
може все ще визначити, чи відбулася збіг за статусом виходу.
-r Коли шаблон відповідає рядку більш ніж одним способом, -r прапорець каже призначити як
якомога більше тексту до крайніх «*» у шаблоні. Наприклад, с -r,
шаблон "*+*" відповідатиме тексту "a+b+c" з "*", що відповідає "a", а другий
відповідність "b+c".
-s Зазвичай "*", "?" і заперечні класи символів ("[!...]") не відповідають "/"
символів. -s змінює цю поведінку, щоб відповідати косим чертам.
-x код
За замовчуванням, якщо немає відповідності, відповідність виходів зі статусом 67. За допомогою цього параметра
відповідати виходам із статусом кодзамість цього.
ПРИКЛАДИ
Припустимо, у вас є каталог із купою файлів, що закінчуються .c та .o. Якщо для кожного файлу
названий foo.c ви хочете спробувати видалити файл foo.o, ви можете запустити наступне
команда:
відповідність -p '*.c' -c 'rm -f $1.o' *.c
Сервери, на яких запущено диспетчер списків розсилок, часто надсилають пошту з адрес, які відмовляються у формі
ім'я списку-[захищено електронною поштою]. Якщо ви підписалися на кілька списків на одному сервері,
Інтерфейс mailman полегшує роботу, якщо ви підпишетеся за тією ж адресою. Щоб розділити
пошту в декілька папок на основі адреси відмов у змінній середовища ВІДПРАВНИК,
ви можете вибрати поштову скриньку з таким кодом оболонки:
name=`відповідність -n1 "*-[захищено електронною поштою]" "$SENDER"` \
&& echo "$HOME/Mail/incoming/host-$name.spool"
Використовуйте матч онлайн за допомогою служб onworks.net