397 lines
		
	
	
		
			16 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			397 lines
		
	
	
		
			16 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 | ||
| <html>
 | ||
|   <head>
 | ||
|     <title>file</title>
 | ||
|   </head>
 | ||
|   <body>
 | ||
|     <h1>file</h1>
 | ||
| 
 | ||
|     <p> Команда для работы с файлами и их именами. </p>
 | ||
|      
 | ||
|     <pre>
 | ||
|       <strong>file</strong> <em>option</em> <em>name</em> ?<em>arg</em> <em>arg</em>...?
 | ||
|     </pre>
 | ||
| 
 | ||
|     <h2>ОПИСАНИЕ</h2> 
 | ||
| 
 | ||
|     <p> Эта команда осуществляет различные действия с файлами, их
 | ||
|       именами или свойствами. Аргумент <em>name</em> содержит имя
 | ||
|       файла. Если он начинается с символа "~", то перед
 | ||
|       выполнением команды выполняются "тильда"-подстановки,
 | ||
|       как описано в <a href="filename.html"><strong>filename</strong></a>.
 | ||
|       Опция команды указывает, какие действия необходимо выполнить с
 | ||
|       файлом. Ниже приведены возможные опции. В команде их имена могут
 | ||
|       быть сокращены до уровня, сохраняющего уникальность их имен.</p>
 | ||
| 
 | ||
|     <dl>
 | ||
|       <dt><a name="atime"></a><strong>file atime</strong> <em>name</em></dt>
 | ||
| 
 | ||
|       <dd> Возвращает десятичную строку, содержащую время последнего
 | ||
|         доступа к файлу <em>name</em>. Время представляется стандартным
 | ||
|         для POSIX образом в числе секунд от фиксированного начального
 | ||
|         момента (обычно, с 1 января 1970 г.). Если файл не существует
 | ||
|         или время последнего доступа не может быть получено, выдается
 | ||
|         сообщение об ошибке.
 | ||
|       </dd>
 | ||
|       
 | ||
|       <dt><a name="attributes"></a><strong>file attributes</strong>
 | ||
| 	<em>name</em></dt>
 | ||
| 
 | ||
|       <dt><strong>file attributes</strong> <em>name</em> ?<em>option</em>?</dt>
 | ||
| 
 | ||
|       <dt><strong>file attributes</strong> <em>name</em> ?<em>option</em>
 | ||
| 	<em>value</em> <em>option</em> <em>value</em>...?</dt>
 | ||
| 
 | ||
|       <dd><p>Эта подкоманда возвращает или устанавливает зависящие от
 | ||
| 	  платформы атрибуты файла. Первая форма возвращает список
 | ||
| 	  атрибутов и их значений, вторая возвращает значение
 | ||
| 	  указанного атрибута, а третья - позволяет установить
 | ||
| 	  значения одного или нескольких атрибутов. Возможные атрибуты
 | ||
| 	  перечислены ниже.</p>
 | ||
| 
 | ||
| 	<h3>НА UNIX-ПЛАТФОРМАХ:</h3>
 | ||
| 
 | ||
| 	<ul>
 | ||
| 	  <li><strong>-group</strong> - возвращает или устанавливает имя
 | ||
| 	    группы. В команде группа может быть задана числовым
 | ||
| 	    идентификатором, но возвращается всегда имя группы.</li>
 | ||
| 	  
 | ||
| 	  <li><strong>-owner</strong> - возвращает или устанавливает имя
 | ||
| 	    "хозяина" файла. В команде хозяин может быть задан
 | ||
| 	    числовым идентификатором, но возвращается всегда имя
 | ||
| 	    хозяина.</li>
 | ||
| 
 | ||
| 	  <li><strong>-permissions</strong> - возвращает или устанавливает
 | ||
| 	    восьмеричный код, используемый командой операционной
 | ||
| 	    системы chmod. Символьное описание соответствующих
 | ||
| 	    атрибутов файла не поддерживается.</li>
 | ||
| 	</ul>
 | ||
| 
 | ||
| 	<h3>НА WINDOWS-ПЛАТФОРМАХ</h3>
 | ||
| 
 | ||
| 	<p> На Windows-платформах поддерживаются атрибуты
 | ||
| 	  <strong>-archive</strong>, <strong>-hidden</strong>, <strong>-longname</strong> (атрибут
 | ||
| 	  не может быть установлен), <strong>-readonly</strong>,
 | ||
| 	  <strong>-shortname</strong> (атрибут не может быть установлен),
 | ||
