Aliasing un command con parameters especiales

Me gustaría tener un alias para el siguiente código:

g++ *.cc -o * `pkg-config gtkmm-3.0 --cflags --libs`; 

pero quiero que cuando ingrese el alias, siga el nombre del file *.cc y luego el nombre del progtwig comstackdo * .

por ejemplo:

 gtkmm simple.cc simple 

debería correr

 g++ simple.cc -o simple `pkg-config gtkmm-3.0 --cflags --libs` 

Lo que necesitas no es un alias, sino una function. Los alias no admiten parameters de la manera que desee. Acababa de anexar los files, gtkmm simple.cc simple terminaría así:

 g++ -o `pkg-config gtkmm-3.0 --cflags --libs` simple.cc simple 

y eso no es lo que intentas lograr. En cambio, una function te permite:

 function gtkmm () { g++ "$1" -o "$2" `pkg-config gtkmm-3.0 --cflags --libs` } 

Aquí, $ 1 y $ 2 son los arguments primero y segundo. $ 0 es la persona que llama en sí misma:

 gtkmm simple.cc simple $0 $1 $2 

Puedes probar la function usando echo .

Puede encontrar más funciones sobre las funciones en el manual en línea de Bash .