Se você realmente quiser usar sed, isso pode ser feito de forma agradável em um loop while:
count=1;
while read line
do sed 's/as/'"$count"'/1' <<< "$line";
count=$((count+1));
done < source_file >> target_file
O par ''
de "$count"
é necessário para que o shell faça a expansão adequada da variável para uso dentro do comando sed.
Ainda mais curto (graças a Kusalananda) :
while read line
do sed 's/as/'"$(( ++count ))"'/1' <<< "$line";
done < source_file > target_file
Se você quiser incrementar somente se o padrão for encontrado:
count=1;
while read line;
do sed '/as/! {q100}; s/as/'"$count"'/1' <<< "$line";
[[ "$?" -eq 0 ]] && (( ++count ));
done < source_file > target_file