ADS (Alternative Data Streams, альтернативные потоки данных)

Хотите говорить о Far и не знаете, куда обратиться?
AlexII
Posts: 270
Joined: Mon 10 Apr, 2006 00:53
Location: станица Григорополисская
Has thanked: 147 times
Contact:

Re: ADS (Alternative Data Streams, альтернативные потоки дан

Post by AlexII »

Latest post of the previous page:

zg wrote:если в xp нет, то с висты.
Спасибо, ясно.
User avatar
John Doe
Бюрократ
Posts: 13807
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 426 times
Contact:

ADS (Alternative Data Streams, альтернативные потоки данных)

Post by John Doe »

Оказывается в имени потока разрешены чуть ли не все символы ASCII: http://eretik.omegahg.com/art/08.html
User avatar
John Doe
Бюрократ
Posts: 13807
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 426 times
Contact:

ADS (Alternative Data Streams, альтернативные потоки данных)

Post by John Doe »

ccaid wrote: Просмотр/редактирование потока
можно использовать внутренние вьюер/редактор через префикс, что-то типа:
view: c:\windows\win.ini:win.bmp
edit: c:\windows\win.ini:win.txt
Похоже FarCmds утратил способность работать с потоками.
User avatar
HaRT
Moderator
Posts: 10822
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

ADS (Alternative Data Streams, альтернативные потоки данных)

Post by HaRT »

John Doe wrote: Похоже FarCmds утратил способность работь с потоками.
У меня работает (по меньшей мере в %TEMP%). Far 3.0 build 4406 x86
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
John Doe
Бюрократ
Posts: 13807
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 426 times
Contact:

ADS (Alternative Data Streams, альтернативные потоки данных)

Post by John Doe »

Ага, а я пробовал на чём-то вроде edit:1:txt
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

ADS (Alternative Data Streams, альтернативные потоки данных)

Post by buniak_a_h »

У меня несколько вопросов по ADS. Извините, если сморожу глупость: я с этим не сталкивался.
  1. Как определить, сколько у файла альтернативных потоков и есть ли у него ADS с конкретным именем? Панель же берёт количество потоков откуда-то для колонки F
    P/S. Прочитать в редактор и проанализировать я умею, а есть ли более прямой способ?
  2. Как скопировать файл со всеми потоками? Про настройку [x] Use system copy routine я знаю; а есть ли возможность скопировать потоки средствами самого ФАРа?
  3. Можно ли получить список имён ADS? Про Alt+F7 я прочитал… Из макроса неудобно :-(
  4. Аналогично с удалением: в макросе как-то удаление через временную панель некузяво. Нет ли более прямого способа?
Last edited by buniak_a_h on Tue 30 May, 2023 04:02, edited 3 times in total.
montonero
Posts: 463
Joined: Wed 25 Jun, 2008 16:55
Has thanked: 3 times
Been thanked: 9 times

ADS (Alternative Data Streams, альтернативные потоки данных)

Post by montonero »

buniak_a_h wrote: Tue 30 May, 2023 03:21 есть ли у него ADS с конкретным именем?
Не знаю насчет макросов, но можно просто попробовать открыть файл, например file.ext:stream
"Far... Far never changes..."
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

ADS (Alternative Data Streams, альтернативные потоки данных)

Post by buniak_a_h »

montonero, спасибо. Я уже попробовал - с именованным потоком работают почти все инструменты lua, рассчитанные на файлы. win.DeleteFile, io.open, editor.Editor и т.п. …
User avatar
John Doe
Бюрократ
Posts: 13807
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 426 times
Contact:

ADS (Alternative Data Streams, альтернативные потоки данных)

Post by John Doe »

  • dir /r
  • powershell Get-Item -path .\hello.txt -stream *
  • powershell "Get-ChildItem -recurse | ForEach { Get-Item $_.FullName -stream * } | Where stream -ne ':$DATA'"
Powershell почему-то с папками не справляется
https://t.me/FarManager — Telegram чат
User avatar
John Doe
Бюрократ
Posts: 13807
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 426 times
Contact:

ADS (Alternative Data Streams, альтернативные потоки данных)

Post by John Doe »

А программно вот нашёл https://web.archive.org/web/20230407210 ... eams.phtml
https://t.me/FarManager — Telegram чат
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

ADS (Alternative Data Streams, альтернативные потоки данных)

Post by buniak_a_h »

Эх! Не видит альтернативных потоков far.RecursiveSearch! А то так было бы кузяво написать:
far.RecursiveSearch( '.', function(_,f)a[#a+1]=f;end, bor(F.FRS_RECUR,F.FRS_SCANSYMLINK,F.FRS_SCANADS) )
Ну и новый флаг - FRS_SCANADS. А то дискриминация какая-то: сканировать симлинки есть, а сканировать альт.потоки - нет.
А ещё в форме копирования по F5 не хватает флажка, аналогичного тому, что в поиске файла.
montonero
Posts: 463
Joined: Wed 25 Jun, 2008 16:55
Has thanked: 3 times
Been thanked: 9 times

ADS (Alternative Data Streams, альтернативные потоки данных)

Post by montonero »

buniak_a_h wrote: Tue 30 May, 2023 21:09 сканировать симлинки есть, а сканировать альт.потоки - нет
Потому что для потоков свой собственный API https://learn.microsoft.com/en-us/windo ... le-streams
"Far... Far never changes..."
Post Reply

Return to “Обсуждение Far Manager”