xp_cmdshell将文件目录写入文本文件

时间:2011-04-18 00:56:41

标签: sql-server xp-cmdshell

如何将文件目录写入文本文件?我想要使​​用的目录是C:\

我现在的代码是

exec xp_cmdshell 'dir *.exe & echo > file_directory.txt';--

虽然它不是写入文件。我需要说这个......

exec xp_cmdshell 'cd c: \ & dir *.exe & echo > file_directory.txt';--

1 个答案:

答案 0 :(得分:2)

cd(单独)只设置工作目录,不会更改工作磁盘驱动器。如果您(可能)需要更改工作驱动器工作目录,则需要pushd c:\cd /d c:\

更简单的解决方案是完全限定文件名:

echo > c:\file_directory.txt

但是写入C:的根目录通常不是一个好主意。微软试图让这一点变得更加困难,因为向系统分区的根开放写权限会带来各种各样的安全风险。

(更新:) 我想你想要的是

exec xp_cmdshell 'dir *.exe > c:\file_directory.txt';
相关问题