파일 내용과 사용자 정의 텍스트를 새 파일로 연결

파일 내용과 사용자 정의 텍스트를 새 파일로 연결

초보적인 질문이라 죄송합니다만, 글쎄요.신입이니까...

file1content text1file2content 라는 두 개의 파일이 주어지면 content 를 포함하는 새 파일을 text2만들고 싶습니다 . 다음과 같은 명령이 있었으면 좋겠다.file3text1newtextinbetweentext2

cat file1 (dontknowwhat "newtextinbetween") file2 > file3

dontknowwhat내가 원하는 것을 할 수 있는 것이 있나요 ? 그렇지 않다면 가장 좋은 접근 방식은 무엇입니까?

답변1

여기에는 두 가지 방법이 있습니다.

  1. 그룹 명령

     $ { cat file1; echo "newtextinbetween"; cat file2; } > file3
     $ cat file3
     text1
     newtextinbetween
     text2
    
  2. 서브쉘 사용

     $ ( cat file1; echo "newtextinbetween"; cat file2 ) > file3
     $ cat file3
     text1
     newtextinbetween
     text2
    
  3. 명령 대체 사용

     $ printf '%s\nnewtextinbetween\n%s\n' "$(cat file1)" "$(cat file2)" > file3
     $ cat file3
     text1
     newtextinbetween
     text2
    

    각 블록 사이에 줄 바꿈을 원하지 않으면 다음과 같이 할 수 있습니다.

     $ printf '%snewtextinbetween%s\n' "$(cat file1)" "$(cat file2)" > file3
     $ cat file3
     text1newtextinbetweentext2
    

답변2

또 다른 방법은 프로세스 대체를 사용하는 것입니다.

cat file1 <(echo "newtextinbetween") file2 > file3

echo편집: 개행 문자를 추가하는 방법을 모르면 echo -n대신 사용하십시오.

관련 정보