Как создать поддельное / фиктивное дерево Windows из другого дерева Windows с оболочкой Windows? - PullRequest
0 голосов
/ 11 октября 2019

У меня большой каталог Windows и дерево файлов. Теперь мне нужно скопировать это дерево в другое место, но я не хочу копировать содержимое из каждого файла. Необходимы только структура и имена файлов с содержанием 0 байтов. Как это можно сделать с помощью оболочки cmd в Windows 10?

Что я сделал:

  1. xcopy /t e:\oldtreedir e:\new\oldtreedir
  2. dir /a /b /s > mybat.bat
  3. измените mybat.bat на:

    replace \ne:\ to 
    \ncopy nul e:\new\
    

    , чтобы для каждого имени файла была строка

    copy nul e:\new\oldtreedir\file1.txt
    

Мне пришлось редактировать mybat.bat,Может ли это быть сделано с помощью сценария в командной строке Windows?

PS: я нашел это: WIN-PRg , но эта программа не создает dir-дерево. Все файлы только в одном каталоге.

Ответы [ 2 ]

3 голосов
/ 11 октября 2019

Если я правильно понял ваш вопрос, robocopy должны сделать трюк:

robocopy "E:\oldtreedir" "E:\new\oldtreedir" "*.*" /E /CREATE
1 голос
/ 11 октября 2019

Нет необходимости создавать дополнительный пакетный файл:

@echo off
setlocal enabledelayedexpansion

xcopy /t e:\oldtreedir  e:\new\oldtreedir

for /f %%a in ('dir /b /s /a-d "e:\oldtreedir\*"') do (
  set "file=%%a"
  set "file=!file:E:\=E:\new\!"
  break>"!file!"
)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...