Script which migrates files to secondary storage and symlinks them
Not bad at all. Nice to see functions but perhaps you have too many.

Do you really need this as a function? 

function DeleteFIle($File){
    del $file.fullname 
}


This function is listed twice but is only called once. It could have probably stayed in the Archive function.

function CheckPathLength($file){
    if ($File.FullName.Length -ge 220){
        copy $PathWarning $File.DirectoryName
    }
}