Semelhante à resposta do MaddHackers, apenas mais compacta.
echo %path%|find /i "%np%">nul || set path=%path%;%np%
%np% é o seu novo caminho, é claro que você pode usar literais.
O que ele faz: echo %path%|find /i "%np%">nul pesquisa o caminho existente para uma string, descartando a saída. || significa executar com falha, então isso significa:
Caminho de pesquisa para a string a ser adicionada e, se não encontrada, adicione-a.
Editar: geralmente não é necessário citar os caminhos, mesmo aqueles que contêm espaços, mas se você quiser citá-los , esta versão funcionará com caminhos duplos entre aspas:
echo %path%|find /i "%np:"=%">nul || set path=%path%;%np%
Editar: alterado findstr /i /c: para find /i como findstr pode interpretar incorretamente algumas seqüências como observado por KubaOber nos comentários