Pergunta

Hoje eu já vi isso suportes magia sistema NTFS estranhas: cada arquivo pode ter vários fluxos de dados. Basicamente pode-se ter uma a.txt de tamanho 0b arquivo, mas não pode haver qualquer número de bytes escondidas em um fluxo de dados separado para esse arquivo. Esta é NTFS estritamente magia relacionada e não vejo qualquer motivo nobre para ter esses fluxos ao redor. Você pode olhar para fluxos NTFS com a ajuda do utilitário streams da Sysinternals. Isto irá mostrar-lhe que, basicamente, cada um desses arquivos thumbs.db desagradáveis ??vem com um fluxo de dados extra.

Ok, agora eu vi este trabalho mágico em um sistema Windows NT4, córregos adicionados aos arquivos, copiado, apagado (com a ajuda do utilitário já mencionado), mas agora estou tentando isso em casa no meu sistema Win XP , mas embora eu pode detectar os fluxos existentes, não posso exibir seu conteúdo, não pode criar novos, ou muito qualquer coisa quando eu usar a sintaxe filename:streamname.

Eu recebo este erro:

O nome do arquivo, nome do diretório ou a sintaxe do rótulo do volume está incorreta.

Exemplo: Saída a partir do utilitário fluxos:

c:\DOWNLOADS>streams.exe -s .

Streams v1.56 - Enumerate alternate NTFS data streams
Copyright (C) 1999-2007 Mark Russinovich
Sysinternals - www.sysinternals.com

c:\DOWNLOADS\1013.pdf:
   :Zone.Identifier:$DATA       46

c:\DOWNLOADS>type 1013.pdf:Zone.Identifier
The filename, directory name, or volume label syntax is incorrect.

Por que não posso exibir o conteúdo do fluxo de dados alternativo?

Olhando para a documentação Microsoft em " como usar alternativos NTFS fluxos de dados ", eu posso ver que isso se aplica ao meu sistema operacional, embora eles fazem menção de que esses fluxos não será suportado no futuro. Qualquer pessoa pode lançar alguma luz sobre isso?

Foi útil?

Solução

A partir do topo da minha cabeça: NTFS datastreams foram introduzidos em Windows NT 4.0 e tem sido em torno de todos os descendentes (excluindo os descendentes win-95: 98, Me). No XP, Vista e Windows 7 ainda está por perto. Enquanto versões do Windows suportam NTFS, eles vão apoiar fluxos de arquivo. Eles vão apoiar NTFS por um longo tempo para vir.

O erro que você tem é descrito na página que você mostrar na sua pergunta. O comando type não entende córregos. Use:

more < 1013.pdf:Zone.Identifier

Trabalho com fluxos

Microsoft tem apenas comandos punhado que o trabalho com fluxos, de fato, apenas <, trabalho > com riachos, e, portanto, apenas comandos podem ser usados ??que pode trabalhar com estes operadores de redirecionamento. Eu escrevi um par de posts sobre fluxos de dados alternados sobre como você pode ainda manipular correntes com apenas estes comandos.

Streams só irá funcionar com programas que são projetados para trabalhar com eles, simplesmente porque eles precisam ser tratados de maneira especial (pontos de junção comparar, também uma característica de NTFS, mas as peles motorista os detalhes e programas não precisa fazer nada especial: basta considerar o ponto de junção de um arquivo real).

Quando você tenta abrir um fluxo de arquivo usando start filename:streamname e um programa diz algo como "filename ilegal" ou "arquivo não encontrado", e você é positivo que o nome do fluxo estiver correta, então é provável que o programa não suporta riachos. Notei que o Bloco de Notas, WordPad e Word / Excel trabalho corretamente com correntes, embora Word e Excel considerar os arquivos perigoso. Aqui estão algumas experiências você pode tentar.


NOTA: você parece considerar os dados alternativos córregos estranho. Eles são estranhos porque eles são tão escondido, mas muitos dos principais sistema de arquivos (HFS, NSS) tê-lo e as datas conceito que remonta ao início dos anos 80. Na verdade, originalmente os fluxos foram adicionados ao NTFS para interoperabilidade com outros sistemas de arquivos.

Outras dicas

BTW, você pode abrir AltDataStream com bloco de notas:

notepad.exe 1013.pdf:Zone.Identifier

Além disso, você pode especificar o tipo de AltDataStream (não apenas com o bloco de notas, é 'nome do fluxo completo):

1013.pdf:Zone.Identifier:$DATA

Esta é estritamente NTFS Magic Relacionado

Não é assim - Mac OS tem tido estes desde de volta ao dia, eles são chamados de garfos nesse mundo, e você iria usar ResEdit para chegar a eles. A deles é o de agregar recursos de mídia, juntamente com um executável.

Uma possível propósito para o fluxo alternativo: meta-dados. Pode-se acrescentar, para um documento, uma grande descrição sem afetar o conteúdo do arquivo original.

As alças Win32 API a nomeação de fluxos alternados muito bem.

CMD, por outro lado, faz alguma análise funk do nome do arquivo quando é possível ter * /? expansão e Barfs quando um ":" está presente. É por isso que copiar e tipo falhar, mas obras simples redirecionamento.

O erro literalmente significa que ele não está sendo reconhecido como um fluxo de dados alternativo e a referência que você está fazendo contém um certo caráter que não é permitido em um nome de caminho (o :; outros personagens não permitidos incluem \\, /, etc).

Tente:

start this_is_a.txt:ads.exe

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top