这里为什么用whom而不用that?

有一读者问: 《学英语》某期说:

“当主句是以who或which开头的特殊疑问句时,定语从句要用that而不用who (whom), which引导。” 但《新编高中英语课本》 第一册第52页却有这样一个句子: Who's the comrade whom you just shook hands with? 这里为什么用whom而不用that引导定语从句呢?

这里的定语从句whom you just shook hands with修饰的是comrade, 所以是对的。当然也可以用that,但不及whom普遍,尤其在口语中更多用whom(在当代英语里,亦可用who)。但修饰句首疑问词who的定语从句则须用that引导,如:Who that has read Shakespeare can ever forget him?