bash -x command

The -x option starts a BASH shell in tracing mode. You can see all the details of how your command/script is processed. It's a good way to find some bugs if your script does not do what you would expect to

And, just as Alex said in a comment, to run a command in BASH, you have to use -c option like bash -x -c ls.

See man bash or the online manual, specifically the parts on invoking Bash and the set builtin command for more information:

All of the single-character options used with the set builtin (see The Set Builtin) can be used as options when the shell is invoked.

-x

Print a trace of simple commands, for commands, case commands, select commands, and arithmetic for commands and their arguments or associated word lists after they are expanded and before they are executed. The value of the PS4 variable is expanded and the resultant value is printed before the command and its expanded arguments.


  • bash -x <file> runs the script <file> with tracing of each command executed

  • test -x <file> tests whether <file> has execute permissions for the current user.

It appears that you have muddled these two.

Tags:

Bash