Ru-Board.club
← Вернуться в раздел «Программы»

» Командная строка, батники, сценарии (bat, cmd)

Автор: Dallik
Дата сообщения: 18.07.2016 14:44
BorlandIMHO, спасибо. Сегодня запустил старый вариант, до моих "исправлений", файлы корректно удалились.
Автор: frost745
Дата сообщения: 19.07.2016 22:36
подскажите. такая ситуация. когда на VMware Workstation пытаюсь вызвать диспетчер задач, при нажатии Ctrl+Alt+Del запускается диспетчер на основной системе и на виртуалке (не очень приятно).
может есть батник для его вызова (желательно чтобы запускался с рабочего стола).
Автор: Sphinx114
Дата сообщения: 20.07.2016 22:01
frost745
Код: start taskmgr
Автор: frost745
Дата сообщения: 20.07.2016 22:18
Sphinx114
благодарю. правда ещё в примерах видел в конце ставят "exit", но разницы не заметил никакой.
этой темой особо не занимался, а тут понадобилось.
Автор: thejustsoul
Дата сообщения: 21.07.2016 07:15
frost745

Цитата:
в примерах видел в конце ставят "exit"

Это для выхода из скрипта, но он и так выйдет из него по-умолчанию.
Автор: Pasha_ZZZ
Дата сообщения: 21.07.2016 07:23
frost745
Достаточно не батника, а ярлыка (taskmgr.exe находится в Windows\System32). Еще ПКМ по панели задач - Диспетчер задач.
А еще в Варе есть замена Ctrl+Alt+Del - надо жать Ctrl+Atl+Ins
Автор: Dertrytt
Дата сообщения: 23.07.2016 12:21
Доброго времени суток.
Возникла необходимость в скрипте для забора файлов и папок (с сохр. структуры) из нескольких сетевых папок в одну локальную.
Поиском нашёл такой вариант, но он только для файлов
Код: Option Explicit

Dim objFSO

Dim arrSources
Dim strDestination

Dim strPath

arrSources = Array("\\server1\share1", "\\server1\share2", "\\server2\share3", "\\server2\share4")
strDestination = "C:\All"

Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")

With objFSO
    For Each strPath In arrSources
        If .FolderExists(strPath) Then
            If .GetFolder(strPath).Files.Count > 0 Then
                .MoveFile .BuildPath(strPath, "*.*"), strDestination & "\"
            Else
                WScript.Echo "Folder [" & strPath & "] not contain any files"
            End If
        Else
            WScript.Echo "Folder [" & strPath & "] not found"
        End If
    Next
End With

Set objFSO = Nothing

WScript.Quit 0
Автор: Ivanov Ivan
Дата сообщения: 24.07.2016 21:40
BorlandIMHO
можете подробнее объяснить, как реализовать Вашу команду?
Автор: BorlandIMHO
Дата сообщения: 25.07.2016 10:33

Цитата:
можете подробнее объяснить,

Честно говоря - объяснять элементарные вещи довольно скучно...

Код: copy /b /y nul result.bin
Автор: zerno777
Дата сообщения: 26.07.2016 09:42
добрый день люди )))
посмотрите пожалуйста мой вопрос в смежной теме по батникам
http://forum.ru-board.com/topic.cgi?forum=62&topic=27959&start=400#6
Автор: mat86
Дата сообщения: 27.07.2016 08:51
Помогите создать bat
Идея такая: при запуске bat он заменяет Winre.wim (стандартное "средство устранения неполадок", а по сути небольшой Windows PE) вызываемый по нажатию f8 в начале загрузки windows 7 и выше, на свой Windows PE (Bart PE).

Задача:

При запуске bat он ищет по всем дискам файл \BWIM\boot.wim и \BWIM\boot64.wim (для 64 разрядных систем).

При нахождении ищет по всем дискам файл \Recovery\***\Winre.wim (где *** - папка с разным именем на разных пк).

При нахождении переименовывает Winre.wim в Winre.wim.bak.

Далее смотрит наличие папки (диск на котором \Recovery\***\Winre.wim):\Windows\SysWOW64\, то есть проверяет разрядность.

Если такая папка есть копирует \BWIM\boot64.wim в \Recovery\***\ (где *** - папка с разным именем на разных пк) с именем Winre.wim.

Если папки SysWOW64 нет копирует \BWIM\boot.wim в \Recovery\***\ с именем Winre.wim

Как найти BWIM\boot.wim по всем дискам реализовать могу, а дальше не знаю, помогите пожалуйста
Автор: mat86
Дата сообщения: 29.07.2016 01:27
\BWIM\boot.wim и \BWIM\boot64.wim это мои Windows PE на флэшке
Автор: Dertrytt
Дата сообщения: 31.07.2016 09:50
Доброго времени суток.
Есть вот такой код

Код: [no]cmd.exe /D /C"(md c:\$uvs || cd c:\$uvs) && copy /Y uvs\*.* c:\$uvs && start c:\$uvs\start.exe"[/no]
Автор: Sinclair83
Дата сообщения: 31.07.2016 12:17
Dertrytt, это нужно?

Код: @echo off

set source=uvs
set destination=c:\$uvs

