public function dirMove($src, $dst, $overwrite = false)
{
$src = $this->alias->resolve($src);
$dst = $this->alias->resolve($dst);
if (!$overwrite && is_dir($dst)) {
throw new FileException('move `:src` to `:dst` failed: destination directory is exists already', ['src' => $src, 'dst' => $dst]);
}
if (!rename($src, $dst)) {
throw new FileException('move `:src` directory to `:dst` directory failed: :last_error_message', ['src' => $src, 'dst' => $dst]);
}
}