Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Single Post  Topic: Обмен кнопками 
Author Message
tcmd4ever



PostPosted: Tue Nov 22, 2011 11:57    Post subject: Reply with quote

Работа с системой управления версиями Subversion (отдельно от Apache).

Запуск сервиса SVN.
Code:
TOTALCMD#BAR#DATA
cmd /t:02 /k
sc create svndnt binpath= "c:\server\subversion\1616\bin\svnserve.exe --service -r c:\server\svn" displayname= "Subversion Server" depend= Tcpip start= auto&net start svndnt
netshell.dll,12
Запуск SVN

0
-1

Перезапуск сервиса SVN.
Code:
TOTALCMD#BAR#DATA
cmd /t:02 /k
net stop svndnt&net start svndnt
shell32.dll,146
Перезапуск SVN

0
-1

Останов и удаление сервиса SVN из системы.
Code:
TOTALCMD#BAR#DATA
cmd /t:02 /k
net stop svndnt&sc \\127.0.0.1 delete svndnt
shell32.dll,112
Остановить SVN

0
-1

Отдельные кнопки, управляющие всеми сервисами.

Остановить всех демонов и удалить их из системы.
Code:
TOTALCMD#BAR#DATA
cmd /t:02 /k
net stop httpdnt&net stop mysqldnt&net stop svndnt&net stop squiddnt&net stop cron&sc \\127.0.0.1 delete httpdnt&sc \\127.0.0.1 delete mysqldnt&sc \\127.0.0.1 delete svndnt&sc \\127.0.0.1 delete squiddnt&sc \\127.0.0.1 delete cron
shell32.dll,219
Останов всех демонов


-1

Отображение запущенных демонов в консоли. Работает медленно.
Code:
TOTALCMD#BAR#DATA
cmd /t:02 /k "%COMMANDER_PATH%\tools\manage\bat\daemonsview.cmd"

shell32.dll,171
Запущенные демоны


-1

Цмдшка для неё daemonsview.cmd. Не очень по скорости, конечно консольное win приложение было бы быстрее.
Code:
:: Показывает запущенных демонов.

@echo off
setlocal enabledelayedexpansion

set apachedaemonname=httpdnt
set mysqldaemonname=mysqldnt
set subversiondaemonname=svndnt
set squiddaemonname=squiddnt
set crondaemonname=cron

call :daemonessence %apachedaemonname% null showall 1
call :daemonessence %apachedaemonname% noheader null
call :daemonessence %mysqldaemonname% noheader null
call :daemonessence %subversiondaemonname% noheader null
call :daemonessence %squiddaemonname% noheader showall 3
call :daemonessence %crondaemonname% noheader null
goto :eof

:finddaemonnamepid
for /f "tokens=1-3" %%A in ('tasklist /SVC ^| findstr /i "%1"') do (set daemonpid=%%B)
if "%daemonpid%"=="" set daemonpid=n/a
goto :eof

:daemonessence
set daemonimagename=n/a
set daemonpid=n/a
set daemonport=n/a
set daemonportstatus=n/a
set daemonmem=n/a
call :finddaemonnamepid %1
for /f "tokens=1-9" %%A in ('tasklist ^| findstr /i "%daemonpid%"') do (
set daemonimagename=%%A
set daemonmem=%%E %%F %%G %%H)
for /f "tokens=1-5" %%A in ('netstat -a -o ^| findstr /i "%daemonpid%"') do (
set daemonport=%%B
set daemonportstatus=%%D)
for /f "tokens=1-2 delims=:" %%A in ('echo %daemonport%:n/a') do (
set daemonport=%%B)
if not "%2" == "noheader" (
echo Daemon name     Image name      PID   Daemon port     Port status   Memory
echo =============== =============== ===== =============== ============= =========
echo. )
if "%3" == "showall" (call :showalldaemons %4)
set printstring_buffer=
call :printstring 16 %1
call :printstring 16 %daemonimagename%
call :printstring 6 %daemonpid%
call :printstring 16 %daemonport%
call :printstring 14 %daemonportstatus%
call :printstring 9 %daemonmem%
echo %printstring_buffer%
goto :eof

:showalldaemons
set /a countsearch=0
:nextsearch
for /f "tokens=1-9" %%A in ('tasklist ^| findstr /i "%daemonimagename%"') do (set daemonpidtest=%%B)
if "%daemonpidtest%"=="" set daemonpidtest=n/a
if not "daemonpidtest" == "daemonpid" (
set daemonpid=%daemonpidtest%
set daemonport=n/a
set daemonportstatus=n/a
for /f "tokens=1-9" %%A in ('tasklist ^| findstr /i "%daemonpidtest%"') do (set daemonmem=%%E %%F %%G %%H))
if not "%countsearch%" == "%1" (set /a countsearch += 1 & goto nextsearch)
goto :eof

:printstring
set printstring_string=%2%3%4%5
set printstring_spaces=                                spaces_32
set /a printstring_symbols=1
for /l %%a in (0,1,32) do (if "!printstring_string:~%%a,1!"=="" set /a printstring_symbols=%%a & goto printstring_out)
:printstring_out
set /a printstring_spacesnum=%1-%printstring_symbols%
set printstring_buffer=%printstring_buffer%%printstring_string%!printstring_spaces:~0,%printstring_spacesnum%!
goto :eof

Выглядит это всё так.




_________________
Кристиан Гислер: "Для Total Commander я все еще пользуюсь Delphi 2.0." (ноябрь 2010)
View user's profile Send private message


Powered by phpBB © 2001, 2005 phpBB Group