| 	  <strong>-system</strong>.</p>
 | ||
| 
 | ||
| 	<h3>НА MACINTOSH-ПЛАТФОРМАХ</h3>
 | ||
| 
 | ||
| 	<p>На Macintosh-платформах поддерживаются атрибуты
 | ||
| 	  <strong>-creator</strong>, <strong>-hidden</strong>, <strong>-readonly</strong>,
 | ||
| 	  <strong>-type</strong>.</p>
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt><a name="copy"></a><strong>file copy</strong> ?<em>-force</em>?
 | ||
| 	    ?<em>--</em>? <em>source target</em></dt>
 | ||
| 	
 | ||
|       <dt><strong>file copy</strong> ?<em>-force</em>? ?<em>--</em>?
 | ||
| 	    <em>source</em> ?<em>source</em>...? <em>targetDir</em></dt>
 | ||
| 
 | ||
|       <dd> Первая форма используется для того, чтобы скопировать файл
 | ||
|         или каталог <em>source</em> соответственно в файл или каталог
 | ||
|         <em>target</em>. Вторая форма используется, чтобы скопировать
 | ||
|         файл(ы) или каталог(и) внутрь существующего каталога
 | ||
| 	<em>targetDir</em>. Если один из аргументов <em>source</em> есть имя
 | ||
|         каталога, то этот каталог копируется рекурсивно вместе со всем
 | ||
|         его содержимым. При копировании существующие файлы не
 | ||
|         перезаписываются, если только не указана опция
 | ||
| 	<strong>-force</strong>. Попытки перезаписать непустой каталог, а также
 | ||
|         перезаписать каталог файлом или файл каталогом приводят к
 | ||
|         ошибке, даже если опция <strong>-force</strong>
 | ||
|         указана. Аргументы команды обрабатываются в порядке
 | ||
|         перечисления до первой ошибки. Отметка "--" означает конец
 | ||
|         опций. Следующий аргумент считается именем файла или каталога,
 | ||
|         даже если он начинается с символа "-".
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt><a name="delete"></a><strong>file delete</strong> ?<em>-force</em>?
 | ||
| 	?<em>--</em>? <em>pathname</em> ?<em>pathname</em>...? </dt>
 | ||
| 
 | ||
|       <dd> Удаляет файлы или каталоги, заданные аргументами
 | ||
| 	<em>pathname</em>. Непустые каталоги удаляются, только если задана
 | ||
|         опция <strong>-force</strong>. Попытка удалить несуществующий
 | ||
|         файл не рассматривается как ошибка. Попытка удалить файл,
 | ||
|         доступный только для чтения, приведет к удаления файла, даже
 | ||
|         если опция <strong>-force</strong> не задана. Аргументы команды
 | ||
|         обрабатываются в порядке перечисления до первой
 | ||
|         ошибки. Отметка "--" означает конец опций. Следующий
 | ||
|         аргумент считается именем файла или каталога, даже если он
 | ||
|         начинается с символа "-".
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt><a name="dirname"></a><strong>filedirname</strong> <em>name</em></dt>
 | ||
| 
 | ||
|       <dd><p>Возвращает имя, составленное из всех элементов
 | ||
|         <em>name</em>, кроме последнего. Если name - относительное имя
 | ||
|         файла и состоит из единственного элемента, возвращает
 | ||
|         "." (":" для Macintosh). Если имя
 | ||
|         указывает на корневой каталог, возвращается имя корневого
 | ||
|         каталога.</p>
 | ||
| 
 | ||
| 	<p>Например:</p>
 | ||
|         <pre>
 | ||
|           file dirname c:/
 | ||
|         </pre>
 | ||
|         <p>вернет <strong>c:/</strong>.</p>
 | ||
| 	
 | ||
|         <p>"Тильда"-подстановки выполняются, только если они
 | ||
| 	  необходимы для формирования правильного результата.</p>
 | ||
| 
 | ||
| 	<p>Например:</p>
 | ||
|         <pre>
 | ||
|           file dirname ~/src/foo.c
 | ||
|         </pre>
 | ||
|         <p>вернет <strong>~/src</strong>, тогда как </p>
 | ||
|         <pre>
 | ||
|           file dirname ~
 | ||
|         </pre>
 | ||
|         <p>вернет <strong>/home</strong> (или что-то подобное).</p>
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt><a name="executable"></a><strong>file executable</strong>
 | ||
| 	<em>name</em> </dt>
 | ||
| 
 | ||
