본관은 현풍(玄風). 자는 공가(公可), 호는 무위자(无爲子). 허목(許穆)의 문하에서 수학하였다. 일찍이 무예를 익혔으나 과거에 합격하지 못하였고, 허목에게 나아가 학문을 닦고 인정을 받았다.
1636년(인조 14) 병자호란 때 분의(奮義)하여 서울로 올라갔으나, 화의의 소식을 듣고 중지하였다. 숙종이 즉위하여 현종릉지문(顯宗陵誌文)을 송시열(宋時烈)에게 짓게 하자 그 부당함을 상소하였다. 1675년(숙종 1) 사옹원봉사(司饔院奉事)에 특임되었으나 사양하였고, 그 뒤 군자감주부(軍資監主簿)가 되었다.
윤휴(尹鑴)의 천거로 형조좌랑에 이어 공조정랑을 지냈으며, 1676년에 봉직랑(奉直郎)으로서 통훈대부(通訓大夫)에 오르고 익산군수로 나아가 치적을 올렸다. 경신대출척(庚申大黜陟)으로 허적(許積)·윤휴 등이 사사되자, 이에 연루되어 투옥되었다가 풀려나온 지 2년 만에 별세하였다. 저서로는 『무위당유고(无爲堂遺稿)』가 있다.