Linux 允许Apache运行的Perl脚本使用system()

Linux 允许Apache运行的Perl脚本使用system(),linux,perl,apache,soap,system,Linux,Perl,Apache,Soap,System,我有一个PerlSOAP服务,我正在使用它来汇集不同用户的数据。该服务工作正常,但是我想运行“sort-u file1 file2>file1”来整合收集的数据和服务器上已有的数据。我希望perl脚本在完成任务后调用系统函数 这是为Apache或其他设置正确权限的问题吗 目录列表: var/www/script.pl var/www/file1 var/www/file1 var/www/index.php 任何帮助都会很好。谢谢 sort -u file1 file2 > file1

我有一个PerlSOAP服务,我正在使用它来汇集不同用户的数据。该服务工作正常,但是我想运行“sort-u file1 file2>file1”来整合收集的数据和服务器上已有的数据。我希望perl脚本在完成任务后调用系统函数

这是为Apache或其他设置正确权限的问题吗

目录列表:

var/www/script.pl
var/www/file1
var/www/file1
var/www/index.php

任何帮助都会很好。谢谢

sort -u file1 file2 > file1
不会按照你说的做。你试过命令行吗

运行该命令后,file1将不再包含file1中的任何内容,因为重定向将在sort开始对file1执行操作之前对其进行删除

sort -u file1 file2 >file3; mv file3 file1

您似乎想使用system(),尝试时发生了什么?是否收到任何错误消息?

否,这是为包含要写入的文件的目录设置正确权限的问题


找出Web服务器进程在哪个用户id/组id下运行(例如,使用
/bin/ps-AH-o user,group,cmd
查看进程表),然后参考。

@Prix文件为.csv格式。我并不反对使用其他东西,只是sort-u做得很好。@Prix我真正感兴趣的功能是sort-u,将两个文件合并成一个文件,并省略重复的文件。想法?另一种方法是使用
-o
参数:“sort-o file1 file1 file2”。这将输出到file1,但仅在对file1和file2进行排序之后。这是一个相对未知的技巧。问题不在于命令。命令未被执行,因此这不是问题所在