Há vários arquivos em uma unidade de rede, em um caminho bastante profundo e os diretórios na maioria dos quais têm nomes longos. Eu acho que eles foram criados originalmente quando alguém copiou e colou o diretório raiz desse grupo de arquivos da estação de trabalho local na unidade de rede compartilhada. Imagino que na estação de trabalho local, não houve problemas ao abrir o arquivo, mas agora que eles estão em um caminho mais longo na rede, o Windows não pode abri-los quando clico duas vezes. Também tentei copiar os arquivos e renomeá-los para algo mais curto, mas o Windows também não pode fazer isso.
TL; DR
arquivos da estação de trabalho de alguém em um caminho (hipotético) como este:
C:\Documents and Settings\SomeUser\Files\RootOfLongFileNames\LongSubdirectoryName1\...\VeryLongAndDescriptiveAndSpecificFilename.xls
-----------------------------------------^
agora foram copiados e colados na rede assim:
Q:\Dir1\Dir2\ProjectA\FilesForSomething\SomeotherDirectory\Blahblah\RootOfLongFileNames\LongSubdirectoryName1\...\VeryLongAndDescriptiveAndSpecificFilename.xls
---------------------------------------------------------------------^
E o caminho agora é muito longo para o Windows XP lidar.
Alguma dica de como posso ler esses arquivos?
fonte
Respostas:
Tente substituir o caminho com SUBST.EXE. Ele vem com o Windows:
O que você deseja fazer é substituir uma das pastas da cadeia por uma letra de unidade:
Agora a pasta LongSubdirectory1 é acessada na unidade X :. Quando terminar, você pode excluir sua substituição com
subst X: /D
Se você precisar disso o tempo todo, adicione-o ao seu script de login.
Outra abordagem seria mapear uma unidade mais abaixo na cadeia, de onde Q: está mapeado.
fonte
Você precisará renomear os nomes de diretório no caminho até que o nome seja curto o suficiente para o sistema operacional acessar.
Eu navegaria para a primeira pasta cujo nome você pode modificar e renomeá-lo para uma única letra e, em seguida, faria o mesmo para cada pasta subseqüente até chegar ao arquivo necessário.
Com relação à necessidade de manter a estrutura: existem limitações nas quais temos que trabalhar nos sistemas operacionais e não é bom operar rotineiramente fora desses parâmetros. Qualquer solução rápida agora será apenas um patch que precisará ser reexecutado novamente no futuro. Uma solução verdadeira envolverá a reorganização da estrutura de diretórios, de forma que esse problema extremamente longo do caminho da pasta / nome do arquivo não seja mais necessário.
fonte
Prefixe o caminho com
\\?\
. Observe que isso não funciona com todos os aplicativos.fonte
EDIT: Originalmente, eu sugeri o uso de robocopy, mas é claro que esse é o XP e não o pré-instalado.
Não há como você 'dar a todos o que eles querem'. Se o caminho do arquivo for muito longo, você não poderá executar nenhuma operação com ele. Na minha opinião, você tem algumas opções:
Siga as etapas das outras postagens e renomeie os diretórios até que sejam curtos. O bom dos computadores é que você pode escrever um script para não apenas fazer isso por você, mas também acompanhar o nome dos nomes originais. Mesmo com um script, isso deve consumir um pouco de tempo.
Obtenha um LiveCD do Linux. Coloque-o no computador e inicialize a partir desse CD. Vá ver o disco do Windows que será montado automaticamente como um sistema de arquivos separado. Obtenha todos os arquivos que você deseja e coloque-os em uma nova pasta na sua área de trabalho. Compacte essa pasta e coloque-a em um disco rígido externo ou pen USB ou se a sua unidade de rede permitir copiar de volta para o sistema de arquivos, mova-a para um diretório de nível superior.
fonte