La forma habitual de hacer esto en bash es usar la expansión de parámetros. (Consulte la página de manual de bash y busque "Expansión de parámetros".)
a=${1%.*}
El %
indica que todo lo que coincida con el siguiente patrón (.*
) desde la derecha, utilizando la coincidencia más corta posible, se eliminará del parámetro $1
. En este caso, no necesita comillas dobles (") alrededor de la expresión.
Si conoce la extensión, puede usar nombre base
$ basename /home/jsmith/base.wiki .wiki
base