Match ends, Walsall 1, Shrewsbury Town 0.
Craig Westcarr scored and was later sent off as Walsall boosted their play-off hopes with victory over Shrewsbury.
Westcarr put the Saddlers ahead inside five minutes, turning on the edge of the box to fire past Joe Anyon.
He also hit a post before half-time as the home side pushed for a second.
The visitors were reduced to 10 men when Joseph Mills was sent off for a tackle on Adam Chambers, before Westcarr saw red for violent conduct after a clash with Sam Foley.
Dean Smith's Walsall are two points behind sixth-placed Peterborough in League One, although Posh have two games in hand, while Shrewsbury are second from bottom and two points from safety.
Walsall boss Dean Smith told BBC WM:
"The win was really important for us today, to follow up the game from Bradford and to get two successive clean sheets was really pleasing.
"The fans deserve that, we haven't won as many games as we should have at home. Some of the performances have been good without getting the points tally that we deserve.
"Westy has gone a while without scoring and he's got three in a week, in two games, and somebody now has to now step up to the plate and replace that.
"We've got players who can score goals. Can we replace Craig Westcarr? Yeah, I'm sure we can and hopefully we can do that in the next game."
Shrewsbury Town manager Michael Jackson told BBC Radio Shropshire:
"I'm disappointed with the result and with the sending off today. We were taking too long to move the ball and we had to move it quicker, but we didn't do that today.
"We were running out of legs, and we couldn't match Walsall.
"We have to look forward and we have to stay positive. We must find a way of controlling the game and not waiting for something to happen before we react."
- 25SawyersSubstituted forNgooat 89'minutes
- 10WestcarrBooked at 72mins
- 16BaxendaleSubstituted forMcQuilkinat 86'minutes
- 5IorfaBooked at 59mins
- 27MillsBooked at 62mins
- 15WildigSubstituted forTaylorat 54'minutes
- 16MkandawireBooked at 45mins
- 22WoodsSubstituted forParryat 83'minutes
- 7MillerSubstituted forAtajicat 54'minutes
- Robert Madley
- Shots on Target
Second Half ends, Walsall 1, Shrewsbury Town 0.
Andy Taylor (Walsall) wins a free kick in the attacking half.
Foul by Dominic Iorfa (Shrewsbury Town).
Corner, Shrewsbury Town. Conceded by Sam Mantom.
Foul by Andy Taylor (Walsall).
Bahrudin Atajic (Shrewsbury Town) wins a free kick on the right wing.
Substitution, Walsall. Michael Ngoo replaces Romaine Sawyers.
Corner, Walsall. Conceded by Sam Foley.
Attempt blocked. Adam Chambers (Walsall) right footed shot from the centre of the box is blocked.
Corner, Walsall. Conceded by Connor Goldson.
Attempt blocked. Febian Brandy (Walsall) right footed shot from the centre of the box is blocked.
Substitution, Walsall. James McQuilkin replaces James Baxendale.
James Baxendale (Walsall) wins a free kick on the left wing.
Foul by Asa Hall (Shrewsbury Town).
Substitution, Shrewsbury Town. Paul Parry replaces Ryan Woods.
Andy Taylor (Walsall) wins a free kick on the right wing.
Foul by Ryan Woods (Shrewsbury Town).
Foul by Andy Taylor (Walsall).
Connor Goldson (Shrewsbury Town) wins a free kick in the attacking half.