nohup: failed to run command `.': Permission denied

I tried execute my script using:

nohup .


nohup . ./

However, I got: nohup: failed to run command `.': Permission denied each time.

What I’m really trying to do is in my script be able to call commands that I’ve aliased, but it only works with “.” or “. ./“, not “./” or “sh ./” as I get a “command not found”. But I’d like to be able to run this with “nohup”.

Asked By: user994165


nohup runs an executable. You need to pass it an external command, i.e. an executable file. You can’t call nohup on a shell construct such as an alias, function or builtin. nohup runs a new process, it doesn’t run something inside the existing shell process (since nohup itself is a separate process), so nohup . … doesn’t make sense.

nohup ./ is the correct way to run a shell script with nohup. Make sure that the script properly starts with a shebang line (#!/bin/sh) and that the file is executable (chmod +x ./

Categories: Answers Tags: , , ,
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.