157 lines
		
	
	
		
			9.5 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			157 lines
		
	
	
		
			9.5 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| <!DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN>
 | ||
| <html>
 | ||
|   <head>
 | ||
|     <title>filename</title>
 | ||
|   </head>
 | ||
|   <body>
 | ||
|     <h1>filename</h1>
 | ||
| 
 | ||
|     <p> Правила именования файлов в Tcl. </p>
 | ||
| 
 | ||
| 
 | ||
|     <h2><a name=ВВЕДЕНИЕ></a>ВВЕДЕНИЕ</h2>
 | ||
| 
 | ||
|     <p> Все команды Tcl и процедуры С, использующие имена файлов в
 | ||
|       качестве аргументов, позволяют использовать имена в форме,
 | ||
|       установленной для данной платформы. Кроме того, на всех
 | ||
|       платформах Tcl поддерживается синтаксис UNIX с целью
 | ||
|       предоставления удобного способа составления простых имен
 | ||
|       файлов. Тем не менее, скрипты, предназначенные для переноса
 | ||
|       между платформами, не должны пользоваться конкретной формой имен
 | ||
|       файлов. Вместо этого такие скрипты должны использовать команды
 | ||
|       <a href=file.html#split><strong>file split</strong></a> и <a
 | ||
|       href=file.html#join><strong>file join</strong></a> для
 | ||
|       преобразования имен к нужной форме.
 | ||
|     </p>
 | ||
| 
 | ||
|     <h2><a name=ТИПЫ ПУТЕЙ></a>ТИПЫ ПУТЕЙ</h2>
 | ||
| 
 | ||
|     <p> Все имена файлов поделены на три типа, в зависимости от
 | ||
|       начальной точки для отсчета пути: абсолютные, относительные и
 | ||
|       имена внутри тома (volume-relative).</p>
 | ||
| 
 | ||
|     <p>Абсолютные имена являются самодостаточными, они содержат полный
 | ||
|       путь файла внутри тома и адрес корневого каталога
 | ||
|       тома. Относительные имена являются неполными, они указывают
 | ||
|       положение файла по отношению к текущему каталогу. Имена внутри
 | ||
|       тома занимают промежуточное положение между первыми двумя, они
 | ||
|       указывают положение файла относительно корневого каталога
 | ||
|       текущего тома или относительно текущего каталога указанного
 | ||
|       тома.</p>
 | ||
| 
 | ||
|     <p>Для определения типа указанного пути можно использовать команду
 | ||
|       <a href=file.html><strong>file</strong></a> <em>pathtype</em>.</p>
 | ||
| 
 | ||
|     <h2><a name=СИНТАКСИС ПУТЕЙ></a>СИНТАКСИС ПУТЕЙ</h2>
 | ||
| 
 | ||
|     <p> Пути формируются различным образом для различных платформ.
 | ||
|       Текущая платформа определяется по значению переменной
 | ||
|       <em>tcl_platform(platform)</em>:</p>
 | ||
|     <dl>
 | ||
|       <dt><strong>mac</strong></dt>
 | ||
| 
 | ||
|       <dd> Для Macintosh-платформ Tcl поддерживает две формы
 | ||
| 	представления путей: с двоеточием, в обычном для Macintosh
 | ||
| 	стиле, и со слэшем, в Unix-стиле. Если путь не содержит
 | ||
| 	двоеточий, то он считается путем в в Unix-стиле. При этом
 | ||
| 	"." означает текущий каталог, ".." -
 | ||
| 	родительский каталог для текущего каталога. Однако такие
 | ||
| 	имена, как <strong>/</strong> или <strong>/..</strong> считаются именами каталогов
 | ||
| 	в Macintosh-стиле. При этом команды, генерирующие имена
 | ||
| 	файлов, возвращают их в Macintosh-стиле, тогда как команды,
 | ||
| 	использующие имена файлов, могут получать их и в
 | ||
| 	Macintosh-стиле, и в Unix-стиле.
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt><strong>unix</strong></dt>
 | ||
| 
 | ||
|       <dd><p>На Unix-платформах используются пути, которые содержат
 | ||
| 	  компоненты, разделенные символом слэш. Пути могут быть
 | ||
| 	  абсолютными или относительными, имена файлов могут содержать
 | ||
| 	  любые символы, кроме слэша. Имена файлов. и.  являются
 | ||
| 	  специальными и обозначают текущий каталог и родительский
 | ||
| 	  каталог текущего каталога, соответственно.  Несколько слэшей
 | ||
| 	  подряд понимаются как один разделитель.</p>
 | ||
| 
 | ||
