내 파일을 Win 7에서 FreeNAS 상자로 옮기려고 합니다. 내 경로가 너무 길고 일부 파일에 문자 악센트와 같은 특수 문자가 있어서 전송되지 않기 때문에 계속 오류가 발생합니다. 일부 파일은 전송되지만 파일 이름은 변경됩니다. 즉. "에" -> "_".
나는 이것을 방지하려고 노력하고 있습니다. 지정된 디렉토리에서 잘못된 문자가 포함된 긴 경로 이름과 파일 이름을 검색하려면 어떤 소프트웨어를 사용할 수 있습니까?
답변1
이 powershell 스크립트는 폴더를 스캔하고 문자 세트를 포함하지 않거나 지정된 길이를 초과하는 모든 파일과 폴더를 인쇄합니다.
$path="Q:\Test";
$length=55;
$legalChars="^([a-z0-9\.\-_ ])+$";
Get-ChildItem $path -recurse | %{
if(($_.Name).length -gt $length)
{
write-host $_.FullName
}
elseif($_.Name -notmatch $legalChars)
{
write-host $_.FullName
}
}
편집: 이제 전체 경로 길이가 아닌 파일 이름 길이만 테스트합니다. 대신 첫 번째 if 조건을 .Name에서 .FullName으로 변경하여 경로 길이를 테스트합니다.