|       <dd>Возвращает <strong>1</strong>, если файл <em>name</em> исполнимый, и
 | ||
|         <strong>0</strong> в противном случае.</dd>
 | ||
| 
 | ||
|       <dt><strong>file exists</strong> <em>name</em></dt>
 | ||
| 
 | ||
|       <dd> Возвращает <strong>1</strong>, если файл <em>name</em> существует,
 | ||
|         и пользователь имеет права на просмотр каталога, в котором
 | ||
|         лежит файл, и <strong>0</strong> в противном случае.
 | ||
|       </dd>
 | ||
|       
 | ||
|       <dt><a name="extension"></a><strong>file extension</strong>
 | ||
| 	<em>name</em> </dt>
 | ||
| 
 | ||
|       <dd> Возвращает все символы в <em>name</em>, начиная с последней
 | ||
|         точки в последнем элементе. Если в последнем элементе нет
 | ||
|         точек, возвращается пустая строка.
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt> <strong>file isdirectory</strong> <em>name</em> </dt>
 | ||
| 
 | ||
|       <dd><p>Возвращает <strong>1</strong>, если <em>name</em> - имя каталога,
 | ||
|         и <strong>0</strong> в противном случае.</p>
 | ||
|         <pre>
 | ||
|           file isfile <em>name</em>
 | ||
|         </pre>
 | ||
|         <p>Возвращает <strong>1</strong>, если файл <em>name</em> -
 | ||
| 	  регулярный файл, и <strong>0</strong> в противном случае.</p>
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt><a name="join"></a><strong>file join</strong> <em>name</em>
 | ||
| 	?<em>name</em>...?</dt>
 | ||
| 
 | ||
|       <dd><p> Соединяет аргументы <em>name</em> в одно имя с помощью
 | ||
| 	  разделителя, используемого на данной платформе. Если
 | ||
| 	  очередной аргумент <em>name</em> представляет собой
 | ||
| 	  относительное имя, он присоединяется к предыдущим, в
 | ||
| 	  противном случае предыдущие аргументы отбрасываются, и
 | ||
| 	  процесс формирования имени начинается заново с текущего
 | ||
| 	  аргумента.</p>
 | ||
| 
 | ||
| 	<p>Например:</p>
 | ||
|         <pre>
 | ||
|           file join a b /foo bar
 | ||
|         </pre>
 | ||
|         <p>вернет <strong>/foo/bar</strong>.</p>
 | ||
| 
 | ||
|         <p>Аргументы <em>name</em> могут содержать разделитель, это не
 | ||
| 	  помешает получить правильный результат для используемой
 | ||
| 	  платформы ("/" для Unix и Windows, ":"
 | ||
| 	  для Macintosh).</p>
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt><a name="lstat"></a><strong>file lstat</strong> <em>name</em>
 | ||
| 	<em>varName</em></dt>
 | ||
| 
 | ||
|       <dd> То же самое, что опция <strong>stat</strong>, описанная ниже, за
 | ||
|         исключением того, что используется команда ядра <strong>lstat</strong>
 | ||
|         вместо <strong>stat</strong>. Это означает, что если <em>name</em> есть
 | ||
|         имя связи, то команда вернет данные о связи, а не об исходном
 | ||
|         файле. Для платформ, не поддерживающих связи, команды
 | ||
|         полностью идентичны.
 | ||
|       </dd>
 | ||
|       
 | ||
| 
 | ||
|       <dt> <a name="mkdir"></a><strong>file mkdir</strong> <em>dir</em>
 | ||
| 	?<em>dir</em>...? </dt>
 | ||
| 
 | ||
|       <dd> Создает все перечисленные каталоги. Для каждого аргумента
 | ||
|         <em>dir</em> команда создает все несуществующие родительские
 | ||
|         каталоги и сам каталог <em>dir</em>. Если указан существующий
 | ||
|         каталог, ничего не происходит. При этом команда считается
 | ||
|         выполненной успешно. Попытка перезаписать существующий файл
 | ||
|         каталогом приведет к ошибке. Аргументы команды обрабатываются
 | ||
|         в порядке перечисления до первой ошибки.
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt><a name="mtime"></a><strong>file mtime</strong> <em>name</em> </dt>
 | ||
| 
 | ||
|       <dd> Возвращает десятичную строку, содержащую время последнего
 | ||
|         изменения файла <em>name</em>. Время представляется стандартным
 | ||
|         для POSIX образом в числе секунд от фиксированного начального
 | ||
|         момента (обычно, с 1 января 1970 г.). Если файл не существует
 | ||
