Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Zone.Identifier (Альтернативные потоки NTFS)

Ответить
Настройки темы
CMD/BAT - Zone.Identifier (Альтернативные потоки NTFS)

Аватара для nugzari

Новый участник


Сообщения: 12
Благодарности: 0

Профиль | Отправить PM | Цитировать


здравствуйте уважаемые участники форума! Мне нужна ваша помощь. Решил добавить в контекстное меню папки команду Streams для отображения и удаления Zone.Identifier (Альтернативные потоки NTFS). Вручную не очень удобно к тому же он у тех файлов которых я скопировал с HDD друга(у меня отключено Zone.Identifier)

Например хочу посмотреть какие файлы в папке имеет Альтернативные потоки NTFS :

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\Streams]

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\Streams\command]
@="cmd /k streams64.exe -s \"C:\\Users\\Admin\\Downloads\""


\"C:\\Users\\Admin\\Downloads\"" как же сделать так чтобы вместе этого адреса чтоб был текущий каталог с контекстного меню которого вызвал эту команду

Спасибо заранее!

Отправлено: 09:51, 14-08-2019

 

Ветеран


Contributor


Сообщения: 24590
Благодарности: 7153

Профиль | Отправить PM | Цитировать


Цитата YuS_2:
Это в том смысле, что не станем же мы, при необходимости удаления этого Zone.Identifier, удалять во всех подряд файлах и каталогах, »
Вот я именно так и делаю. Токмо не во всех подряд, а в выделенных файлах.

Цитата YuS_2:
ибо в таком случае, вот это:
Цитата:
потому как это быстрее
не будет соответствовать действительности. Или я ошибаюсь? »
Всё равно это быстрее, нежели «посмотреть, выделить из них только те, где есть ADS Zone.Identifier, удалить ADS Zone.Identifier». На практике у меня чаще всего процесс удаления выглядит так: Ctrl-*, F2, Z . Разумеется, здесь не идёт речь про «прошерстить все полмиллиона файлов и каталогов раздела на предмет удаления ADS». Как правило, это содержимое каталога/группы каталогов, либо отдельные конкретные файл/файлы с удалением только одного конкретного ADS Zone.Identifier. Сейчас вот проверил навскидку — удаление ADS Zone.Identifier на примерно пяти тысячах файлов заняло у меня около двух секунд.

Так-то средства для просмотра ADS в Far Manager'е есть в виде плагина NTFS File Information.

Отправлено: 09:34, 15-08-2019 | #11



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для YuS_2

Старожил


Сообщения: 444
Благодарности: 185

Профиль | Отправить PM | Цитировать


Цитата Iska:
Всё равно это быстрее, нежели «посмотреть, выделить из них только те, где есть ADS Zone.Identifier, удалить ADS Zone.Identifier». »
Посмотреть - это условность... если имя потока заранее известно, то смотреть необязательно. Тут речь об универсальности больше...
Например, есть каталог в котором всего 2356 файлов, общим размером 1,1 Гб. Мы не знаем какие есть потоки в файлах и каталогах, но найти их требуется - как будет выглядеть код в Far?
Мой скрипт работает так:
Код: Выделить весь код
.\script.ps1 . -force -rec|ogv
картинка

Далее, нам надо удалить подозрительный поток "c.exe", ибо такого быть не должно:
картинка

Ну и естественно, проверяем:
картинка

Всё. Секундомер присутствует, легко проверить на любом другом наборе файлов.
Не такие уж и большие затраты времени. Львиная доля из этого времени приходится на CMD, т.к., (повторюсь) увы, powershell не научен извлекать альтпотоки из каталогов.

Цитата Iska:
Так-то средства для просмотра ADS в Far Manager'е есть в виде плагина NTFS File Information. »
Вообще, Far - стороннее средство, которое необходимо добавлять в систему, а потом ещё и разбираться с ним, как он работает... хотя, конечно, изучение работы, это то, что касается любого инструмента.

-------
scio me nihil scire

Это сообщение посчитали полезным следующие участники:

Отправлено: 12:36, 15-08-2019 | #12


Ветеран


Contributor


Сообщения: 24590
Благодарности: 7153

Профиль | Отправить PM | Цитировать


Цитата YuS_2:
Посмотреть - это условность... если имя потока заранее известно, то смотреть необязательно. »
Я токмо про это!

Цитата YuS_2:
Мы не знаем какие есть потоки в файлах и каталогах, но найти их требуется - как будет выглядеть код в Far? »
А хрен его знает. Я давно уже не программист, тем более на Lua .

Отобразить количество потоков файла на панели можно модификатором F:
Цитата:
F - количество потоков
Скрытый текст

а смотреть можно уже через вышеупомянутый NTFS File Information:
Скрытый текст


