Estou procurando passar uma variável para o script (sei como fazer isso), que será repetida pelo script para modificar um pouco essa variável.
$ [scriptname] foo bar
onde [scriptname] é o nome do programa e foo
os bar
dois argumentos passados. [Editado para esclarecimento, após comentário:] O arquivo resultante deve ser nomeado foo_bar1
, mas com a opção de o usuário fazer pequenas modificações no nome do arquivo que não pode ser conhecido de antemão. Portanto, poderia parecer
$ [scriptname] foo bar
The output file name will be foo_bar1
E aqui eu gostaria de poder usar interativamente, como barra invertida, remover 1
e substituí-lo por sublinhado ( _
) e 2
: O nome do arquivo de saída será, portanto, foo_bar_2
E esta seria posteriormente uma variável conhecida ou nova no script, para que os resultados deste script pode ser gravado em um arquivo de saída chamado foo_bar_2
.
O motivo da minha pergunta é que os nomes dos arquivos não têm apenas 3 caracteres, mas são bastante longos e contêm dados específicos. Portanto, o usuário não deve (tentar) redigitar dezenas de caracteres; muitas vezes o nome do arquivo de saída será o proposto. O usuário verá, na maioria das vezes apenas 'Enter'. Embora também tenha a chance de adicionar pequenas modificações próprias. [Espero que isso explique um pouco melhor o que eu preciso.?]
Isso é possível? Se sim, eu ficaria feliz em aprender como fazer isso. E não é necessariamente apenas o último número (eu saberia como removê-lo/isolá-lo). Mas, às vezes, eu também deveria poder chamar o output foofoo_bar_2
.