다른 변수를 현재 작업 디렉토리의 끝에 첨부하기 위해 Perl 스크립트를 사용하고 있지만 모듈 사용에 문제가 있습니다. 내가 D:\Temp\
에서에 getcwd를 실행하면Perl getcwd 정방향 슬래시 끝내기
내가
D:\
에서에 getcwd 실행하면, 반환 값이D:/ (with forward slash)
이며, 반환되는 값은
D:/temp (without forward slash)
이 때문에 상황이 매우 까다 수있다 간단히 말해서 :
use Cwd; $ProjectName = "Project"; # This is a variable supplied by the user $directory = getcwd().$ProjectName."\/"; print $directory."\n";
나도
D:/Project (correct)
또는
D:/TempProject (instead of D:/Temp/Project)
으로이
Cwd
의 기능입니다 끝날 것인가? 그것은 문서에없는 것 같습니다.이 문제를 해결하기 위해 다음 코드를 생각해 보았습니다. 그것을하기 위해 3 라인이 필요합니다. 여러분 중 누구라도 좀 더 간결한 방법을 볼 수 있습니까?
use Cwd; $ProjectName = "Project"; # This is a variable supplied by the user $directory = getcwd(); $directory =~ s/(.+?)([^\\\/])$/$1$2\//g; # Append "/" if not terminating with forward/back slash $directory .= $ProjectName."\/"; print $directory."\n";
File :: Spec.에 대해 알려 주셔서 감사합니다. catdir과 catfile을 사용하기 위해 전체 스크립트를 변경해야합니다. 나는 그것이 장기적으로 더 낫다는 것을 확신합니다. – Andy