|         или время последнего изменения не может быть получено,
 | ||
|         выдается сообщение об ошибке.
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt> <strong>file nativename</strong> <em>name</em> </dt>
 | ||
| 
 | ||
|       <dd> Возвращает имя файла в виде, характерном для используемой
 | ||
|         платформы. Опция полезна для подготовки исполнения файла с
 | ||
|         помощью команды <a href="exec.html"><strong>exec</strong></a> под
 | ||
|         Windows.
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt><strong>file owned</strong> <em>name</em></dt>
 | ||
| 
 | ||
|       <dd> Возвращает <strong>1</strong>, если файл <em>name</em> принадлежит
 | ||
|         пользователю, и 0 в противном случае.
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt><strong>file pathtype</strong> <em>name</em></dt>
 | ||
| 
 | ||
|       <dd> Возвращает одно из значений <strong>absolute</strong>,
 | ||
| 	<strong>relative</strong>, <strong>volumerelative</strong>. Если <em>name</em>
 | ||
| 	указывает на определенный файл в определенном томе,
 | ||
| 	возвращается <strong>absolute</strong>. Если <em>name</em> указывает на
 | ||
| 	имя файла относительно текущего рабочего каталога -
 | ||
| 	возвращается <strong>relative</strong>. Если <em>name</em> указывает имя
 | ||
| 	файла относительно текущего рабочего каталога в определенном
 | ||
| 	томе или на определенный файл в текущем рабочем томе,
 | ||
| 	возвращается <strong>volumerelative</strong>.
 | ||
|       </dd>
 | ||
|       
 | ||
|       <dt> <strong>file readable</strong> <em>name</em> </dt>
 | ||
| 
 | ||
|       <dd> Возвращает <strong>1</strong>, если файл <em>name</em> доступен для
 | ||
|         чтения пользователю, и <strong>0</strong> в противном случае.
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt> <strong>file readlink</strong> <em>name</em></dt>
 | ||
| 
 | ||
|       <dd> Возвращает имя связи <em>name</em> (например, имя файла, на
 | ||
|         который указывает <em>name</em>). Если <em>name</em> не есть
 | ||
|         связь, или ее невозможно прочитать, возвращает ошибку. На
 | ||
|         платформах, на которых связи не поддерживаются, опция не
 | ||
|         определена.
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt><strong>file rename</strong> ?<em>-force</em>? ?<em>--</em>?
 | ||
| 	    <em>source</em> <em>target</em> </dt>
 | ||
| 
 | ||
|       <dt><strong>file rename</strong> ?<em>-force</em>? ?<em>--</em>?
 | ||
| 	    <em>source</em> ?<em>source</em>...? <em>targetDir</em></dt>
 | ||
| 
 | ||
|       <dd> Первая форма используется для того, чтобы переименовать
 | ||
|         файл или каталог <em>source</em> соответственно в файл или
 | ||
|         каталог <em>target</em> (и переместить их в соответствующий
 | ||
|         каталог, если это необходимо). Вторая форма используется,
 | ||
|         чтобы переместить файл(ы) или каталог(и) внутрь существующего
 | ||
|         каталога <em>targetDir</em>. Если один из аргументов
 | ||
|         <em>source</em> есть имя каталога, то этот каталог перемещается
 | ||
|         рекурсивно вместе со всем его содержимым. При перемещении
 | ||
|         существующие файлы не перезаписываются, если только не указана
 | ||
|         опция <em>-force</em>. Попытки перезаписать непустой каталог, а
 | ||
|         также перезаписать каталог файлом или файл каталогом приводят
 | ||
|         к ошибке, даже если опция <em>-force</em> указана. Аргументы
 | ||
|         команды обрабатываются в порядке перечисления до первой
 | ||
|         ошибки.  Отметка "-" означает конец опций. Следующий
 | ||
|         аргумент считается именем файла или каталога, даже если он
 | ||
|         начинается с символа "-".
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt><a name="rootname"></a><strong>file rootname</strong>
 | ||
| 	<em>name</em></dt>
 | ||
| 
 | ||
|       <dd> Возвращает все символы в <em>name</em> за исключением
 | ||
|         последней точки в последнем элементе. Если в последнем
 | ||
|         элементе нет точек, возвращается <em>name</em>.
 | ||
|       </dd>
 | ||
|       
 | ||
|       <dt> <strong>file size</strong> <em>name</em></dt>
 | ||
| 
 | ||
|       <dd> Возвращает десятичную строку, содержащую размер файла в
 | ||
