2016-11-05 4 views
2

diff와 sort를 사용하여 두 파일의 차이점을 찾습니다. 리눅스 프롬프트에서 완벽하게 다음 작품 :PHP exec/diff/No such file

diff <(sort /real/path/yesterday.txt) <(sort /real/path/today.txt) > diff-today.txt 

하지만 간부()를 사용하여 PHP에서 실행하는 동일한 명령을 얻는 데 실패하고있다 :

exec("diff <\(sort /real/path/yesterday.txt\) <\(sort /real/path/today.txt\) > diff-today.txt"); 

내가받을 다음과 같은 오류 :

sh: (sort: No such file or directory 

아이디어가 있으십니까?

답변

0

작은 명령에 큰 명령을 분할합니다. 파일을 하나씩 정렬 한 다음 diff를 수행하십시오. 이 코드는 나를 위해 일했습니다.

echo exec('sort /real/path/yesterday.txt > /real/path/yesterday_sorted.txt ; sort /real/path/today.txt > /real/path/today_sorted.txt ; diff /real/path/yesterday_sorted.txt /real/path/today_sorted.txt > diff-today.txt'); 
+0

Thx. 때로는 분할하는 것이 더 쉽습니다. :-) – clund