I want to wrap 3 lines of execution into an alias, but I also need to pass a parameter when I call it in terminal.

Do I need to create a function for this?

I'm new to this, but I know there are functions in bash also.

alias blah=some_call_here; some_other_call $1; some_thing_here

The $1 in the above is the value I want to pass in when I call the alias. So to call it I want it to look like:

blah "some text"

Not that it has to be text that I pass in.

link|improve this question

48% accept rate
feedback

1 Answer

up vote 3 down vote accepted

Aliases don't do parameters, so yes.

blah() { some_call_here ; some_other_call "$1" ; some_thing_here ; }
link|improve this answer
how could I set a default value if $1 wasn't passed in? – user27449 May 26 '11 at 20:48
1  
With one of the other forms of parameter expansion. gnu.org/software/bash/manual/html_node/… – Ignacio Vazquez-Abrams May 26 '11 at 20:50
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.