2010-02-18 8 views

Odpowiedz

8

@(#) to ciąg znaków używany przez polecenie Unix what do filtrowania ciągów z plików binarnych w celu wyświetlenia listy składników użytych do zbudowania tego pliku binarnego. Na przykład what java na plon AIX:

java: 
     23 1.4 src/bos/usr/ccs/lib/libpthreads/init.c, libpth, bos520 8/19/99 12:20:14 
     61  1.14 src/bos/usr/ccs/lib/libc/__threads_init.c, libcthrd, bos520 7/11/00 12:04:14 
     src/tools/sov/java.c, tool, asdev, 20081128 1.83.1.36 
     src/misc/sov/copyrght.c, core, asdev, 20081128 1.8 

podczas gdy `ciągi java | grep „@ (#)” Wydajność:

@(#)23 1.4 src/bos/usr/ccs/lib/libpthreads/init.c, libpth, bos520 8/19/99 12:20:14 
@(#)61  1.14 src/bos/usr/ccs/lib/libc/__threads_init.c, libcthrd, bos520 7/11/00 12:04:14 
@(#)src/tools/sov/java.c, tool, asdev, 20081128 1.83.1.36 
@(#)src/misc/sov/copyrght.c, core, asdev, 20081128 1.8 

@(#) został wybrany jako marker ponieważ nie występują gdzie indziej, kod źródłowy kontroluje systemy typowo dodać linię zawierającą ten znacznik i oznaczenie wersji plików w synchronizacji, poszerzając słowa kluczowe z wartościami odzwierciedlającymi zawartość pliku. Na przykład komentarz, który wymienisz, byłby wynikiem rozszerzenia słów kluczowych SCCS: %Z% %M% %R%.%L% %E%, gdzie %Z% tłumaczy się na @(#).

1

Zazwyczaj jest to coś, co jest automatycznie dodawane przez system kontroli wersji.

1

Ta konstrukcja nie ma specjalnego znaczenia w Javie. To tylko jakiś tekst w komentarzu.

Wygląda na coś, co zostało wstawione przez system kontroli wersji.

2

Z (mglistej) pamięci, która była tagiem używanym przez SCCS w "starych dobrych czasach". Biorąc pod uwagę, że (według mojej wiedzy), BitKeeper używa SCCS pod spodem, może to być BitKeeper.