쉘 리디렉션 없이 여러 파일을 한 번의 호출(추가, 병합)로 복사하시겠습니까?

쉘 리디렉션 없이 여러 파일을 한 번의 호출(추가, 병합)로 복사하시겠습니까?

여러 파일을 단일 파일에 복사/추가하는 데 사용할 수 있는 일종의 명령을 찾고 있습니다.아니요쉘 리디렉션(에서 시도해 보고 싶습니다 call_usermodehelper. 비슷한 질문을 참조하세요.call_usermodehelper/call_usermodehelperpipe 사용법). 다음을 사용할 수도 있다는 것을 알고 있습니다.

cat file1 file2 > file.merge

...그러나 이를 위해서는 쉘 리디렉션이 필요합니다.

지금까지 내가 찾은 것 :

  • 기본 stdout 출력을 (명령줄 인수를 통해) 재정의할 수 없기 때문에 사용할 수 없습니다 cat. 그 외에는 쉘 리디렉션입니다.
  • 하나의 입력 파일 매개변수 dd만 허용할 수 있으므로 단일 호출에서 사용할 수 없습니다.if=
  • cp여러 파일을 개별적으로 처리하고 모든 파일을 한 위치에 복사하고 "병합"할 수 있는 방법이 없으므로 사용할 수 없습니다.

그렇다면 (의사 코드)와 같은 작업을 수행할 수 있는 표준 도구가 있습니까?

copytool -i file1 -i file2 -o file.merge

...출력이 콘텐츠 에 추가된다는 file.merge뜻 인가요?file2file1

답변1

넌 할 수있어:

sed -n wfile.merge file1 file2

또는:

awk '{print > "file.merge"}' file1 file2

또는:

sh -c 'cat file1 file2 > file.merge'

(구현에 따라 처음 두 개는 바이너리에서 올바르게 작동하지 않을 수 있습니다.)

관련 정보