A goal from Steven Gillespie after 71 minutes secured Cheltenham Town's third win from three games over the holiday period and made it only one defeat in the last 14 matches for John Ward's men.
Gillespie, who has just extended his loan from Bristol City for another month, struck with a close-range header after fellow substitute Damian Spencer had headed a Jamie Victory cross in his direction.
The win was just about deserved by the home side, who edged a tight game against spirited opponents.
Shrewsbury actually had the ball in the net with only seven minutes played, the visitors having enjoyed the best of the opening exchanges, but the effort was ruled out for offside.
At the other end, Shrewsbury goalkeeper Joe Hart flew to make a spectacular save from a Brian Wilson free-kick but Cheltenham goalkeeper Shane Higgs would have been relieved to fall upon a shot from Colin McMenamin when the striker got clean through shortly before half-time.
Cheltenham captain John Finnigan saw a low pile-driving shot cleared off the line by defender Ben Herd and midfielder Brian Wilson went close with a long-range shot near the end.
Higgs clutched a free-kick from Jamie Tolley that was whipped over the defensive wall and McMenamin, a constant threat down the left-hand side, sent a dipping shot over the bar deep into injury time but it was a frustrating afternoon for Shrews boss Gary Peters, whose team have now won only once in their last eight starts.
Cheltenham, who are still in both the FA Cup and LDV Vans Trophy as well as the play-off hunt, continue to go from strength to strength, the only cloud on their horizon being injuries to playmaker Grant McCann and defender Shane Duff, who was carried off on a stretcher towards the end of the game.