Что такое # @ (#) в синтаксисе Корншелла

Я смотрю скрипт в AIX-поле, где несколько строк начинаются с #@(#)

Что это значит? Очевидно, что поиск Google абсолютно бесплоден для символов.

Вот строки из сценария:

 #!/usr/bin/ksh # #@(#) #@(#) USAGE: dump_master_db [opts] SERVER [AREA] #@(#) opts: -p PAGENAME : send Pages to PAGENAME rather than the default (usually database) #@(#) -nodbcc : will not do the DBCCs before the dump #@(#) -c COMPRESSION_LEVEL : dump the database at the stated compression level. #@(#) #@(#) This script will do some DBCCs, truncates the log and then dumps the master database on any SERVER #@(#) The SERVER parm is used to build the logical device name as follows: #@(#) SERVER_master_dump #@(#) NOTE: There is no AREA and no stripes for this dump device. #@(#) COMPRESSION: VALUES 1 (least) to 9 (most compressed). #@(#) Currently, we only use values of none to 1. 

One Solution collect form web for “Что такое # @ (#) в синтаксисе Корншелла”

Странная строка «@ (#)» фактически используется старой системой управления версиями SCCS . В частности, what команда просматривала бы файл (двоичный или текстовый) и находила строки с ASCII-Nul-terminated, которые начинались с «@ (#)», и печатали эту строку. Это позволило вам вставлять печатные версии ASCII-версий в файлы «.o» и, в конечном итоге, исполняемые файлы, чтобы вы могли узнать, какие версии файлов оказались в исполняемом файле.

Я думаю, что команда ident RCS имела аналогичную функцию.

Ведущий «#» делает остальную часть строки комментарием ksh , поэтому я предполагаю, что какой-то проект написал все свои сценарии ksh чтобы SCCS, what команда распечатала все использование и т. Д. Для скриптов.

Interesting Posts
Linux и Unix - лучшая ОС в мире.