Reputation: 882
I'm trying to write a bash script that executes another bash script with all but the first argument, so I can't use:
bash abc.sh "$@"
because it will also pass the first argument which I don't want. How can i remove the first argument?
Upvotes: 7
Views: 1873
Reputation: 60067
You can remove the first argument with a shift
:
shift #same as: shift 1
bash abc.sh "$@"
(In bash
, ksh
, and zsh
, you can also use "${@:2}"
without modifying the "$@"
array, but shift
will work in any POSIX shell.)
Upvotes: 13