2015-11-05 3 views
1

Что такое команда ClearCasewindows, чтобы получить последнюю метку последнего файла версии? Я нашел команду ниже в command in clearcase to get list of all labels applied on an element, но в ней перечислены все последние метки. Как использовать последнюю метку вместо всех?Команда ClearCase для получения последней метки файла?

cleartool descr -fmt "%l" myFile 

ответ

0

Опираясь на my old answer, вам придется обработать вывод cleartool descr -fmt "%lN" myFile для отображения даты для каждой метки и сортировки по дате.

Использование %lN напечатает по одной метке в строке.

cleartool descr -fmt "%lN" myFile | xargs cleartool descr -fmt "%Nd %n" | sort | tail -1 

Использование %ln будет использовать формат даты легко Сортируемый: (Числовой) Дата и время в числовой форме - yyyymmdd.time.

+0

Можете ли вы объяснить окна командной тоже? – GORa

+1

@GORa это команды, доступные для Windows: просто установите https://github.com/bmatzelle/gow (gnu в Windows) – VonC

+0

Эта команда не будет работать. он попытается описать ярлыки, как если бы они были файлами. –

0

Если вы ищете недавно применяемые этикетки, попробуйте использовать cleartool lshistory -минор ... Я применил кучу ярлыков для тестирования элементов и получил это:

> [[email protected] cvsimport]$ cleartool lshist -min -last 6 co.dll 
> --11-24T14:27 brian  make label "LABEL4" on version "[email protected]@/main/2" (LABEL4, LABEL5, LABEL6, LABEL3, LABEL2, ...) 
> --11-24T14:26 brian  make label "LABEL5" on version "[email protected]@/main/2" (LABEL4, LABEL5, LABEL6, LABEL3, LABEL2, ...) 
> --11-24T14:26 brian  make label "LABEL6" on version "[email protected]@/main/2" (LABEL4, LABEL5, LABEL6, LABEL3, LABEL2, ...) 
> --11-24T14:26 brian  make label "LABEL3" on version "[email protected]@/main/2" (LABEL4, LABEL5, LABEL6, LABEL3, LABEL2, ...) 
> --11-24T14:26 brian  make label "LABEL2" on version "[email protected]@/main/2" (LABEL4, LABEL5, LABEL6, LABEL3, LABEL2, ...) 
> --11-24T14:26 brian  make label "LABEL1" on version "[email protected]@/main/2" (LABEL4, LABEL5, LABEL6, LABEL3, LABEL2, ...) 

Этих события только в прошлом 2-4 недель (в зависимости от параметров очистки), поэтому имейте в виду, что это ограниченный по времени поиск.

1

Я могу получить последнюю прикладную этикетку, обработав команду cleartool descr, как указано выше. Ниже приведено содержимое пакетного файла.

@echo off 
@cls 
setlocal 
SET Command='START "" /B /wait cleartool describe -fmt "%%l\n\n" "filename"' 

(FOR /F %%a IN (%Command%) DO (
    FOR /F "delims=," %%b in ("%%a") do (
      FOR /F "delims=)" %%c in ("%%b") do (
       FOR /F "delims=(" %%d in ("%%c") do (
        echo %%d 
       ) 
      ) 
    ) 
) 
) 

Выход: LABEL5

+0

Хорошая реализация моего ответа. +1 – VonC

Смежные вопросы