Deutsch
Germany.ruФорумы → Архив Досок→ Программирование

Перенос опр.файлов из одной папки в другую

1241  
kukka постоялец26.05.19 16:58
kukka
26.05.19 16:58 
Последний раз изменено 26.05.19 17:06 (kukka)

1. Имеется папка А, с файлами к примеру начинающихся со слова CSS.

Файлы, содержащие это слово нужно автоматом перенести в папку В.


Какой батник нужно применять?? Какие типы переносимы (HTML, jpg, doc, xls, PDF)?


Нашла код в инете, но он он относится больше к количеству перенесенных данных и тем не менее не работает.


@echo off
setlocal

set n=5

set "dest=C:\Udemy 1"

set "dest=C:\Dokumente\Udemy 2"

for /f "delims=" %%i in ('2^>nul dir /on /b /a-d "%src%"') do call :sub "%src%\%%i"

:exit
endlocal
goto :eof

:sub
set /a i+=1
if %i% leq %n% (move /y "%~1" "%dest%") else goto :exit
exit /b 0



Всем спасибо!!!

#1 
kukka постоялец26.05.19 17:08
kukka
NEW 26.05.19 17:08 
в ответ kukka 26.05.19 16:58

2. Отдельный вопрос: какой код применяется ( или имеется ли вообще как таковой ) , чтобы перенести из папки А данные 1,2,3 в новую папку, начинающуюся со слова к примеру PQ??


#2 
AlexNek патриот26.05.19 17:22
AlexNek
NEW 26.05.19 17:22 
в ответ kukka 26.05.19 16:58, Последний раз изменено 26.05.19 17:25 (AlexNek)
Имеется папка А, с файлами к примеру начинающихся со слова CSS.Какой батник нужно применять??

C:\temp\tmp1\css* C:\temp\tmp2\


но если


Файлы, содержащие это слово
то батником похоже не отделаться
#3 
dArtagnan постоялец26.05.19 21:50
dArtagnan
NEW 26.05.19 21:50 
в ответ kukka 26.05.19 16:58, Последний раз изменено 26.05.19 22:36 (dArtagnan)

Теоретически можно попытаться примерно так:

setlocal EnableDelayedExpansion
for %%f in (*.XXX) do (
set /p _str=<%%f
set _strbeg=!_str:~0,3!
if !_strbeg!==CSS ( copy %%f B\ )
)

где ХХХ- расширение имени файла, CSS - шаблон для первых трех символов первой строки, B\ - директорий, куда копировать.


ЗЫ. Вообще, вопрос поставлен не вполне четко: это ИМЯ файла должно начинаться с указанных символов, или СОДЕРЖИМОЕ файла? Если имя, то ответ очевидный и элементарный. Я рассмотрел второй случай.

#4 
Murr патриот27.05.19 10:37
Murr
NEW 27.05.19 10:37 
в ответ kukka 26.05.19 16:58

с файлами к примеру начинающихся со слова CSS.

-----

С именами файлов начинающихся с ЦСС или с содержимым файлов начинающимся с ЦСС?

Если первое - можно ковырять средствами ОС. Точное описание доступных команд надо смотреть в используемой версии коммандного процессора.

Если второе - надо искать внешнюю команду, которая умеет определить соответствие файла заданному критерию.


Какой батник нужно применять??

-----

Соответствуюй версии командного процессора.


Какие типы переносимы (HTML, jpg, doc, xls, PDF)?

-----

Пожалуй спрошу странное - каким образом на компьютер должны попасть файлы "непереносиимого типа"? смущ



Нашла код в инете, но он он относится больше к количеству перенесенных данных и тем не менее не работает.

------

Ну и как определялось к чему именно он относится?

А что "не работает" - ну так мопоток рядом с компьютером "тоже не работает"... просто им гвозди забивают, а не файлы "щелкают"...



какой код применяется ( или имеется ли вообще как таковой ) , чтобы перенести из папки А данные 1,2,3 в новую папку, начинающуюся со слова к примеру PQ??

-----

Вопрос первый - есть ли свидетельства возможности "перенести из папки А данные 1,2,3 в новую папку, начинающуюся со слова к примеру PQ"?

В остальном - надо изучать набор доступных команд и смотреть как из них организовать то что требуется.

у меня, например, вот такой набор:

For more information on a specific command, type HELP command-name

ASSOC Displays or modifies file extension associations.

ATTRIB Displays or changes file attributes.

BREAK Sets or clears extended CTRL+C checking.

BCDEDIT Sets properties in boot database to control boot loading.

CACLS Displays or modifies access control lists (ACLs) of files.

CALL Calls one batch program from another.

CD Displays the name of or changes the current directory.

CHCP Displays or sets the active code page number.

CHDIR Displays the name of or changes the current directory.

CHKDSK Checks a disk and displays a status report.

CHKNTFS Displays or modifies the checking of disk at boot time.

CLS Clears the screen.

CMD Starts a new instance of the Windows command interpreter.

COLOR Sets the default console foreground and background colors.

COMP Compares the contents of two files or sets of files.

COMPACT Displays or alters the compression of files on NTFS partitions.

CONVERT Converts FAT volumes to NTFS. You cannot convert the current drive.

COPY Copies one or more files to another location.

DATE Displays or sets the date.

DEL Deletes one or more files.

DIR Displays a list of files and subdirectories in a directory.

DISKCOMP Compares the contents of two floppy disks.

DISKCOPY Copies the contents of one floppy disk to another.

DISKPART Displays or configures Disk Partition properties.

DOSKEY Edits command lines, recalls Windows commands, and creates macros.

DRIVERQUERY Displays current device driver status and properties.

ECHO Displays messages, or turns command echoing on or off.

ENDLOCAL Ends localization of environment changes in a batch file.

ERASE Deletes one or more files.

EXIT Quits the CMD.EXE program (command interpreter).

FC Compares two files or sets of files, and displays the differences between them.

FIND Searches for a text string in a file or files.

FINDSTR Searches for strings in files.

FOR Runs a specified command for each file in a set of files.

FORMAT Formats a disk for use with Windows.

FSUTIL Displays or configures the file system properties.

FTYPE Displays or modifies file types used in file extension associations.

GOTO Directs the Windows command interpreter to a labeled line in a batch program.

GPRESULT Displays Group Policy information for machine or user.

GRAFTABL Enables Windows to display an extended character set in graphics mode.

HELP Provides Help information for Windows commands.

ICACLS Display, modify, backup, or restore ACLs for files and directories.

IF Performs conditional processing in batch programs.

LABEL Creates, changes, or deletes the volume label of a disk.

MD Creates a directory.

MKDIR Creates a directory.

MKLINK Creates Symbolic Links and Hard Links

MODE Configures a system device.

MORE Displays output one screen at a time.

MOVE Moves one or more files from one directory to another directory.

OPENFILES Displays files opened by remote users for a file share.

PATH Displays or sets a search path for executable files.

PAUSE Suspends processing of a batch file and displays a message.

POPD Restores the previous value of the current directory saved by PUSHD.

PRINT Prints a text file.

PROMPT Changes the Windows command prompt.

PUSHD Saves the current directory then changes it.

RD Removes a directory.

RECOVER Recovers readable information from a bad or defective disk.

REM Records comments (remarks) in batch files or CONFIG.SYS.

REN Renames a file or files.

RENAME Renames a file or files.

REPLACE Replaces files.

RMDIR Removes a directory.

ROBOCOPY Advanced utility to copy files and directory trees

SET Displays, sets, or removes Windows environment variables.

SETLOCAL Begins localization of environment changes in a batch file.

SC Displays or configures services (background processes).

SCHTASKS Schedules commands and programs to run on a computer.

SHIFT Shifts the position of replaceable parameters in batch files.

SHUTDOWN Allows proper local or remote shutdown of machine.

SORT Sorts input.

START Starts a separate window to run a specified program or command.

SUBST Associates a path with a drive letter.

SYSTEMINFO Displays machine specific properties and configuration.

TASKLIST Displays all currently running tasks including services.

TASKKILL Kill or stop a running process or application.

TIME Displays or sets the system time.

TITLE Sets the window title for a CMD.EXE session.

TREE Graphically displays the directory structure of a drive or path.

TYPE Displays the contents of a text file.

VER Displays the Windows version.

VERIFY Tells Windows whether to verify that your files are written correctly to a disk.

VOL Displays a disk volume label and serial number.

XCOPY Copies files and directory trees.

WMIC Displays WMI information inside interactive command shell.

For more information on tools see the command-line reference in the online help.



#5 
kukka постоялец27.05.19 22:36
kukka
NEW 27.05.19 22:36 
в ответ Murr 27.05.19 10:37, Последний раз изменено 28.05.19 07:32 (kukka)

Я вообще то не программист поэтому отвечу только на некоторые вопросы, надеюсь что ответ поставлен более менее чётко.

1. Файл начинается со слова CSS, это одни из примеров. В зависимости от структуры папки файлы могут начинаться с 10-, 20-, -30....

-------

2. Командный процессор BAT. Код внесён в обычный note редактор и сохранён с расширением bat. После клика на данный документ появляется окно cmd и потом исчезает

-------

3. Переносимость расширения. Вопрос поставлен для теста, так как ранее определенная задача ранее не требовала решения

-------

4. Про код с папкой PQ я нигде не писала. Расширение данных идёт методом сбора станд.документов.


Перечисленные Вами команды не дают мне информации как их применять.


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

#6 
  moose старожил27.05.19 22:56
NEW 27.05.19 22:56 
в ответ kukka 26.05.19 16:58
1. Имеется папка А, с файлами к примеру начинающихся со слова CSS.Файлы, содержащие это слово нужно автоматом перенести в папку В.

