Roy Harper sang 'Have a Cigar' because Roger Waters couldn't nail the sleazy executive.

Harper, a folk singer and friend of the band, was recording his own album at Abbey Road and agreed to step in.