牧野之战是周武王灭商的关键一役,是我国历史上一次著名的战争。关于其战场所在地,自汉至今众说纷纭,有“朝歌南”、“汲县”、“新乡牧野”诸说,尚无定论。近些年来,一些有关牧野之战的文章相继发表,提出了不同的看法。但我认为以上各说皆不妥,故写此文,谈谈我的一些看法,并望方家指正。
一、对“牧野”的理解
我认为,要考证牧野之战的战场地望,首先要弄清楚何为“牧野”。《尔雅·释地》曰:“邑外谓之郊、郊外谓之牧、牧外谓之野、野外谓之林”,可见牧野本来并不是一个聚落地名,而是一个泛指的地域名,正如一般意义上的山阳、河阳一样。《诗经》中就有“牧野”与“牧之野”的记载,如《大雅·大明》有“矢于牧野”、“牧野洋洋”,《鲁颂·閟宫》有“于牧之野”。经过武王伐纣的“牧野之战”,“牧野”也就逐渐成为一个特指的地域名,而且在相当长的历史时期里也并不是一个聚落名。今新乡市牧野区牧野乡的西牧村,宋朝时名为穆村,清朝乾隆年间改名为牧村,宣统元年(1909年)更名牧野村。此说是否准确我虽未考证,但此一牧野村得名较晚确是事实。《水经注》卷九《清水注》曰:“自朝歌以南,南暨清水,土地平衍,据皋跨泽,悉坶野矣。”坶即牧,清水即今卫河,朝歌即今淇县县城朝歌镇。由此可以得知,今淇县以南、卫河以西以北、太行山以东的平原即为地域概念上的牧野。
本文所考证的是“牧野之战”的战场地望,它与牧野地望不尽相同,它当是地域概念上牧野的某一部分地区,而且也非指某一聚落。
二、对以往各说之分析
关于牧野之战的战场地望,以往主要有以下三说,我们分别对之进行分析。
(一)朝歌南说
《后汉书·郡国志》曰:“朝歌,纣所都居,南有牧野,北有邶国。”《史记·殷本纪》裴骃《集解》引郑玄曰:“牧野,纣南郊地名也。”因为朝歌为“纣所都居”,所以古人以朝歌为中心来解释牧野地望,后人也多言牧野在朝歌南。但这并未确切地指出牧野之战的战场地望,仅是指出了牧野的方位范围。朝歌为“纣所都居”时,其范围要比今淇县大,如今浚县西的钜桥乡为殷纣粮仓所在,今汤阴县北的羑里村为殷纣监狱所在,今卫辉市北的比干墓为殷王室墓地,因此,“纣所都居”的朝歌应包括这一大区域,即今淇县全境和浚县、汤阴县、卫辉市等若干县市的部分地区,而远非淇县一县之地。《后汉书·郡国志》曰:“朝歌……北有邶国,南有宁乡。”有学者认为,宁乡即宁,在今获嘉县,说明从今淇县向南包括卫辉市、新乡市区、新乡县、获嘉县均可称之为朝歌南,也就是说,淇县南仅是淇县的县城以南地区,仍在淇县境内,而朝歌南要远比淇县南所指的范围大,并不局限于淇县境内,所以我认为朝歌南说并不错,只是没有确切指出战场地望,而由此引出的淇县南说(见郭沫若主编的《中国史稿》第1册第220页)则缩小了地理范围,造成错误。
(二)汲县说
汲县,1988年改为卫辉市(县级),故汲县说亦可称之为卫辉说,该说又可分为汲县东北说,汲县说与汲县西南说。
《尚书·牧誓》《孔传》曰:“牧野,近郊三十里地名。”《通典·州郡》卫州汲县条载:“牧野之地,即纣都近郊三十里,即此也。”这里说牧野距朝歌三十里,据此里数,故有牧野在汲县北或东北之说。翦伯赞主编的《中国史纲要》上册第34页即言:“牧野(今河南汲县北)。”但是,这里的“三十里”是有问题的,因为早在唐以前的东汉,许慎已在《说文解字》中讲“坶,朝歌南七十里也。《周书》曰:武王与纣战于坶野。”是“七十里”而非“三十里”。所以汲县东北说盖由“三十里”而得出的误说。
《史记·鲁周公世家》唐张守节《正义》:“卫州即牧野之地,东北去朝歌七十三里。”《元和郡县图志》河北道卫州条:“《禹贡》冀州之域。后为殷都,在今州东北七十三里卫县北界朝歌故域是也。今州理,即殷牧野之地。”当时的卫州治汲县,即今卫辉市,此即为汲县说。范文澜的《中国通史》即持此说。
《读史方舆纪要》卫辉府汲城条:“在府城西南二十五里……宋白曰:卫州旧城,隋以前谓之陈城。《郡国县道记》云:武王伐纣,于此列陈,故名陈,俗作阵。”汲城即今卫辉市西南的孙杏村镇汲城村。《元丰九域志》附录《新定九域志(古迹)》卫州:“汲城,本牧野之地。”但正如本文第一部分所说,牧野之战的战场地望当是地域概念上牧野的某一部分地区,并非指某一聚落,故以上文献也并非指出牧野之战的战场地望,而据此得出汲县西南说则是正确的,也就是说,该说并未真正指出牧野之战战场的确切位置,只是比起朝歌南说又进了一步。
(三)新乡牧野说
经初步考证,该说最早仅见于明正德《新乡县志》:“牧野在县东北三里,武王伐纣之处也。”未见于更早的文献。据《说文解字》,牧野在朝歌南七十里,而新乡市牧野区的牧野乡距今淇县县城朝歌镇有九十余里,从此里数也可推断新乡牧野不是牧野之战的战场所在地,新乡牧野说恐为后人的附会之说。
三、牧野一带的地理形势与交通
既已分析了以往各说,那么,要指出牧野之战战场的确切位置,则必须明了牧野一带的地理形势与交通。为此,我也曾多次到牧野一带进行实地考察。
《荀子·儒效篇》曰:“武王之诛纣也……至共头而山隧……暮宿于百泉,厌旦于牧之野。”共头即今辉县市区北部的九山,百泉即今辉县市区西北部百泉镇的百泉湖。可见武王军队是经百泉而到牧野的。现在,就让我们来看一看这一带的地理形势。百泉湖北岸为苏门山,苏门山以东为九山,九山转而东南也是丘陵山区,一般高度都在200米至500米,为太行山余脉,一直延伸到新乡市凤泉区北部的凤凰山,凤凰山以西、以南及以东均为华北平原,也就是说,自辉县市九山至凤泉区凤凰山的丘陵山区为太行山向华北平原的一个突出地带。凤凰山东南约十里即为卫河(古清水),卫河东南岸为汲城村,汲城村东南十余里即为商周之际的黄河故道。正像有学者指出的那样,从这里的地理形势可以看出,武王军队是不可能从百泉东向而直接进攻朝歌的,因为那里是丘陵山区没有道路。武王军队“至共头而山隧”,道路不通,所以又向西南而“暮宿于百泉”,然后从百泉沿山边南下,“厌旦于牧之野”。
让我们再来看一下朝歌的地理位置:东边是当时的黄河,西边是太行山,二者之间属于华北平原。而在其西南七十里一带,由于太行山余脉突出于华北平原上,这里的太行山与当时的黄河距离仅约二十余里,是一个瓶颈地带,而且这里的山河之间还有清水(今卫河)这一天然屏障,所以这里天然地成为拱卫朝歌的南大门。
四、牧野之战的发生及战场确切位置
《吕氏春秋》中讲到,武王军队“果以甲子至殷郊,殷已先陈矣”。又《读史方舆纪要》卫辉府汲城条曰:“宋白曰:卫州旧城,隋以前谓之陈城。《郡国县道记》云:武王伐纣,于此列陈,故名陈,俗作陈。”综合以上二则史料我们可以得出,后者所言的“武王伐纣,于此列陈”从字面上看是武王“于此列陈”,但此处加一“纣”字,做“武王伐纣,纣于此列陈”语意更胜,即实为纣王“于此列陈”,这样也更符合战争的实际。也就是说,今汲城村为当时纣王列阵的依托,而武王军队是从清水西北的百泉沿太行山余脉脚下而来,他们进攻朝歌是不需要渡清水的,而要在清水西北岸向东北方向的朝歌进军。在与凤凰山对峙的峙儿山脚下就流传着武王与众诸侯在此祭祀天地的传说。故我们可以推断,“已先陈”的纣王军队会派重兵列阵于凤凰山东南至汲城外的清水之间,以汲城为依托,以清水为其左翼屏障。到了“甲子朝”,武王军队至此,与纣王已摆好的阵势相遇,发生了著名的牧野之战。按新乡牧野说,纣王是在牧野区牧野乡的玉河村一带布阵抵御武王军队,我认为,武王军队完全没有必要南下至距凤凰山南麓近三十里的新乡牧野与之相遇,而直接可以从凤凰山脚下的卫河西北岸的交通孔道直接通过而攻取朝歌。
综合以上论述,我认为牧野之战战场的确切位置应为:今新乡市凤泉区凤凰山东南与卫辉市西南的孙杏村镇汲城村外的卫河西北岸之间一带。