|
|
C нами с 09.04.2005 Репутация: 0.1
|
|
Такой темы не смог найти. Решил создать.
Есть вопрос, как реализовать такую задумку:
Идея такова:
Необходимо запустить несколько команд от имени другого пользователя, притом чтобы не вводить пароль пользователя на каждую команду.
Кто подскажет каким образом реализовать..?
У меня такие идеи: runas [comand1, comand2] - только вот как это сделать..?
Я пробовал уже:
В качестве экрана и разделителей между командами. Не получилось. Может кто подскажет как правильно разделить надо.. -Как я понимаю надо правильно заэкранировать, но вот как это сделать? Уже облазил форумы, справку... Ничего не получается.
Идея 2:
И уже в root shell парсить нужные мне команды... При этом убивая консоль родитель. Или запускать cmd root shell прямо в родительской консоли. - Этот вариант пока не отработал как следует, пока не получается парсить команды в новый экземляр cmd... Может кто знает как..? и другие опараторы пока не получилось применить.
Или запускать и уже чтобы сценарий отрабатывал от имени другого пользователя, этот вариант я думаю заработает, но пока не очень хочется в виду его некрасивости... Хочется иметь один файл сценария и исполнять его.
Также забавы ради попробовал:
runas GOTO run
:run
comand1
comand2 | Не работает разумеется.
Не предлагать:
"Запустить от другого пользователя" - через правую кнопку мыши. Так-как на Win 2k старых версиях этого нету.
не предлагать. Так-как не безопасно, и опция не поддерживается в Win2k.
Всем кто откликнется спсибо. Очень желательно рабочий пример... Если у кого дома есть Windows то желательно попробовать работу перед тем как советовать.
|
|
|
|
|
|
|
|
Возраст: 38 C нами с 08.05.2009 Репутация: 5.6
|
|
Привет всем подскажите плиз как в батнике написать чтоб при копировании из папки в другую папку он сверял по изменённым файлам и копировал только их если можно то сразу готовый кодик выложите плиз
|
_____________________________ Прошу не тыкать в мануал его и так предостаточно!!!
|
|
|
|
|
|
|
C нами с 27.05.2005 Репутация: 231.9
|
|
Цитата: |
сверял по изменённым файлам
|
Что сверял то? Дату, размер, содержание, имя?
И не забывайте про пунктуацию. Читать никаких сил нет, ей богу.
|
_____________________________ Презираю сетевых троллей!
Прокачай свой unsorted.ru!
Ты активный сидер? Часто, а главное качественно выкладываешь видео новинки? Устал от монотонного оформления раздач? Не беда! Теперь Фильмонайзер оформит всё за тебя!
|
|
|
|
|
|
|
Возраст: 38 C нами с 08.05.2009 Репутация: 5.6
|
|
Phil, Простите, исправлюсь , сверку надо делать по размеру.
|
_____________________________ Прошу не тыкать в мануал его и так предостаточно!!!
|
|
|
|
|
|
|
Возраст: 38 C нами с 08.05.2009 Репутация: 5.6
|
|
Привет всем! Подскажите плиз, как в батнике написать чтоб, при копировании из папки в другую папку он сверял по изменённым файлам, а в частности по размеру файла и копировал только их, если можно, то сразу готовый кодик выложите плиз.
|
_____________________________ Прошу не тыкать в мануал его и так предостаточно!!!
|
|
|
|
|
|
|
Возраст: 34 C нами с 30.04.2006 Репутация: 77.5
|
|
DALDON, а я собственно не понимаю сути мучений. Есть такая ось - Linux - так там подобное уже во всех возможных вариантах имеется. И неплохо было бы проконсультировать для чего именно требуется скрипт. Если для работы в сети - проще написать класс на пхп. Если просто консольное приложение - то рекомендую использовать С++. Там хорошо реализованы возможности по созданию классов, что вполне позволит тебе запомнить пароль и не вводить его повторно. Подробнее - читай Страуструпа.
|
_____________________________ Дайте в руки мне баян, я порву его совсем.
|
|
|
|
|
|
|
C нами с 09.04.2005 Репутация: 0.1
|
|
inkognit, есть множество ПК под управлением Windows и пользователей которые работают под ограниченной учётной записью. Есть набор действий/ПО которым требуются права "Администратор". Задача: чтобы на файловом сервере лежал набор файлов с различными названиями которые можно удобно запускать для выполнения рутинных задач: добавление принтера, установка обновлений - в общем функций RUN32.DLL, и других библиотек, а также устанавливать ПО "коллективно". AD нету и не планируется.
PHP, C++,C - не знаю к сожалению и изучать в данный момент нету времени, поэтому и спрашиваю.
Необходимо в короткий срок под конкретную задачу подготовить сценарий или бинарный файл который бы выволнял необходимые мне действия на определённых машинах.
Если подскажите как сделать такое: к примеру исходный код на С++ и инструкция по компиляции, и как подстроить под мои задачи - буду весьма рад. Если говорить в целом мне нету разницы каким образом выполнять данную задачу. А тему по CMD я создал чтобы тоже была, так-как полезная вещь для выполнения рутинных операций в Windows системах.
|
|
|
|
|
|
|
|
Возраст: 33 C нами с 30.06.2009 Репутация: 2.6
|
|
DALDON, ну вот и хорошо, что ты наконец описал в точности цели и область применения всего вышеописанного.
Отвечаю, есть такое дело. Почитай о WSH (Windows Scripting Host). Эта штуковина позволяет расширить функционал Visual Basic до требуемого тобой уровня + к тому в сети лежит очень много уже готовых к работе скриптов. Где точно - юзай гугель, но помнится, что на коднете.
Добавлено спустя 1 минуту 38 секунд:
(все тот же инкогнит. случайно залез с аккаунта подруги.)
|
|
|
|
|
|
|
|
C нами с 09.04.2005 Репутация: 0.1
|
|
osanve-kenta, смотрел уже в сторону WSH. Но как-то не очень хотелось вникать в такие дебри для решения такой не сложной задачи, WSH довольно узкоспециализирован, и тратить время на его освоение не вижу смысла. Наличие готовых решений радует, по каким словам искать под мою задачу? runas WSH..? Но жаль мне времени тратить на этот WSH во всех его проявлениях, хочется cmd.
Нашёл что-то вида
WshShell = WScript.CreateObject("WScript.Shell") ;
WshShell.Run("runas /user:Администратор@domain cmd");
WScript.Sleep(100);
WshShell.AppActivate("runas.exe");
WshShell.SendKeys("password~"); |
Работает. Но задачу не решает. Надо запустить некоторое множество программ. А тут снова одна.
Может напишите код класса сюда?
Добавлено спустя 15 минут 25 секунд:
Чтобы запускать к примеру: cmd, notepad, etc...
Добавлено спустя 19 минут 7 секунд:
И очень желательно чтобы сначало одну, затем вторую - после выполнения первой - желательно чтобы было if в зависимости от кода возврата.
|
|
|
|
|
|
|
|
Возраст: 38 C нами с 08.05.2009 Репутация: 5.6
|
|
Подскажите плиз! Я пишу сайт, то дома, то на работе в качестве переносного устройства есть флеха на флехе есть папка и на компе есть папка в этих папках валяются файлы, эти файлы меняются по дате редактирования и по количеству их там, я прихожу на работу вставляю флешку и по шедулеру запускается батник который копирует по дате изменения файлики либо с флешки на ПК либо на обарот с ПК на флешь. Мне нужно дописать в батнике чтоб он сперва сравнивал файлы по дате а потом если есть хотяб в одном файле различие, то он начинал синхронизацию а если нет то выдавал сообщение что изменений нет. Более подходящая команда которую я нашел это IF else но как правильно изобразить не знаю Вот батник@ECHO OFF
TITLE Копирование
COLOR 0a
XCOPY "C:\webserver\home\test1.ru\www" "F:\test1.ru\new" /V /D /Y
XCOPY "F:\test1.ru\new" "C:\webserver\home\test1.ru\www" /V /D /Y
NET SEND oho ______________Копирование выполнено!_______________ |
|
_____________________________ Прошу не тыкать в мануал его и так предостаточно!!!
|
|
|
|
|
|
|
Возраст: 61 C нами с 11.08.2009 Репутация: 3.2
|
|
|
|
|
|
|
|
Возраст: 38 C нами с 08.05.2009 Репутация: 5.6
|
|
хоца батник не охото тыкать тотал
Добавлено спустя 1 минуту 11 секунд:
К тому же бывает забываю синхронизировать а по шидулеру самый то
|
_____________________________ Прошу не тыкать в мануал его и так предостаточно!!!
|
|
|
|
|
|
|
Возраст: 44 C нами с 07.02.2005 Репутация: 122.9
|
|
а я для этих целей использую groove
|
_____________________________ Chi wa mizu yori mo koshi
|
|
|
|
|
|
|
Возраст: 38 C нами с 08.05.2009 Репутация: 5.6
|
|
Не хочу нарваться на грубость но я про батник спросил а не про какой то groove или total с кряком для такой простой задачи наживать себе гемор и засорять рабочий комп а как вы знаете рабочие компы на них дышать опасно!
|
_____________________________ Прошу не тыкать в мануал его и так предостаточно!!!
|
|
|
|
|
|
|
Возраст: 51 C нами с 01.03.2005 Репутация: 226.6
|
|
Павлин, я себе такое через архиватор делал.
И полный и инкрементальный архив. Использовал rar, но сейчас потихонечку на 7z перевожу.
Если нужно - приведу текст батников.
Добавлено спустя 14 минут 48 секунд:
Вобщем скрипты такие:
Инкрементальный бекап:
echo %DATE% %TIME% >> backup.log
Echo === Incremental Backup === >> backup.log
rar u -ed -as -dh -idp -r0 -m5 -rr -ag -ac -ao C:\Cygnus\Backup\bck @C:\Cygnus\Backup\bckp.lst -x@C:\Cygnus\Backup\xrar.lst >> backup.log
|
Здесь:
C:\Cygnus\Backup\bck - шаблон для имен файлов с архивом (архив начинается с bck и дополняется текущей датой и временем)
C:\Cygnus\Backup\bckp.lst - список того что надо архивировать - директории, файлы, можно с масками
C:\Cygnus\Backup\xrar.lst - список того что не надо архивировать.
Вот пример:
bckp.lst
C:\Cygnus\WorkDir\*.*
C:\Cygnus\MyDocs\*.*
C:\Cygnus\Books\New\*.*
|
xrar.lst
*.exe
*.class
*.log
*.db
*.bmp
a
logfile.*
*.bck
|
Полный архив:
Echo === Full Backup === >> backup.log
@rar u -ed -as -dh -idp -r0 -m5 -rr C:\Cygnus\Backup\workdir1.bck @C:\Cygnus\Backup\bckp.lst -x@C:\Cygnus\Backup\xrar.lst >> backup.log
|
Восстановление из инкрементального архива:
@set P=rar x -r0 -u -o+ -ac -idp -ep %1
@set R=rar x -r0 -u -o+ -ac -idp %1
@echo %DATE% %TIME% >>restore_bck.log
@%R% Cygnus C:\ | grep "OK" >> restore_bck.log
|
Восстановление из полного архива:
@set R=rar x -r0 -u -o+ -ac -idp workdir.bck
@set P=rar x -r0 -u -o+ -ac -idp -ep workdir.bck
@echo %DATE% %TIME% >>restore.log
@%R% Cygnus Java C:\ | grep "OK">> restore.log
|
7z позволяет кроме того делать еще интересные вещи, например
записи об удалении файлов - при распаковке таких файлов соответствующий файл на диске удалится (удобно чтобы не накапливались "мусорные" файлы, которые уже удалены на другой системе).
Еще можно делать: архив с файлами которые были обновлены в основном архиве - то есть файл в архиве заменен новой версией, а старая в отдельном архиве с датой замены - удобно отслеживать версии.
|
|
|
|
|
|
|
|