
  help chain   |   help chars   |   help colors   |   help compile   |   help nocase   |   help office   |   help options   |   help patterns   |   help select   |   help shell   |   help unicode   |   help var   |   samp   |  Команда: help select ссылка на выбор файла sfk:
   принципы по умолчанию для большинства команд sfk:
      - обработка подкаталога (подпапки) производится по умолчанию.
      - сравнение имен файлов нечувствительно к регистру.
      - скрытые и системные файлы не обрабатываются,
        за исключением некоторых команд, таких как копирование.
      - переход по символическим ссылкам.
        введите «опции справки sfk», чтобы узнать, как это изменить.
   как выбрать каталоги и содержащиеся в них имена файлов:
   sfk предоставляет множество способов указать, какие файлы вы хотите обработать,
   от очень простых, но негибких до очень подробных.
   1. выбор файла короткого формата:
      имя каталога [маска_файла1] [маска_файла2] [!маска_исключения_файла] [...]
      этот формат поддерживает ОДНО имя каталога, за которым следует множество масок файлов.
      его можно использовать с большинством команд, обрабатывающих деревья каталогов.
      пример:
      sfk list mydir foo bar .txt .zip !-tmp
         выбирает все файлы
         - в каталоге mydir и во всех его подкаталогах
         - наличие строки foo ИЛИ в имени файла (* не требуется)
         - ИЛИ которые заканчиваются на .txt ИЛИ .zip (*.txt не требуется)
         - но без -tmp в имени файла
      поддерживается командами:
         list, select, stat, run, detab, scantab, hexdump и некоторые другие.
   2. выбор файла длинного формата:
      -dir root1 [root2] [*pathmask*] [...] [-file mask1 [mask2] [...]
         [-dir root3 root4 !direxcludemask -file mask3 !xmask4] [...]
      этот формат поддерживает
      - несколько наборов корневых каталогов, начиная с -dir, каждый из них
        содержащий множество каталогов, масок путей или масок исключения каталогов.
        маска пути — это выражение в наборе каталогов, содержащее
        подстановочный знак "*". запускается маска исключения каталога
        по ! и может быть окружен \ для выбора точных имен каталогов.
      - Маска файла устанавливается для каждого набора корневых каталогов, начиная с -file.
        это также может содержать исключения файлов, начинающиеся с !
      при поддержке:
         почти каждая команда, чем может обрабатывать наборы файлов.
      чтобы выбрать все каталоги текущего каталога, кроме чего-то:
      -реж. !foo -> исключить подкаталоги, такие как *foo*
      -реж. !.foo -> исключить с расширением .foo
      -реж. !\foo -> исключить начало с foo
      -реж. !foo\ -> исключить окончание на foo
      -реж. !\foo\ -> исключить именно foo
      -реж. !\foo\bar\ -> исключить комбинированный подкаталог
      -реж. !*.foo* -> исключить с .foo где угодно
      чтобы выбрать только подкаталоги текущего каталога с чем-то:
      используя широкие выражения sub dir:
      -реж. -subdir foo -> включить пути, имеющие *foo*
      -реж. -subdir \foo -> включить пути, имеющие *\foo
      -реж. -subdir foo\ -> включить пути, имеющие *foo
      -реж. -subdir \foo\ -> включить пути точно foo
      -реж. -subdir .foo -> включить с расширением .foo
      -реж. -subdir \foo\bar\ -> включить комбинированный подкаталог
      вместо -subdir вы также можете ввести просто -sub
      используя компактные выражения sub dir:
      -реж. *foo* -> включить пути, имеющие *foo*
      -реж. *\foo -> включить пути, содержащие \foo
      -реж. *foo\ -> включить пути, содержащие foo\
      -реж. *\foo\ -> включить пути точно foo
      -реж. *.foo -> включить с расширением .foo
      -реж. *\foo\bar\ -> включить комбинированный подкаталог
      исключение по имени файла:
      -file !foo -> исключить все файлы типа *foo*
      -file !\foo -> исключить начинающийся с foo
      -file !foo\ -> исключить окончание на foo
      -file !\foo\ -> исключить точно foo
      -file !.foo -> исключить расширение foo
      включение по имени файла:
      -file foo -> включить все файлы типа *foo*
      -file \foo -> включить, начиная с foo
      -file foo\ -> включить оканчивающийся на foo
      -file \foo\ -> включить именно foo
      -file .foo .bar -> выбрать файлы .foo и .bar
      Примеры
      sfk scantab -dir mydir1 mydir2 *include* -file foo bar .hpp
         сканирует все файлы на наличие символов TAB
         - в каталоге mydir1 и всех его подкаталогах
           А ТАКЖЕ
         - в каталоге mydir2 и всех его подкаталогах
           ЕСЛИ
           - 1. путь к файлу содержит слово "включать",
             например, mydir1\core\include\foosys.hpp
           - 2. имя файла содержит foo ИЛИ bar
           - 3. или имя файла заканчивается на .hpp
      sfk scantab -dir mydir1 !include -file !.tmp !.save
         сканирует все файлы на наличие символов TAB в папке mydir1,
         исключая все поддиректории, имеющие в своем названии слово «include»,
         и исключая все файлы .tmp и .save.
      sfk list -dir source include -subdir save !.svn -file .bak
         перечислить файлы .bak из исходного дерева каталогов и включить,
         внутри в подкаталогах, имеющих «сохранить» в своем имени,
         за исключением подкаталогов, оканчивающихся на «.svn».
      sfk list -dir source include *save !.svn -file .bak
         то же, что и выше, но в формате компактного подкаталога:
         маски включения subdir требуют подстановочного знака * в любом месте
         чтобы было ясно, что они не являются корневыми каталогами.
         Маски исключения subdir могут оставаться такими, какие они есть.
      повторное использование набора файлов в сценариях:
      чтобы разрешить повторное использование одного и того же -dir... -file...
      параметры разными командами, эти опции существуют:
      -root x префикс каждого параметра -dir на x,
                  затем удалите x в параметрах -dir, чтобы
                  сделать набор файлов совместимым для копирования/синхронизации
      -using l use -dir ... -file ... текст, указанный в метке l.
                  текст в этой метке может содержать // примечания,
                  но нет переменных типа #(foo).
      -checkdirs остановить, если указанные папки -dir не существуют
      чтобы получить полный пример типа скрипта:
         sfk batch mytest.bat для примера .bat для Windows
         sfk batch mytest.sh для примера Cygwin/Linux .sh
   3. выбор набора файлов с одним параметром:
      некоторые команды, такие как find, filter или tail, не принимают полный
      короткий формат, а только один файл или параметр dir, так как
      было бы слишком сложно смешивать краткий формат с локальным
      опции. подробнее об этом в локальной справке команды.
   4. передача списков имен файлов в цепочках команд:
      вместо выбора файлов в текущей команде вы можете использовать
      список имен файлов, созданный предыдущей командой, например:
      sfk выберите mydir .txt +detab=3
         выбирает все файлы .txt из каталога mydir, затем передает
         этот список файлов для отделения, где файлы отделены.
      цепочка команд более интуитивно понятна, так как вы можете поиграть
      с различными наборами файлов перед выполнением фактических изменений
      на выбранных файлах.
      sfk имена фильтров.txt +texttofilenames +list -late
         при условии, что name.txt содержит список имен файлов,
         эта цепочка команд перечисляет самые последние из этих файлов.
         обратите внимание, что в этом случае неясно, передать ли
         - имя файла "names.txt" или
         - содержимое строки из names.txt
         как имена файлов в "список", поэтому нам нужно вставить
         +texttofilenames или +ttf для принудительного преобразования.
      при поддержке:
         некоторые команды. проверьте локальную справку каждой команды для получения дополнительной информации.
   смотрите также
      sfk help options общие параметры для большинства команд.
      sfk list для получения дополнительных примеров выбора файлов. | 
   ![]()  |