Se você renomear o diretório de trabalho atual, a maioria das shells não notará a alteração (na variável $PWD ou no prompt, por exemplo), então seria melhor usar uma função em vez de um script para que você pode notificar o shell da alteração depois de fazer isso, como:
rename_cwd() {
cd . || return
new_dir=${PWD%/*}/$1
mv -- "$PWD" "$new_dir" &&
cd -- "$new_dir"
}
Isso pressupõe que o diretório atual não é / e que o diretório de destino ainda não existe (veja a opção -T com o GNU mv para melhorar o assunto nesse caso).
Observe que, em algumas circunstâncias, $PWD pode estar fora de sincronia com a realidade, portanto, o código acima pode acabar alterando o diretório de trabalho atual. O cd . está lá para reduzir a probabilidade dele em algumas camadas.