В 1901—1903 годы Б. М. Шапошников учился в Московском Алексеевском военном училище, которое окончил по 1-му разряду, пятым по списку после четырёх фельдфебелей, шедших вне конкурса, и был произведён в чин подпоручика. Начал службу в 1-м Туркестанском стрелковом батальоне в Ташкенте, в 1903—1907 годы командовал там полуротой.
В 1907—1910 годы учился в Академии Генерального штаба (Императорская Николаевская военная академия), по окончании которой был произведён в штабс-капитаны и причислен к Генеральному Штабу. После окончания академии проходил 2-х годичное цензовое командование ротой в своём же батальоне, который был развёрнут в 1-й Туркестанский стрелковый полк. В 1912 году переведён старшим адъютантом штаба 14-й кавалерийской дивизии в Ченстохов.
С августа 1914 года участвовал в Первой мировой войне в должности адъютанта штаба 14-й кавалерийской дивизии (14 ак) на Западном фронте, показал хорошее знание тактики, проявил личную отвагу. В октябре 1914 года был контужен в голову. В январе — ноябре 1915 года — помощник старшего адъютанта разведотдела штаба 12-й армии на Северо-Западном фронте. В ноябре 1915 года — мае 1916 года — начальник штаба Отдельной сводной казачьей бригады. За боевые заслуги в 1916 году был отмечен Высочайшим Благоволением.
На август 1917 года занимал должность и.д. начальника штаба Туркестанской дивизии. В чине подполковника установлено старшинство с 6 декабря 1912 года. В сентябре 1917 года Б. М. Шапошников произведён в чин полковника с назначением на должность командира 16-го гренадерского Мингрельского полка.
В ноябре 1917 года на съезде делегатов военно-революционных комитетов был избран начальником Кавказской гренадерской дивизии. В январе — марте 1918 года находился в госпитале.