Born in Bury, Greater Manchester, O'Shaughnessy was selected for the England Young Cricketers tour of the West Indies in 1979–80, playing in all three Youth Tests.
O'Shaughnessy made his List A debut on 1 June 1980, in a John Player League for Lancashire against Warwickshire at Aigburth, though his contribution was minimal as he was dismissed for one and neither bowled nor held a catch.
He passed a thousand first-class runs for the only summer of his career, hitting 1,167 at 34.32, including the other three centuries, the highest – and his career-best – being 159* against Somerset at Bath.
[7] 1984 also saw his only List A hundred, 101* against Leicestershire in August,[8] and in this year he also helped Lancashire win the Benson & Hedges Cup, taking 2 wickets and scoring 22 in the final.
[12] This performance won O'Shaughnessy the Walter Lawrence Trophy for the fastest century of the season, despite its contrived circumstances, and equalled Percy Fender's 1920 record.
That 44 remained his highest first-class score for Worcestershire, and although he did strike 62 versus Hampshire in the NatWest Trophy semi-final,[18] he failed badly with the rest of the top order in the final, being dismissed for one run.
[20] By 1989, O'Shaughnessy was spending considerable amounts of time in the Second XI, and made only one first-class appearance (against the touring Australians), and although he played in 12 List A games he enjoyed little success.