- Notifications
You must be signed in to change notification settings - Fork7
Utilitário
O utilitário de linha de comandobashsrc fornece opções para consulta/gerenciamento do ecossitema, para visualizar as opções digite:
$ bashsrc -hou$ bashsrc --helpNota: requer configuração do
$BASHSRC_PATH.
Exemplo:
shsrc: ferramenta para documentação e ambiente.Uso: bashsrc [OPÇÕES]Argumentos obrigatórios para opções longas também são para opções curtas.-l, --list - Lista os sources disponíveis em '$BASHSRC_PATH'.-e, --env - Exibe o ambiente configurado em '$BASHSRC_PATH'.-d, --doc <source>[.<function>|<type>] - Exibe a documentação da biblioteca, função ou tipo.-h, --help - Exibe ajuda e sai.-c, --check-conflicts - Verifica se há conflito de tipos entre bibliotecas em '$BASHSRC_PATH'.-v, --version - Exibe a versão e sai.Desenvolvido por: Juliano Santos [SHAMAN]Reportar falhas: <shellscriptx@gmail.com.br>Wiki: <https://github.com/shellscriptx/bashsrc/wiki>Além das configurações é possível consultar a documentação presente em uma biblioteca atráves do parâmetro-d, --doc Esse recurso é útil pois permite ao desenvolvedor criar e compartilhar bibliotecas cujo código-fonte é a própria documentação, tal recurso já visto em algumas linguagens como:python,golang entre outras.
Veja as duas formas de consulta:
Geral:
Exibe uma descrição curta de todos os protótipos de declaração de funções, objetos e tipos. (exceto: Metadados).
Para exibir as informaçõs digite:
$ bashsrc --doc <biblioteca>
Nota: a extensão do arquivo deve ser omitida.
Exemplo:
$ bashsrc -d regexfunction regex.compile <pattern[str]> -> [bool]function regex.findall <pattern[str]> <expr[str]> -> [str]|[bool]function regex.fullmatch <pattern[str]> <expr[str]> <match[map]> -> [bool]function regex.match <pattern[str]> <expr[str]> <match[map]> -> [bool]function regex.search <pattern[str]> <expr[str]> <match[map]> -> [bool]function regex.split <pattern[str]> <expr[str]> -> [str]|[bool]function regex.groups <pattern[str]> <expr[str]> -> [str]|[bool]function regex.replace <pattern[str]> <expr[str]> <count[int]> <new[str]> -> [str]|[bool]function regex.fnreplace <pattern[str]> <expr[str]> <count[int]> <func[function]> <args[str]> ... -> [str]|[bool]function regex.fnreplacers <pattern[str]> <expr[str]> <count[int]> <func[function]> -> [str]|[bool]function regex.expand <pattern[str]> <expr[str]> <template[str]> -> [str]|[bool]function regex.exportnames <pattern[str]> <expr[str]> -> [bool]map matchtype regex_tDetalhada:
Exibe informações, detalhes e exemplos sobre o objeto especificado.
Para exibir as informações digite:
$ bashsrc --doc <biblioteca>.<objeto>
Nota: a extensão do arquivo deve ser omitida.
Exemplo:
$ bashsrc --doc regex.fnreplacefunction regex.fnreplace <pattern[str]> <expr[str]> <count[int]> <func[function]> <args[str]> ... -> [str]|[bool] Substitui 'N' ocorrências do padrão pelo retorno da função com 'N'args (opcional), passando como como argumento posicional '$1' o padrão casado. Se 'count < 0' aplica a substtiuição em todas as ocorrências. == EXEMPLO == source regex.sh dobrar() { # Retorna o dobro do valor casado. echo "$(($1*2))" } expr='valor_a = 10, valor_b = 20, valor_c = 30' # Valor atual. echo "$expr" echo --- # Substitui somente os números contidos na expressão. regex.fnreplace '[0-9]+' "$expr" 1 dobrar # 1ª ocorrência regex.fnreplace '[0-9]+' "$expr" 2 dobrar # 1ª e 2ª ocorrência regex.fnreplace '[0-9]+' "$expr" -1 dobrar # Todas == SAÍDA == valor_a = 10, valor_b = 20, valor_c = 30 --- valor_a = 20, valor_b = 20, valor_c = 30 valor_a = 20, valor_b = 40, valor_c = 30 valor_a = 20, valor_b = 40, valor_c = 60