Под x64 готовых плагинов, так, чтобы работать в панели с потоками, как с контейнером (наподобие того, как открываются архивы или compound-файлы), нынче нет (раньше был NTFS File Streams от разработчика 7-Zip, под 1.x и x86:
Скрытый текст

у меня же нынче 3.x и x64). Теоретически, нет каких-то технических проблем написать аналог того плагина непосредственно на Lua, но… см. абзацем выше.

Цитата YuS_2:
Не такие уж и большие затраты времени. »
Не, я про другие затраты времени, не машинные — именно на просмотр и поиск «глазками». Именно потому я и счёл, что мне удобнее, быстрее и проще будет тупо «пробежаться» удалением одного искомого потока по выделенному файлу/списку.

P.S. Внезапно для себя выяснил, что Far Manager с некоторых пор уже умеет отображать не только размер основного потока, но и «занимаемое место на диске», и общий размер всех потоков файла:
Скрытый текст
Код: Выделить весь код
╔════════════════════════════════════════════════════════════════════════════════════ Помощь - Far ════════════════════════════════════════════════════════════════════════════════════╗
║ Настройка режимов просмотра панели файлов                                                                                                                                            ║
╟──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╢
║ показан в одной полосе.                                                                                                                                                              ▲
║                                                                                                                                                                                      ░
║    Допускаются следующие типы колонок:                                                                                                                                               ░
║                                                                                                                                                                                      ░
║    N[M[D],O,R[F],N] - имя файла                                                                                                                                                      █
║                 где: M - показывать символы пометки где: D - динамические символы пометки;                                                                                           █
║                      O - показывать имена без путей (предназначено в основном для плагинов);                                                                                         █
║                      R - выравнивать не умещающиеся имена по правому краю где: F - выравнивать все имена по правому краю;                                                            █
║                      N - не отображать расширения файлов;                                                                                                                            █
║                 Эти символы можно комбинировать, например NMR                                                                                                                        █
║                                                                                                                                                                                      █
║    X[R]       - расширение файла                                                                                                                                                     █
║                 где: R - выравнивать по правому краю;                                                                                                                                █
║                                                                                                                                                                                      █
║    S[C,T,F,E] - размер файла                                                                                                                                                         █
║    P[C,T,F,E] - выделенный размер файла                                                                                                                                              ░
║    G[C,T,F,E] - размер потоков файла                                                                                                                                                 ░
║                 где: C - группировать цифры, используя символ из настроек Windows;                                                                                                   ░
║                      T - использовать десятичные единицы вместо двоичных, т.е., чтобы вычислить килобайты, размер будет делиться на 1000, а не на 1024; в этом режиме символ единиц  ░
║                          показывается строчными буквами, например, к, м, г вместо К, М, Г;                                                                                           ░
║                      F - показывать размер в виде десятичной дроби с не более чем тремя цифрами до запятой, например, 999 байт будут показаны как 999, а 1024 байт как 1.00 К;       ░
║                          заметьте, что поведение зависит от наличия модификатора T;                                                                                                  ░
║                      E - экономичный режим, не показывать пробел между размером и символом единиц, например, 1.00к;                                                                  ░

Цитата YuS_2:
Вообще, Far - стороннее средство, которое необходимо добавлять в систему, а потом ещё и разбираться с ним, как он работает... »
Это да.
Это сообщение посчитали полезным следующие участники:

Отправлено: 14:08, 15-08-2019 | #13


Аватара для YuS_2

Старожил


Сообщения: 444
Благодарности: 185

Профиль | Отправить PM | Цитировать


Цитата Iska:
Отобразить количество потоков файла на панели можно модификатором F: »
Верно на все сто, если уж назвался груздем, то в кузов придется лезть. В смысле, что любой файловый менеджер, должен уметь работать с теми файловыми системами, которые могут использоваться в качестве хранилища файлов...

Цитата Iska:
быстрее и проще будет тупо «пробежаться» удалением одного искомого потока по выделенному файлу/списку. »
это да, в случае известного имени файлового потока, непродуктивно его ещё и просто глазами искать, в этом нет смысла...

Цитата Iska:
Внезапно для себя выяснил, что Far Manager с некоторых пор уже умеет отображать не только размер основного потока, но и «занимаемое место на диске», и общий размер всех потоков файла »
Думаю, что это должно быть стандартом для любого ФМ, не только для Far-а.

-------
scio me nihil scire


Отправлено: 15:26, 15-08-2019 | #14



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Zone.Identifier (Альтернативные потоки NTFS)

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Альтернативные потоки NTFS — удаление Zone.Identifier Anonymоus Скриптовые языки администрирования Windows 6 09-04-2019 19:21
Утилиты - [addon] Unknown Device Identifier Habetdin Наборы обновлений для Windows XP/2003/Windows 7 10 21-06-2012 12:47
Unknown Device Identifier 7.00 OSZone Software Новости программного обеспечения 0 06-12-2009 17:07
Ошибка Unknown Device Identifier truvo Хочу все знать 6 28-12-2008 23:29
Delphi - Delphi7, потоки mahsus Программирование и базы данных 1 19-10-2004 16:46




 
Переход