| 	<p>Ниже приведено несколько примеров различных типов путей:
 | ||
| 	</p>
 | ||
| 	<dl>
 | ||
| 	  <dt><strong>/</strong></dt>
 | ||
| 
 | ||
| 	  <dd> Абсолютный путь к корневому каталогу. </dd>
 | ||
| 
 | ||
| 	  <dt><strong>/etc/passwd</strong></dt>
 | ||
| 
 | ||
| 	  <dd> Абсолютный путь к файлу <strong>passwd</strong> к каталогу etc в
 | ||
| 	    корневом каталоге.</dd>
 | ||
| 
 | ||
| 	  <dt><strong>.</strong></dt>
 | ||
| 
 | ||
| 	  <dd> Относительный путь к текущему каталогу.  </dd>
 | ||
| 
 | ||
| 	  <dt> <strong>foo</strong></dt>
 | ||
| 
 | ||
| 	  <dd> Относительный путь к файлу <strong>foo</strong> в текущем
 | ||
| 	  каталоге. </dd>
 | ||
| 
 | ||
| 	  <dt><strong>foo/bar</strong></dt>
 | ||
| 
 | ||
| 	  <dd> Относительный путь к файлу <strong>bar</strong> в подкаталоге
 | ||
| 	    <strong>foo</strong> текущего каталога</dd>
 | ||
| 
 | ||
| 	  <dt><strong>../foo</strong></dt>
 | ||
| 
 | ||
| 	  <dd> Относительный путь к файлу <strong>foo</strong> в каталоге над
 | ||
| 	    текущим.</dd>
 | ||
| 	</dl>
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt> <strong>windows</strong></dt>
 | ||
| 
 | ||
|       <dd> Для Windows-платформ Tcl поддерживает дисковые и сетевые
 | ||
|         имена. В обоих типах имен можно использовать в качестве
 | ||
|         разделителя как прямой, так и обратный слэш. Дисковые имена
 | ||
|         состоят из (при необходимости) имени диска и последующего
 | ||
|         абсолютного или относительного пути. Сетевые пути обычно имеют
 | ||
|         вид <strong>\servername\sharename\pathile</strong>. В обеих формах
 | ||
|         "." и ".." ссылаются соответственно на
 | ||
|         текущий каталог и его предка.
 | ||
|       </dd>
 | ||
|     </dl>
 | ||
|     
 | ||
|     <h2><a name=ТИЛЬДА-ПОДСТАНОВКИ></a>ТИЛЬДА-ПОДСТАНОВКИ</h2>
 | ||
| 
 | ||
|     <p> В дополнение к правилам, описанным выше, Tcl позволяет
 | ||
|       использовать "тильда"-подстановки в стиле cshell. Если
 | ||
|       имя файла начинается с <strong>~</strong>, за которой сразу следует
 | ||
|       сепаратор, она заменяется на значение переменной окружения
 | ||
|       <strong>/home/svk</strong>. В противном случае символы от "тильды"
 | ||
|       до следующего разделителя интерпретируются как имя пользователя
 | ||
|       и заменяются на имя домашнего каталога пользователя.
 | ||
|     </p>
 | ||
|     
 | ||
|     <p> На Macintosh- и Windows-платформах
 | ||
|       "тильда"-подстановки с именем пользователя не
 | ||
|       поддерживаются. При попытке использовать такое имя файла
 | ||
|       выдается ошибка. Однако "тильда" без имени
 | ||
|       пользователя заменяется, как и на Unix-платформах, на значение
 | ||
|       переменной окружения <strong>/home/svk</strong>.
 | ||
|     </p>
 | ||
|     
 | ||
|     <h2><a name=ВОПРОСЫ ПЕРЕНОСИМОСТИ></a>ВОПРОСЫ ПЕРЕНОСИМОСТИ</h2>
 | ||
| 
 | ||
|     <p> При разработке переносимых приложений необходимо учитывать,
 | ||
|       что не все файловые системы различают заглавные и прописные
 | ||
|       буквы. Поэтому следует избегать использования имен файлов,
 | ||
|       различающихся только регистром букв. Кроме того, необходимо
 | ||
|       отказаться от использования символов, имеющих специальное
 | ||
|       назначение хотя бы на одной из платформ, например,
 | ||
|       <strong><>:"/\|</strong>. А также, если предполагается
 | ||
|       использовать программу на Windows 3.1, необходимо учитывать, что
 | ||
|       имена файлов при этом должны быть ограничены восемью буквами, а
 | ||
|       расширения - тремя.<br>
 | ||
|     </p>
 | ||
|   </body>
 | ||
| </html>
 | ||
| 
 | 