if not exist %destination% md %destination%
xcopy %source% %destination% /S 1>nul
start %destination%\start.exe
Автор: Dertrytt
Дата сообщения: 31.07.2016 22:41
Sinclair83
Спасибо, то что нужно. Я ещё добавил параметр /Y, иначе выполнение командного файла приостанавливалось в случае наличия ранее скопированных файлов.
Автор: SaDim
Дата сообщения: 20.08.2016 22:35
Подскажите, пожалуйста, как запустить файл если в пути "неправильные" символы?
Как пример ...\µTorrent\utorrent.exe (это просто пример, пожалуйста, не надо предлагать переименовать папку).
Автор: shok
Дата сообщения: 20.08.2016 22:51
Скиньте утилю (если есть такая), скрывающую консольное окно. Пользовался hidcon.exe, но вирустотал на нее ругается.
Автор: asrfarr
Дата сообщения: 20.08.2016 23:33
Утилита Nircmd Ссылка nircmd.zip


Цитата:
nircmd.exe execmd [command]

где [command] - консольная команда, в том числе и командный файл (фактически происходит запуск %comspec% /c [command] в скрытой консоли).

Примеры

nircmd.exe execmd md с:\temp\folder01
nircmd.exe execmd сacls.exe c:\temp > c:\cacls.txt
nircmd.exe execmd "%ProgramFiles%\My Scripts\Rescan Devices.cmd"
Автор: BorlandIMHO
Дата сообщения: 21.08.2016 00:17
SaDim
Может я чего-то не так понимаю, но приведённый Вами пример с "µTorrent" никаких проблем с запуском не выявил. Единственно что - cmd-шник нужно сохранять в той кодовой странице, в которой данный символ присутствует (в данном случае - 1251) и в ней же запускать.
Автор: thejustsoul
Дата сообщения: 21.08.2016 01:22
shok

Цитата:
Скиньте утилю (если есть такая), скрывающую консольное окно. Пользовался hidcon.exe, но вирустотал на нее ругается.

http://redmine.lighttpd.net/attachments/660/RunHiddenConsole.zip
Автор: shok
Дата сообщения: 21.08.2016 02:37
asrfarr

Цитата:
Утилита Nircmd Ссылка nircmd.zip

два антивиря тоже ругаются.
thejustsoul

Цитата:
http://redmine.lighttpd.net/attachments/660/RunHiddenConsole.zip

эту нашёл с именем hidec.exe
работает нормально только с ключом /W
вирустотал проходит 100%. Огромное вам спасибо.
Автор: SaDim
Дата сообщения: 21.08.2016 10:17

Цитата:
Может я чего-то не так понимаю, но приведённый Вами пример с "µTorrent" никаких проблем с запуском не выявил. Единственно что - cmd-шник нужно сохранять в той кодовой странице, в которой данный символ присутствует (в данном случае - 1251) и в ней же запускать.

Странно, у меня (WinXP) пишет:
d:\Soft\Inter\Downloader\Piringovye_Seti\╡Torrent\╡Torrent3\utorrent.exe
Системе не удается найти указанный путь.

Может есть способ типа "*" или "?" для подстановки в имени пути, скажем если имя пути точно не известно?
Автор: Pasha_ZZZ
Дата сообщения: 21.08.2016 10:38
SaDim
Ну вам же написали, что в 1251 кодировке надо не только сохранять, но и запускать. А у вас по дефолту 866.
Где CHCP 1251?
Автор: SaDim
Дата сообщения: 21.08.2016 10:51
Звеняюсь, а где выбрать 1251 по дефолту ?
Автор: Pasha_ZZZ
Дата сообщения: 21.08.2016 11:32
SaDim
По дефолту-то зачем? Я ж написал, добавить в начало батника
Цитата:
chcp 1251
Автор: SaDim
Дата сообщения: 21.08.2016 16:58
Спасибо.
И всё таки хорошо бы узнать как выбрать 1251 по дефолту?
Автор: YuS_two
Дата сообщения: 21.08.2016 21:45
SaDim

Цитата:
хорошо бы узнать как  выбрать 1251 по дефолту?

В реестр добавить ключик "AutoRun" (расширяемый строковый параметр, то бишь REG_EXPAND_SZ) со значением "chcp 1251>nul" в ветку: "HKCU\Software\Microsoft\Command Processor"
Автор: Pasha_ZZZ
Дата сообщения: 22.08.2016 06:45
SaDim
Цитата:
как выбрать 1251 по дефолту?
Батники не ожидают такого поведения, поэтому лучше этого не делать
Автор: YuS_two
Дата сообщения: 22.08.2016 08:46
Pasha_ZZZ

Цитата:
Батники не ожидают такого поведения

Да батники вообще ничего не ожидают, ожидает пользователь. Ну, а ему очень хочется получить 1251 в консоли, так пусть пользуется, почему нет?
Кракозябры легко лечатся переходом на шрифт truetype. Больше ничем таким не чреват этот переход... ну, кроме совместимости символов выводимых на экран с существующими батниками в кодировке 866 и переносимостью новых, в кодировке 1251, на другие машины, но это уже другой вопрос...
Автор: MisHel64
Дата сообщения: 31.08.2016 16:49
Нужно запустить приложение в режиме совместимости. Подскажите, как сделать?

Страницы: 1234567

Предыдущая тема: Дубль


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.