Sale (7) 7
Tries: Cohen Con: Hodgson
Bath (13) 19
Tries: Abendanon Con: Barkley Pens: Barkley 4
Sale's Charlie Hodgson is tackled by Bath's Matt Carraro at Edgeley Park
Bath kept up their pursuit of a place in the Premiership play-offs with a hard-fought win over Sale.
Two Olly Barkley penalties gave the visitors the lead before Nick Abendanon scampered over from close range, with Barkley adding the extras.
Ben Cohen's score in the corner, coupled with Charlie Hodgson's conversion, got Sale back in it.
But two more Barkley penalties in the second half sealed Bath's third successive Premiership win.
Bath dealt better with the conditions at a wet Edgeley Park and, with South African fly-half Butch James back in the side, looked full of ideas in midfield.
Sale, despite the presence of Hodgson, simply lacked the guile to overturn the lead they conceded in the first period.
After the first of Barkley's penalties, James's crossfield kick produced a period of sustained pressure, which the visitors could not turn into a try.
Soon after, Barkley added a long-range penalty and the hosts suffered more misery when prop Lee Imiolek hobbled off and wing Rhys Crane was carried from the field with a serious-looking injury.
Abendanon, one of 12 players released from England's Six Nations squad this week, gathered possession from the base of the scrum and scurried over, but Sale hit back soon after through Cohen's score.
A move orchestrated by Hodgson put Cohen through on the Bath left and, after several minutes to check a visiting defender had not hauled the World Cup winner into touch, the video referee awarded the try.
Try-scoring opportunities were scarce in the second half as Bath soaked up the hosts' pressure and then added to their lead through Barkley's third penalty.
Hodgson struck a post with a penalty of his own to deprive his side of a losing bonus point, before Barkley rubbed salt into the Sharks' wounds with the final act of the game.
Sale: MacLeod; Crane, Bell, Tuilagi, Cohen; Hodgson, Cliff; Imiolek, M. Jones, Thomas, C. Jones, Lewaravu, Gaskell, Fearns, Koyamaibole.
Replacements: Miller for MacLeod (40), Thornley for Crane (27), Croall for Imiolek (24), B. Roberts for M. Jones (76), Rouse for Lewaravu (76). Not Used: McIntyre, Cox, Leck.
Bath: Cuthbert; Biggs, Carraro, Barkley, Abendanon; James, Claassens, Flatman, Dixon, Bell, Hooper, Grewcock, Skirving, Watson, Taylor.
Replacements: Vesty for Cuthbert (76), Scott for James (79), McMillan for Claassens (79), Barnes for Flatman (61), Mears for Dixon (58), Palma-Newport for Bell (79), Fernandez Lobbe for Grewcock (58), Mercer for Skirving (79).
Referee: C White (RFU).