Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Delphi, .NET, Asm (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   Задача в .bat (https://forum.antichat.xyz/showthread.php?t=164821)

geforse 20.12.2009 11:45

Задача в .bat
 
Помогите написать программу для создание файла путем слияния 3 указанных файлов

Не силен в CMD ...

mailbrush 20.12.2009 11:55

Код:

copy file1+file2 file3

geforse 20.12.2009 12:18

Имена файлов нужно вводить в консоли (с этим как раз и проблема) + проверка существуют ли они и уже их объединять

SpangeBoB 20.12.2009 15:37

Использовать IF EXIST filename

_iks_ 21.12.2009 16:21

Цитата:

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

А вобще вот так:
Код:

@if exist file1.txt if exist file2.txt if exist file3.txt  copy file1.txt+file2.txt+file3.txt result.txt

SpangeBoB 21.12.2009 18:02

Цитата:

Сообщение от _iks_
Насколько я помню, в консоли нет встроенной возможности пользовательского ввода прямо в ней. Если ошибаюсь, то поправьте.

А вобще вот так:
Код:

@if exist file1.txt if exist file2.txt if exist file3.txt  copy file1.txt+file2.txt+file3.txt result.txt

Есть как через set /p или через передачу аргументов ввиде %1 %2 и т.д

_iks_ 21.12.2009 18:56

Цитата:

Сообщение от SpangeBoB
Есть как через set /p или через передачу аргументов ввиде %1 %2 и т.д

Точно, я раньше не сталкивался почемуто :) Тогда всё просто:

Код:

@echo off

echo First file:
set /p first=

echo Second file:
set /p second=

echo Third file:
set /p third=

if not exist %first%.txt goto CLOSE
if not exist %second%.txt goto CLOSE
if not exist %third%.txt goto CLOSE

copy %first%.txt+%second%.txt+%third%.txt result.txt
:CLOSE
exit


geforse 21.12.2009 21:06

Спасибо!

geforse 22.12.2009 21:21

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

Я пытался сделать, но не выходит :(

Код:

@echo off
echo Enter file name:
set /p file=

echo Enter catalog name:
set /p catalog=

cd %catalog%

DIR | SORT /+10 > %file%

pause > null
exit


SpangeBoB 22.12.2009 21:28

Каталоги в вывод не попадут,только имена файлов отсортированных по расширению:
dir C:\Windows /a:-d /o:e > result.txt


Время: 07:35