имя файла начинается с CSS, или его содержимое?

алзо, файл с именем CSS_кужнечик.бла, который имеет внутри текст "в траве сидел кузнечик", это - ваш файл, который нужно переносить?

а файл с именем файла "кузнечик.бля", содержащий "CSS в траве сидело, а кузнечик был не там"?

если второе, то как насчет файла с именем файла "кузнечик.бля", содержащий "блабла CSS в траве сидело, а кузнечик был не там"?


опишите четко, подом только дальше.


#7 
dArtagnan постоялец28.05.19 05:46
dArtagnan
NEW 28.05.19 05:46 
в ответ kukka 27.05.19 22:36, Последний раз изменено 28.05.19 05:50 (dArtagnan)

Чем Вас приведенный выше мною код не устроил? Вы пробовали его применить? Он работает, я протестировал. И универсален - просто замените "CSS "на другую последовательность символов. Будет точно работать с любыми текстовыми файлами, с бинарниками - сложнее, но и с ними есть шанс, что получится. Или Вы не смогли его скопипастить и сохранить в виде bat-файла? Не нравится copy - замените на move. Создайте переменные с именами для источника данных и целевого каталога, куда переносить. Ядро - это получение первой строки из файла и обрезка до нужного количества символов - точно работает. Но только обязательно нужно указать на необходимость DelayedExpansion.

#8 
kukka постоялец28.05.19 06:39
kukka
NEW 28.05.19 06:39 
в ответ dArtagnan 28.05.19 05:46

Пмвет попробовала я твой код, ничеготне фурычит...попробую ещё заменить слова.


Вечером отпишусть...

#9 
Murr патриот28.05.19 10:54
Murr
NEW 28.05.19 10:54 
в ответ kukka 27.05.19 22:36

Я вообще то не программист поэтому отвечу только на некоторые вопросы, надеюсь что ответ поставлен более менее чётко.

-----

Ну а Я - программист - могу найти ответ когда мне полностью понятен вопрос. Пока вопрос не понятен.


Файл начинается со слова CSS, это одни из примеров.

-----

Ты "Алису в..." Люиса Керола читала? Там как раз написано что есть что и при этом далеко не все детишки в состоянии понять описанное.

Потому вопрос повторяется - есть имя файла и есть седержимое файла. Об чем именно идет речь когда говорится "файл начинается с"?



Командный процессор BAT.

-----

Ни в Виндовс, ни в Юникс стандартного процессора с таким названием нет.

Нужно искать разработчика используемого процессора и спрашивать об имплементированных возможностях.



Код внесён в обычный note редактор и сохранён с расширением bat.

------

Что такое "обычный note редактор"? У меня ни в одной из версий Виндовс нет исполняемого файла note.exe.



После клика на данный документ появляется окно cmd и потом исчезает

-----

Ну тогда стоит поппробовать изучить что же происходит при кликах.

CMD - можно запустить из стартового меню.

После запуска в окне будет написана версия.

Отталкиваясь от нее уже можно будет думать над тем что именно доступно.

Там же, в запущенном CMD, можно набить "HELP" or HELP <command>" - и получить справку по тому,

как работает та или иная доступная команда, какие параметры нужны и какие опциональны и т.п.


Переносимость расширения. Расширение данных идёт методом сбора станд.документов.

-----

Квадратная с переходом в розовый горошек.


Перечисленные Вами команды не дают мне информации как их применять.

-----

Сбоку, после имени команды, написано что каждая из них делает.

Для более детальной информации - запусти CMD и запроси HELP по нужной команде.

Выше написано как это сделать.



Из достоверных источников...

-----

...известно, что есть люди, которые знают что они делают.

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

#10 
Murr патриот28.05.19 11:00
Murr
NEW 28.05.19 11:00 
в ответ dArtagnan 28.05.19 05:46

Чем Вас приведенный выше мною код не устроил?

-----

Тем, что после copy-paste as is, он не сделал то, чего от него ожидала ТС.

А написать корректно - скорее всего не получится - Я так полагаю, что целевая директория "лежит на другом хосте куда доступ ограничен".

Ну а хакать систему из батничка... хи-хи...

#11 
dArtagnan постоялец28.05.19 14:23
dArtagnan
NEW 28.05.19 14:23 
в ответ Murr 28.05.19 11:00

Не исключено. Но у меня кончились хрустальные шары и мана для телепатических изысков.

#12 
kukka постоялец28.05.19 20:34
kukka
NEW 28.05.19 20:34 
в ответ kukka 28.05.19 06:39

closed

#13 
dArtagnan постоялец28.05.19 21:05
dArtagnan
NEW 28.05.19 21:05 
в ответ kukka 28.05.19 20:34

Удивительная вежливость. Надеюсь, ни у кого в данном форуме больше не возникнет крайне опрометчивого желания помочь ТС.

#14