должно быть более универсальным, должен не рассчитывает, хотя должен.
/@(foo|bar|baz)(?:\W|$)/
Здесь хорошая ссылка на regex.
редактирование: изменение, заканчивающееся для разрешения конец шаблона или разрыва слова. теперь принятие foo/bar/baz является полными доменными именами.
Поскольку я работаю в Windows, я создал небольшой скрипт, делающий то же самое в PERL, а не в Shell, powershell или px :):
#*******************************************************************************
# Module: delete_empty_changelist.pl
# Purpose: A script to delete empty changelist
#
@list = `p4 changes -s submitted`;
foreach $chg (@list)
{
$chgnbr = (split /\s+/, $chg)[1];
print `p4 change -d -f $chgnbr`;
}
exit 0;
Обратите внимание, что на самом деле во всех В некоторых случаях это не очень умный сценарий: он пытается удалить абсолютно все представленные списки изменений, и это не позволяет сделать это принудительно, потому что, если файлы связаны с ним, вы получите ошибку.
Я полагаю, что результат сценарий должен быть отправлен в журнал и проанализирован так, чтобы были выделены только соответствующие строки.
Запуск сценария приведет к выводу, подобному:
Change 857 has 1 files associated with it and can't be deleted.
Change 856 has 1 fixes associated with it and can't be deleted.
Change 855 has 1 fixes associated with it and can't be deleted.
Change 854 deleted.
Change 853 has 1 fixes associated with it and can't be deleted.
Change 852 has 8 files associated with it and can't be deleted.
Change 851 has 1 files associated with it and can't be deleted.
Change 850 has 2 files associated with it and can't be deleted.
Change 849 has 2 files associated with it and can't be deleted.
Change 846 deleted.
Change 845 has 2 files associated with it and can't be deleted.
Ура,
Томас
Ах!
Мне нужно было просмотреть дополнительную документацию, прежде чем спрашивать об этом ...
http://public.perforce.com/wiki/Perforce_Command_Line_Recipes
Описание: Удалить все пустые отправленные списки изменений.
Команда оболочки: p4 changes -s отправлено | вырезать -d "" -f 2 | xargs -n1 p4 изменить -d -f
Powershell: отправлены изменения p4 | % {p4 изменить -d -f $ _. split () [1]}
px: px -F% change% changes -s отправлено | px -X- изменить -d -f
Авторы: Сэм Стаффорд, Филип Каниа, Шон Хладки
Да.
Томас