Você pode fazer isso facilmente com awk :
awk 'BEGIN{n=1}; /\/\//{$0=$0 " Text " n; n+=1}; {print}' infile
Se infile contiver
//
abcdefghijklmnopqrst
//
abcdefghijklmnopqrst
//
abcdefghijklmnopqrst
O comando acima imprime
// Text 1
abcdefghijklmnopqrst
// Text 2
abcdefghijklmnopqrst
// Text 3
abcdefghijklmnopqrst
O /\/\// de aparência críptica é um regex ( Reg ular Ex pression) contendo // . Em regexes awk são delimitados pela barra invertida / ; para colocar barras em um regex, você precisa escapar com a barra invertida \ .
No awk, padrão { ação } diz executar ação se a linha atual corresponder ao padrão . O padrão BEGIN é um padrão especial para indicar as ações que queremos que aconteçam antes que as linhas sejam lidas. Se não especificarmos um padrão, a ação será executada para todas as linhas (embora haja uma maneira de sobrescrever isso).
Esta versão atualizada funcionará em seu novo arquivo de entrada, mas infelizmente não preservará o espaçamento
awk 'BEGIN{n=1}; /^\/\//{$1=$1 " Text " n; n+=1}; {print}' infile
entrada
// x x
abcdefghijklmnopqrst
// x x
abcdefghijklmnopqrst
// x x
abcdefghijklmnopqrst
saída
// Text 1 x x
abcdefghijklmnopqrst
// Text 2 x x
abcdefghijklmnopqrst
// Text 3 x x
abcdefghijklmnopqrst