|         байтах. Если файл не существует или его размер не может быть
 | ||
|         получен, выдается ошибка.
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt><a name="split"></a><strong>file split</strong> <em>name</em></dt>
 | ||
| 
 | ||
|       <dd><p>Возвращает список элементов пути name. Первый элемент
 | ||
|         списка при этом имеет тот же тип пути, что и name. Все
 | ||
|         остальные элементы - относительные. Разделители удаляются,
 | ||
|         если только они не необходимы для указания на относительный
 | ||
|         тип элементов. Например, под Unix</p>
 | ||
|         <pre>
 | ||
|           file split /foo/~bar/baz
 | ||
|         </pre>
 | ||
|         <p>вернет <strong>/ foo/~bar baz</strong>, чтобы гарантировать, что
 | ||
|         последующие команды не попытаются выполнить "тильда"-
 | ||
|         подстановку в третьем элементе.</p>
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt><strong>file stat</strong> <em>name</em> <em>varName</em></dt>
 | ||
| 
 | ||
|       <dd> Исполняет вызов функции ядра <strong>stat</strong> и записывает
 | ||
|         возвращаемую информацию о <em>name</em> в элементы массива
 | ||
|         <em>varName</em>. Формируются следующие элементы массива:
 | ||
|         <strong>atime</strong>, <strong>ctime</strong>, <strong>dev</strong>, <strong>gid</strong>,
 | ||
|         <strong>ino</strong>, <strong>mode</strong>, <strong>mtime</strong>, <strong>nlink</strong>,
 | ||
|         <strong>size</strong>, <strong>type</strong>, <strong>uid</strong>. Значения всех элементов,
 | ||
|         кроме <strong>type</strong>, - десятичные строки. Описания их приведены
 | ||
|         в описании команды ядра <strong>stat</strong>. Элемент <strong>type</strong>
 | ||
|         содержит тип файла в том же виде, в каком он возвращается
 | ||
|         командой <strong>file type</strong>. Команда <strong>file stat</strong> возвращает
 | ||
|         пустую строку.
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt><a name="tail"></a><strong>file tail</strong> <em>name</em> </dt>
 | ||
| 
 | ||
|       <dd> Возвращает все символы в <em>name</em> после последнего
 | ||
|         разделителя каталогов. Если в <em>name</em> нет каталогов,
 | ||
|         возвращает <em>name</em>.
 | ||
|       </dd>
 | ||
|       
 | ||
|       <dt><strong>file type</strong> <em>name</em> </dt>
 | ||
| 
 | ||
|       <dd> Возвращает строку, содержащую тип файла. Возможные значения
 | ||
|         <strong>file</strong>, <strong>directory</strong>, <strong>characterSpecial</strong>,
 | ||
|         <strong>blockSpecial</strong>, <strong>fifo</strong>, <strong>link</strong> или <a
 | ||
|         href="socket.html"><strong>socket</strong></a>.
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt> <strong>file volume</strong> </dt>
 | ||
| 
 | ||
|       <dd> Возвращает список, содержащий абсолютные пути ко всем
 | ||
|         подмонтированным томам. На Macintosh-платформах это список
 | ||
|         всех подмонтированных дисков, локальных и сетевых. На
 | ||
|         Unix-платформах команда всегда возвращает '<strong>/</strong>',
 | ||
|         поскольку все файловые системы монтируются как локальные.  На
 | ||
|         Windows-платформах команда возвращает список локальных дисков
 | ||
|         (например, {a:/ c:/}).
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt> <strong>file writable</strong> <em>name</em> </dt>
 | ||
| 
 | ||
|       <dd> Возвращает <strong>1</strong>, если файл <em>name</em> доступен для
 | ||
|         записи, и <strong>0</strong> в противном случае.
 | ||
|       </dd>
 | ||
|     </dl>
 | ||
|     
 | ||
|     <h2>ПРОБЛЕМЫ ПЕРЕНОСИМОСТИ</h2> 
 | ||
| 
 | ||
|     <dl>
 | ||
|       <dt> <strong>Unix</strong> </dt>
 | ||
| 
 | ||
|       <dd>На Unix-платформах эти команды всегда используют реальные, а
 | ||
| 	не эффективные идентификаторы пользователя и группы.</dd>
 | ||
|     </dl>
 | ||
| 
 | ||
|     <p>См. также <a href="filename.html"><strong>filename</strong></a>.</p>
 | ||
|   </body>
 | ||
| </html>
 | 
