A linha de comando sed
sed '/^#/d' ~/.profile
removerá todos os comentários de shell que começam no início de uma linha do arquivo ~/.profile , por exemplo o primeiro, mas não o segundo, das duas linhas seguintes:
# comment
# indented comment
Ele faz isso tentando corresponder # no início da linha ( ^ ) e excluirá ( d ) todas as linhas correspondentes.
Para também remover comentários recuados de um script de shell, use
sed '/^[[:blank:]]*#/d' file
[[:blank:]] corresponderá a caracteres de espaço e guias horizontais.
$ significa apenas "início de um comando" no sentido em que é o prompt comum usado pelo shell para solicitar que você digite algo na linha de comando.
# é o caractere que introduz um comentário no shell. Ele não tem nenhum propósito em um script sed além de corresponder a # na entrada. Eu nunca vi isso usado para significar o "fim de um comando".