Em zsh
, você pode fazer isso com um alias global:
alias -g -- -mthreads=-pthread
Mas se você precisar ficar com o bash, faça uma função shell para filtrar os argumentos, como explicado @Kyle Jones.
Então eu quero fazer o meu bash para substituir a palavra '-mthreads
cada vez que eu digito com a palavra -pthread
. Isso é possível e como fazê-lo?
Em zsh
, você pode fazer isso com um alias global:
alias -g -- -mthreads=-pthread
Mas se você precisar ficar com o bash, faça uma função shell para filtrar os argumentos, como explicado @Kyle Jones.
Eu não vejo nenhuma maneira de fazê-lo se aplicar a todas as linhas de comando, mas você pode fazer a substituição por comando escrevendo uma função de shell para cada comando para o qual você gostaria que a substituição acontecesse. Exemplo: para gcc
você escreveria:
function gcc {
local args=""
local arg
for arg in $@
do
case $arg in
-mthreads) arg=-pthreads
esac
args="$args $arg"
done
command gcc $args
}
Tags bash