Итак, я пытаюсь создать сценарий, который будет делать несколько вещей, но сначала мне нужно что-то скопировать.
Мне нужно скопировать все файлы из каталога A в B, используя пользователя ввод, который будет указывать файлы для копирования на основе серийного номера или его части.
Т.е. После того, как пользователь вводит sn "###" и выбирает папку X или Y, я хочу, чтобы все файлы в папке с Test_1_051724###.txt были скопированы в каталог B.
Вот что у меня есть на данный момент. В конце концов мне нужно получить файлы с компьютера с Linux, подключенного через Ethernet, но я смогу изменить адреса позже, как только выясню, что я делаю не так с битом копирования.
Я мне удалось создать каталог и скопировать файлы, когда я ввожу «тест», но каждый раз, когда я использую номер, я не копирую. Я попробовал несколько вещей, но так и не смог понять, что я делаю неправильно или чего не хватает.
Некоторые рекомендации были бы полезны.
Спасибо вы.
Я попробовал другой подход и получил сообщение об ошибке:
@echo off
:start
rem Prompt the user for the search string
set /p search_string=Enter the search string:
rem Prompt the user to choose the source directory
echo Choose the source directory:
echo 1. EE1
echo 2. EE2
set /p source_dir_choice=Enter 1 or 2:
rem Set the source directory based on the user's choice
if %source_dir_choice% == 1 (
set source_dir="C:\Users\cliljohn\Documents\DCD\EE1\."
set dest_dir="C:\Users\cliljohn\Documents\DCD\EE1\TestMove1"
) else if %source_dir_choice% == 2 (
set source_dir="C:\Users\cliljohn\Documents\DCD\EE1\."
set dest_dir="C:\Users\cliljohn\Documents\DCD\EE1\TestMove2"
) else (
echo Invalid choice. Exiting.
goto end
)
@REM rem destination directory
@REM if %source_dir_choice% == 1 (
@REM set dest_dir=C:\Users\cliljohn\Documents\DCD\EE1\TestMove1
@REM ) else if %source_dir_choice% == 2 (
@REM set dest_dir=C:\Users\cliljohn\Documents\DCD\EE1\TestMove2
@REM ) else (
@REM echo Invalid choice. Exiting...
@REM goto start
@REM )
rem Create the destination directory if it doesn't exist
if not exist "%dest_dir%" mkdir "%dest_dir%"
rem Copy the files that contain the search string
for %%f in ("%source_dir%\*") do (
if "%%~nxf" gtr "" if "%%~nxf" lss "" if "%%~nxf" contains "%search_string%" (
copy "%%f" "%dest_dir%"
echo Copied file: %%~nxf
)
)
echo.
echo File copy complete.
echo.
goto start
:end
У меня это получилось, но кажется, что он хочет скопировать файл только тогда, когда слово находится в начале.
@echo off
:start
rem Prompt the user for the partial file name
set /p partial_filename=Enter the partial file name:
rem Prompt the user to choose the source directory
echo Choose the source directory:
echo 1. C:\Users\cliljohn\Documents\DCD\EE1
echo 2. C:\Users\cliljohn\Documents\DCD\EE2
set /p source_dir_choice=Enter 1 or 2:
rem Set the source directory based on the user's choice
if %source_dir_choice% == 1 (
set source_dir=C:\Users\cliljohn\Documents\DCD\EE1
) else if %source_dir_choice% == 2 (
set source_dir=C:\Users\cliljohn\Documents\DCD\EE2
) else (
echo Invalid choice. Exiting.
goto end
)
rem Set the destination directory
set dest_dir=C:\Users\cliljohn\Documents\DCD\EE1\TestMove
rem Create the destination directory if it doesn't exist
if not exist "%dest_dir%" mkdir "%dest_dir%"
rem Copy the files that match the partial file name
for %%f in ("%source_dir%\%partial_filename%*") do (
copy "%%f" "%dest_dir%"
echo Copied file: %%~nxf
)
echo File copy complete.
@REM goto start
:end
Подробнее здесь: https://stackoverflow.com/questions/784 ... ial-number
Попытка скопировать файл из одного каталога в другой, используя часть имени/серийного номера. ⇐ Linux
1715977905
Anonymous
Итак, я пытаюсь создать сценарий, который будет делать несколько вещей, но сначала мне нужно что-то скопировать.
Мне нужно скопировать все файлы из каталога A в B, используя пользователя ввод, который будет указывать файлы для копирования на основе серийного номера или его части.
Т.е. После того, как пользователь вводит sn "###" и выбирает папку X или Y, я хочу, чтобы все файлы в папке с Test_1_051724###.txt были скопированы в каталог B.
Вот что у меня есть на данный момент. В конце концов мне нужно получить файлы с компьютера с Linux, подключенного через Ethernet, но я смогу изменить адреса позже, как только выясню, что я делаю не так с битом копирования.
Я мне удалось создать каталог и скопировать файлы, когда я ввожу «тест», но каждый раз, когда я использую номер, я не копирую. Я попробовал несколько вещей, но так и не смог понять, что я делаю неправильно или чего не хватает.
Некоторые рекомендации были бы полезны.
Спасибо вы.
Я попробовал другой подход и получил сообщение об ошибке:
@echo off
:start
rem Prompt the user for the search string
set /p search_string=Enter the search string:
rem Prompt the user to choose the source directory
echo Choose the source directory:
echo 1. EE1
echo 2. EE2
set /p source_dir_choice=Enter 1 or 2:
rem Set the source directory based on the user's choice
if %source_dir_choice% == 1 (
set source_dir="C:\Users\cliljohn\Documents\DCD\EE1\."
set dest_dir="C:\Users\cliljohn\Documents\DCD\EE1\TestMove1"
) else if %source_dir_choice% == 2 (
set source_dir="C:\Users\cliljohn\Documents\DCD\EE1\."
set dest_dir="C:\Users\cliljohn\Documents\DCD\EE1\TestMove2"
) else (
echo Invalid choice. Exiting.
goto end
)
@REM rem destination directory
@REM if %source_dir_choice% == 1 (
@REM set dest_dir=C:\Users\cliljohn\Documents\DCD\EE1\TestMove1
@REM ) else if %source_dir_choice% == 2 (
@REM set dest_dir=C:\Users\cliljohn\Documents\DCD\EE1\TestMove2
@REM ) else (
@REM echo Invalid choice. Exiting...
@REM goto start
@REM )
rem Create the destination directory if it doesn't exist
if not exist "%dest_dir%" mkdir "%dest_dir%"
rem Copy the files that contain the search string
for %%f in ("%source_dir%\*") do (
if "%%~nxf" gtr "" if "%%~nxf" lss "" if "%%~nxf" contains "%search_string%" (
copy "%%f" "%dest_dir%"
echo Copied file: %%~nxf
)
)
echo.
echo File copy complete.
echo.
goto start
:end
У меня это получилось, но кажется, что он хочет скопировать файл только тогда, когда слово находится в начале.
@echo off
:start
rem Prompt the user for the partial file name
set /p partial_filename=Enter the partial file name:
rem Prompt the user to choose the source directory
echo Choose the source directory:
echo 1. C:\Users\cliljohn\Documents\DCD\EE1
echo 2. C:\Users\cliljohn\Documents\DCD\EE2
set /p source_dir_choice=Enter 1 or 2:
rem Set the source directory based on the user's choice
if %source_dir_choice% == 1 (
set source_dir=C:\Users\cliljohn\Documents\DCD\EE1
) else if %source_dir_choice% == 2 (
set source_dir=C:\Users\cliljohn\Documents\DCD\EE2
) else (
echo Invalid choice. Exiting.
goto end
)
rem Set the destination directory
set dest_dir=C:\Users\cliljohn\Documents\DCD\EE1\TestMove
rem Create the destination directory if it doesn't exist
if not exist "%dest_dir%" mkdir "%dest_dir%"
rem Copy the files that match the partial file name
for %%f in ("%source_dir%\%partial_filename%*") do (
copy "%%f" "%dest_dir%"
echo Copied file: %%~nxf
)
echo File copy complete.
@REM goto start
:end
Подробнее здесь: [url]https://stackoverflow.com/questions/78496265/trying-to-copy-a-file-from-one-dir-to-another-using-part-of-a-name-serial-number[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия