<?xml version="1.0" encoding="UTF-8"?>
<!--
 * Scilab ( https://www.scilab.org/ ) - This file is part of Scilab
 * Copyright (C) 2008 - INRIA
 *
 * Copyright (C) 2012 - 2016 - Scilab Enterprises
 *
 * This file is hereby licensed under the terms of the GNU GPL v2.0,
 * pursuant to article 5.3.4 of the CeCILL v.2.1.
 * This file was originally licensed under the terms of the CeCILL v2.1,
 * and continues to be available under such terms.
 * For more information, see the COPYING file which you should have received
 * along with this program.
 *
 -->
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
          xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML"
          xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"
          xml:lang="ru" xml:id="listfiles">
    <refnamediv>
        <refname>listfiles</refname>
        <refpurpose>список файлов</refpurpose>
    </refnamediv>
    <refsynopsisdiv>
        <title>Синтаксис</title>
        <synopsis>files = listfiles(paths [,flag,flagexpand])</synopsis>
    </refsynopsisdiv>
    <refsection>
        <title>Аргументы</title>
        <variablelist>
            <varlistentry>
                <term>paths</term>
                <listitem>
                    <para>
                        матрица строк, указывающая набор имён путей (обычно
                        оканчивающихся шаблоном, построенным с <literal>*</literal>).
                    </para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term>flag, flagexpand</term>
                <listitem>
                    <para>
                        логические необязательные параметры (значение по умолчанию равно
                        <constant>%t</constant>).
                    </para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term>files</term>
                <listitem>
                    <para>матрица строк.</para>
                </listitem>
            </varlistentry>
        </variablelist>
    </refsection>
    <refsection>
        <title>Описание</title>
        <para>
            Функция <function>listfiles</function> может быть использована для
            составления списка файлов, которые соответствуют шаблонам, указанным
            одним из элементов путей. Шаблоны указываются Unix-команде
            <command>ls</command> или Windows-команде <command>dir</command> для
            получения информации о файлах. Таким образом, чтобы написать переносимый
            Scilab-сценарий, следует указывать корректные знаки шаблонов для обеих
            ОС. Заметьте, что выполняется преобразование имени пути и, например,
            <literal>SCI/core/macros/*.sci</literal> является корректным шаблоном
            как для Unix, так и для Windows.
        </para>
        <para>
            Если <varname>flag</varname> равен ИСТИНЕ, то имена пути, указанные с
            помощью <varname>paths</varname>, преобразуются в соответствии со
            значением <code>getos() == 'Windows'</code> (см. также <link linkend="pathconvert">pathconvert</link>).
            Более того, если <varname>flagexpand</varname> равен ИСТИНЕ, то
            начальные строки, такие как <literal>SCIHOME</literal>,
            <literal>SCI</literal> или <literal>~</literal> расширяются с помощью
            переменных окружения.
        </para>
        <para>
            Если входной путь является именем директории, то возвращаемые имена
            файлов <varname>files</varname> относятся к этой директории.
        </para>
        <para>
            Если входные пути содержат шаблон (например <literal>"/*"</literal>,
            <literal>"*.c"</literal>), то к возвращаемым именам файлов <varname>files</varname>
            добавляется начало входного пути.
        </para>
    </refsection>
    <refsection>
        <title>Примеры</title>
        <programlisting role="example">
            <![CDATA[
files=listfiles(['SCI/modules/core/macros/*.sci';'SCI/modules/core/macros/*.bin']);
 ]]>
        </programlisting>
    </refsection>
    <refsection role="see also">
        <title>Смотрите также</title>
        <simplelist type="inline">
            <member>
                <link linkend="findfiles">findfiles</link>
            </member>
            <member>
                <link linkend="basename">basename</link>
            </member>
            <member>
                <link linkend="pathconvert">pathconvert</link>
            </member>
        </simplelist>
    </refsection>
    <refsection>
        <title>История</title>
        <revhistory>
            <revision>
                <revnumber>5.4.0</revnumber>
                <revremark>
                    Если пути не являются одиночной строкой, то все возвращаемые файлы
                    представляются единообразно в форме абсолютного пути.
                </revremark>
            </revision>
            <revision>
                <revnumber>6.0.2</revnumber>
                <revremark>
                    В Windows, вплоть до 6.0.1, <literal>listfile("test")</literal> фактически
                    выполняет <literal>listfile("test.*")</literal>. Теперь это не так.
                </revremark>
            </revision>
        </revhistory>
    </refsection>
</refentry>

