Родился 7 января 1877 г. в пос. Застепь (г. Чита), Титовской станицы Забайкальского казачьего войска. Окончил 3-классное городское училище в Чите. В службу вступил 5 августа 1894 г. в 1-й Забайкальский казачий батальон. 18 марта 1895 г. произведен в младшие урядники. 31 августа 1895 г. зачислен в Иркутское юнкерское училище. Закончил курс училища по 1-му разряду и 9 августа 1897 г. произведен в подхорунжие. 14 августа 1897 г. зачислен во 2-й Забайкальский казачий полк. 9 ноября 1897 г. произведен в хорунжие.
25 июля 1900 г. в составе 2-го эшелона полка вступил в пределы Китая. 11 июля 1901 г. пожалован орденом Св. Владимира 4-й степени с мечами и бантом.
30 января 1902 г. командирован в Забайкалье для сопровождения казаков, отпущенных на льготу. 1 августа 1902 г. произведен в сотники. 18 февраля 1903 г. в составе полка перемещен на службу из Приамурского военного округа в Квантунскую область.
6 мая 1904 г. за отличия в делах с японцами 10 марта у г. Пакчена и 15 марта в г. Тенжу произведен в подъесаулы. 25 июня 1904 г. награжден орденом Св. Анны 4-й степени с надписью «За храбрость». 2 ноября 1904 г. за отличия в делах с японцами награжден орденом Св. Станислава 2-й степени с мечами. 7 апреля 1905 г. награжден орденом Св. Анны 2-й степени с мечами «За отличия в делах с японцами». 17 августа 1905 г. за отличия в делах против японцев произведен в есаулы.
С 10 апреля по 1 июля 1913 г. прошел стрелковые и пулеметные курсы в г. Ораниенбауме. 6 мая 1914 г. произведен в войсковые старшины.
8 сентября 1914 г. в составе полка выступил на театр боевых действий. 1 мая 1915 г. произведен в полковники. 3 августа 1915 г. награжден орденом Св. Владимира 3-й степени с мечами. С 7 октября 1915 г. назначен временно командующим 1 -м Аргунским казачьим полком. 29 декабря 1915 г. награжден орденом Св. Анны 3-й степени с мечами и бантом. 18 февраля 1916 г. назначен командиром 1-го Читинского казачьего полка. 5 октября 1916 г. в бою у урочища Воля, у реки Стоход, отравлен удушливыми газами и остался в бою. 25 января 1917 г. назначен командиром 2-й бригады 1-й Забайкальской казачьей дивизии. 12 июня 1917 г. произведен в генерал-майоры. 17 июля 1917 г. назначен начальником Эриванского отряда на правах командира корпуса с оставлением на должности начальника 2-й бригады Забайкальской казачьей дивизии.
14 декабря 1917 г. в составе бригады отведен в Забайкалье.
С ноября 1918 года командовал кавалерийской бригадой, 4-м армейским корпусом, служил в Иркутском гарнизоне. В конце 1919 года командовал 1-м Оренбургским казачьим корпусом. В 1921-22 гг. возглавлял Забайкальскую военную организацию. В 1922 году Шильников и его жена Мария Васильевна по приговору Забайкальского Политического Народно-Революционного Суда ДВР заочно объявлены врагами народа. В конце 1922 года при переходе границы был арестован и провел 2,5 года в тюрьме. В эмиграции проживал в Харбине. Член РОВС. В начале 1930-х годов возглавлял маньчжурское отделение РОВС. Автор многих статей о казачестве и книги «1-я Забайкальская казачья дивизия в Великой европейской войне 1914-1918 гг.» (Харбин, 1933).
Скончался 8 мая 1934 г. Похоронен в Харбине.