No exemplo abaixo, utilizando a xp_cmdshell a rotina executa a aplicação DOS fsutil retornando o espaço livre do disco C:. Este retorno é gravado em uma tabela temporária e depois separado e mostrado.
DECLARE @Drive varchar(max),
@SQL VARCHAR(max)
SET @SQL = 'EXEC XP_CMDSHELL "fsutil volume diskfree c:"'
Create Table #tmpLista (xCol VarChar(max))
Insert Into #tmpLista
Exec(@SQL)
Delete #tmpLista Where xCol is null
;WITH tmpDrivers (DadosXML) AS (
SELECT CAST('
FROM #tmpLista)
SELECT CAST(DadosXML.query('for $coluna in /N return $coluna/n[1]/text()') AS VARCHAR(80)) As Descricao,
--CAST(DadosXML.query('for $coluna in /N return $coluna/n[last()]/text()') AS VARCHAR(80)) As Tamanho
CAST(DadosXML.query('for $coluna in /N return $coluna/n[2]/text()') AS VARCHAR(80)) As Tamanho
FROM tmpDrivers
Drop Table #tmpLista
Nenhum comentário:
Postar um comentário