Tenho várias funções no meu ~/.bash_profile
que uso como comandos e também criei funções de uso para elas.
Gostaria de saber se implementei as funções de uso corretamente, já que as desenvolvi por conta própria.
Exemplo
IFS=$'\n'
usageSliceArr() {
if [ $# != 3 ]; then
echo 'name, index 1, index 2'
return 1
fi
}
slicearr() {
if (usageSliceArr $1 $2 $3); then
declare -n name=$1
declare -i fst=$2 lst=$3
echo ${name[@]:fst:lst}
fi
}
if (usageSliceArr $1 $2 $3); then
você deve escreverif usageSliceArr "$1" "$2" "$3"; then
-ne
para comparar números,!=
para strings$PATH
, em vez de funções disponíveis apenas se o seu~/.bash_profile
for executadoAqui está uma abordagem:
A relevância da cláusula separada por espaço e tokenizada também se aplica ao seu código original. Considere uma matriz
O "vinte e três" será extraído como um único elemento, mas retornado como dois valores separados por espaços "vinte" e "três".
Usando algumas boas sugestões de @StéphaneChezalas, vou fazer isso agora:
Lembre-se de que tenho muitas funções, incluindo esta no meu,
~/.bash_profile
não é apenas um script único.