checksums.txt
나중에 데이터의 무결성을 확인하기 위해 일부 파일을 백업하고 체크섬 파일을 생성하고 있습니다 . 그러나 백업이 수백 개의 파일로 구성되어 있으므로 각 체크섬을 파일에 수동으로 붙여넣는 것은 불편합니다. 그래서 주변에 문의한 후 출력을 체크섬 파일 제안으로 리디렉션하여 프로세스를 단순화하는 아이디어를 얻었습니다.
$ md5sum file > checksums.txt
또는
$ sha512sum file > checksums.txt
그러나 이렇게 하면바꾸다파일의 내용 checksums.txt
과 이 경우 파일의 체크섬을 file
대신 사용하고 싶습니다.추가의file
checksums.txt
내용을 삭제하지 않고 to의 체크섬입니다 . 그래서 내 질문은 다음과 같습니다어떻게 해야 하나요?
그리고 하나 더. 저는 기본 사용자이므로 (가능한 경우에만) 따라하기 쉬운 제안을 해주시기 바랍니다.
답변1
파일에 추가하려면 >>
.
그래서 당신의 예는
$ md5sum file >> checksums.txt
그리고
$ sha512sum file >> checksums.txt
답변2
연산자 옆에 >>
추가 모드로 파일을 엽니다.@Thomas가 답변했듯이, 또 다른 옵션은 연산자를 사용하여 파일을 >
단 한 번만 열고 두 명령 모두에 대해 열어 두는 것입니다.
exec 3> checksums.txt
파일 설명자 3에서 파일을 열고 잘라냅니다. 그런 다음:
md5sum file1 >&3
file1의 md5sum을 여기에 씁니다.
md5sum file2 >&3
(동일한 쉘에서 실행하는 경우) file2 md5sum이 추가됩니다.
그런 다음 다음을 수행할 수 있습니다.
exec 3>&-
파일 설명자를 닫습니다. >
전체 stdout(파일 설명자 1, 연산자의 기본값)을 리디렉션하여 동일한 작업을 수행 할 수도 있습니다.명령 그룹:
{ md5sum file1; md5sum file2; } > checksums.txt
또는 사용서브쉘바꾸다명령 그룹:
(md5sum file1; md5sum file2) > checksums.txt