나는 펄을 배우고 스크립트의 디렉토리 트리에있는 모든 내용을 파일에 출력하는 스크립트를 작성하고있다. 문제는 텍스트 파일에서 "\ n"을 포함하더라도 전체 출력이 한 줄에있는 것입니다. 콘솔에 코드 저장이 저장되어 있으며 원하는 결과를 얻을 수 있습니다. 이는 한 줄에 하나의 항목입니다.펄의 파일에 새 줄 쓰기
#!/usr/bin/perl -w
use Cwd;
use File::Find;
use strict;
my $file = "temp.txt";
my $dir = getcwd;
unless (open FILE, '>>' . $file) {
die "\nUnable to create $file\n";
}
find(\&print_type, $dir);
sub print_type {
if (-f) {
print FILE "File: " . "$_\n";
print "File: " . "$_\n";
}
if (-d) {
print FILE "Directory: " . $_ . "\n";
print "Directory: " . $_ . "\n";
}
}
close FILE;
또한 "디렉토리 :"앞에 \ n을 넣으려고 했는데도 작동하지 않았습니다.
나를 위해 작동합니다. 어떤 OS를 사용하고 계십니까? – chrsblck
'temp.txt'에 덧붙이고 있다는 것을 잊었습니까? 출력이 결코 바뀌지 않는 것처럼 보일 수도 있습니다. – TLP
저는 Windows 7에서 cygwin을 사용하여 스크립트를 실행하고 메모장 ++로 코딩합니다. 좋아, 그래서 이맥스에서 열 때 파일은 새로운 줄을 가지고있다. 단지 창문에 노트 패드가 없다. 그것은 또한 메모장 ++ 및 워드 패드에도 나타납니다. 그래서 간단합니다 ... 나는 이것을 한 시간 가까이 찾아 내려고 노력했습니다. 도와 주셔서 감사합니다. – Tyler