将WinSCP INI文件设置为只读以避免在并行脚本运行期间出现问题是否安全?

时间:2014-09-25 12:59:53

标签: scripting file-access winscp

我们有多个WinSCP流程可以从外部服务器上传/下载文件。这些工作按计划进行,但经常会因为频繁运行而重叠。

在某些情况下,我们可以成功将文件上传到服务器,但WinSCP会像失败一样退出,因为它无法回写 ini 文件。

Error writting to file 'c:\progra~1\winSCP\WinSCP.ini'
System Error.  Code: 32.

The process cannot access the file because it is being used by another process

这似乎是由于两个或多个进程同时尝试写回ini文件。

这导致我们将上传的文件视为失败并在下次运行时重新上传(当您处理交易数据时效果不佳)

根据Configuration Guide,我们可以将WinSCP ini文件的属性设置为只读:

  

特别是在使用共享INI文件时,您可以设置只读   属性为INI文件以防止WinSCP覆盖文件。

在做出这个改变之前,我希望有人可以告诉我以下内容:

究竟是什么写回文件?
将文件设置为只读可能会出现什么问题?

1 个答案:

答案 0 :(得分:2)

通常,脚本运行后不会写入重要数据,可能是某些缓存,统计信息等。您可以比较运行前后的INI文件以查看自己。

您可以关闭所有这些以避免WinSCP编写它们,但setting the INI file read only更可靠,无论如何我会推荐它。你会有没有问题

虽然最佳做法是not to rely on external configuration