for i in /path/to/*.sample
do
str="; label=$(basename -s.sample $i);"
sed "/^>/ s/$/$str/" "$i"
done
-
O comando
basename
fornece apenas o nome do arquivo, removendo o caminho. E-s.sample
irá remover a extensão - Então, se
i
for/path/to/filename.sample
,str
conterá; label=filename;
-
/^>/ s/$/$str/
encontrará uma linha começando com>
e adicionará o conteúdo da variávelstr
ao final dessa linha
Eu não entendo como você deseja que o arquivo de saída seja nomeado. Se i
for /path/to/filename.sample
, "$i"_bar
fornecerá /path/to/filename.sample_bar