Skip to content
Joachim Ansorg edited this page Nov 12, 2021 · 2 revisions

Use BASH_ARGV0 to assign to $0 in bash (or use [ ] to compare).

Problematic code:

#!/bin/bash
$0=myscriptname

Correct code:

#!/bin/bash
BASH_ARGV0=myscriptname

Rationale:

You appear to be trying to assign a new value to $0 in a Bash script. To do this, instead assign to the special variable BASH_ARGV0.

If you instead wanted to compare the value of $0, use a comparison like [ "$0" = "myname" ].

Exceptions:

None.

Related resources:

  • Help by adding links to BashFAQ, StackOverflow, man pages, POSIX, etc!
Clone this wiki locally