다음을 수행하는 단일 쉘 명령이 있습니까?
cp header page.html
markdown page.md >> page.html
cat footer >> page.html
(Markdown은 기본적으로 stdout으로 출력합니다.)
동료가 제안
echo $(cat header) $(markdown page.md) $(cat footer) >> page.html
그러나 "고양이 쓸모없는 사용"상을받을 수있는 세 개의 서브 쉘과 두 마리의 고양이를 제외하고는 개행 문자도 제거합니다. 이는 특히 <pre><code>
블록 에서 좋지 않습니다 .
내가 원하는 것은 이와 같은 것입니다 (분명히 작동하지 않습니다)
cat header $(markdown page.md) footer > page.html
여기서 읽을 파일 중 하나에 대해 하위 셸의 출력을 사용하도록 cat에게 지시 할 수 있습니다. 임시 파일, 명명 된 파이프 등을 설정하지 않는 것이 이상적입니다.
하위 셸이 하나뿐이므로 다음을 사용합니다.
markdown page.md | cat header - footer > page.html
-
에 cat
PARAMS은으로 채워진 표준 입력을 지칭 markdown
명령.
여러 개의 하위 셸이있는 경우 anishane이 언급 한 솔루션을 사용하는 것이 좋습니다.
cat header <(markdown page1.md) <(markdwon page2.md) footer > page.html
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다