Tomasz Gancarz

Tomasz Gancarz Administrator
serwerów

Temat: Wykonanie polecenia przy pomocy xp_cmdshell - jak to zrobić

Witam,


Przygodę z SQL dopiero zaczynam więc proszę o wyrozumiałość. Potrzebuję wykonać takie polecenie przy pomocy SQL Servera:


C:\fciv.exe d:\diff.bac -md5 >cheksum.txt


Polecenie oczywiście wykonuje się z command line. Jednak gdy wykonam go z SQL to nie działa. Pomaga dodanie "call":


EXEC master.dbo.xp_cmdshell 'call "C:\fciv.exe" "d:\diff.bac" "-md5" ">>" "cheksum.txt"';


Jednak wtedy wynik nie jest zapisywany do pliku a tylko wyświetlany w SSMS.


Jak to zrobić aby zapisywał się do pliku ? Ewentualnie jak wykonać to polecenie które samo w sobie powinno zapisać wynik do pliku ?

konto usunięte

Temat: Wykonanie polecenia przy pomocy xp_cmdshell - jak to zrobić

A zobacz czy takie coś ci zadziała?

DECLARE @cmd sysname, @var sysname
SET @var = 'C:\fciv.exe d:\diff.bac -md5'
SET @cmd = 'call ' + @var + ' > c:\cheksum.txt'
EXEC master..xp_cmdshell @cmd


Ewentualnie prosta wersja też działa:

EXEC master..xp_cmdshell 'call c:\fciv.exe d:\diff.bac -md5 >> c:\cheksum.txt'
Robert Mandziarz edytował(a) ten post dnia 29.03.12 o godzinie 19:22
Tomasz Gancarz

Tomasz Gancarz Administrator
serwerów

Temat: Wykonanie polecenia przy pomocy xp_cmdshell - jak to zrobić

Dziękuję ! Działa tak jak trzeba.

konto usunięte

Temat: Wykonanie polecenia przy pomocy xp_cmdshell - jak to zrobić

Nie ma sprawy, pozdrawiam :)

Następna dyskusja:

sql developer -pomoc jak us...




Wyślij zaproszenie do