How to extract two words at the same time.

Hi, Can anyone please let me know, how to extract two lines at the same time. In specific,I have a file containing list of devices, such as router1 and switch2 below. I want to get all the lines which has "#" and all the lines which has "down"

router1#sh ip int br
Interface IP-Address OK? Method Status Protocol^M
Vlan1 unassigned YES NVRAM up down ^M
Vlan100 10.71.12.202 YES NVRAM up up ^M
FastEthernet0/1 unassigned YES unset down down ^M
GigabitEthernet0/1 unassigned YES unset up up ^M
GigabitEthernet0/2 unassigned YES unset up up ^M
router1#
router1#exit

switch2#^M
switch2#term length 0^M
switch2#sh ip int br^M
Interface IP-Address OK? Method Status Protocol^M
Vlan1 unassigned YES NVRAM up down ^M
Vlan400 10.71.12.206 YES NVRAM up up ^M
GigabitEthernet0/1 unassigned YES unset up down ^M
GigabitEthernet0/2 unassigned YES unset up up ^M
switch2#^M

I am expected to get the output as:

router1#sh ip int br^M
Vlan1 unassigned YES NVRAM up down ^M
FastEthernet0/1 unassigned YES unset down down ^M
router1#
router1#exit

switch2#^M
switch2#term length 0^M
switch2#sh ip int br^M
Vlan1 unassigned YES NVRAM up down ^M
GigabitEthernet0/1 unassigned YES unset up down ^M
switch2#^M

Regards,A

egrep '#|down' file

or:

awk '/#/||/down/' file

Regards

Franklin, Thanks a Million, It works.
I am getting an unusual character at the end of every line.
^M at the end of every line when i do more.

thats not unusual,

its there in the source feed

sed 's/^M//g' filename

^M goes away when I execute the command, but when I say
sed 's/^M//g' filename | more
it appears again.

^M is not just the characters "^" and "M", you must first type Ctr-V then Ctrl-M.

Regards

either you have to redirect the output to some other filename or do an in-place edit with "-i" option

sed -i 's/^M//g' filename