古代的學術原為貴族所有,貴族遵守宗法,祭祀按親疏,以此規定地位的高低。與祭祀相關的禮儀,即為當時的文化,掌管這些儀式的人,就是各級官員。宗廟裏有“宰”、有“祝”、有“史”,他們兼管天文曆法、占星候氣、布曆明時,使人民按時耕稼。這些都是他們的職責。祭祀時有頌歌、祈禱、盟誓等活動,把這些活動用文字保留下來,就成了史文。總之,這些都可納入“禮”的範疇,而掌握這些的人都可叫作“史”。據學者研究,“史”即廟祝,其中瞽史司天,祝史司鬼神,史巫司卜筮、占夢等。
隨著周王室的衰微,史官逐漸分布流散於列國。曆史上叫作“王官失守”。春秋時祝佗說周成王分封時,曾賜給魯國“祝宗卜史”。衛國的太史柳莊死,獻公告屍曰:“柳莊不是寡人的臣子,乃是社稷的臣子啊。”這句話的意思是說史官屬於王室,表明不敢把史官當作自己的臣子看待。諸侯國都有史官,史官具有如實書寫曆史、判定善惡、臧否人物的職責和權柄。其書寫對象包括諸侯國君本人。例如,晉國和齊國的史官,就敢直書“趙盾弑其君”和“崔杼弑其君”,他們似乎並不把齊國和晉國之君當作自己的君,而自認為是天子之臣。古人有言:“《春秋》,天子之事”,今本《春秋》中就有“趙盾弑其君”和“崔杼弑其君”這兩條。古代史官之所以敢於不畏強暴,奮筆直書,大概與他們是從周王室逐漸分布出去來到列國的有關。司馬遷曾自稱祖上“世典周史。惠、襄之間,司馬氏去周適晉。分散,或在衛,或在趙,或在秦”[1]。公元前527年(魯昭公十五年),周景王對晉國的籍談說:“過去你的高祖孫伯黶,掌管晉國的典籍,作為重要任務,所以稱籍氏。後來到了辛有之二子來晉國,晉國這才有了董史。”西晉的杜預說辛有是周人,其二子來到晉國,任太史。據文獻記載,柏常騫離開周來到齊國、太史儋也從周來到秦國。晉國亂,太史屠黍以其圖法歸周,都說明這些史官是從周王室分散出去的。