실행하고 출력을 특정 형식의 파일에 쓰려는 스크립트가 있습니다.
현재 스크립트를 실행하고 이를 표준 출력으로 지정하면 원하는 형식으로 출력이 제공됩니다. 문제는 파일로 보내려고 하면 형식이 손실되고 파일의 출력이 같은 줄에 표시된다는 것입니다.
다음은 특정 방식으로 파일에 기록하려는 출력입니다.
아래는 파일에 쓸 때 실제로 제공되는 내용입니다.
이게 내 코드야
printf "%s\n" "==================" >> test
printf "%s\n" "Disk Space. Look for /" >> test
printf "%s\n" "==================" >> test
printf "%s\n" $(df | grep '/dev/') >> test
printf "%s\n" "==================" >> test
파일의 출력을 명령줄의 출력과 비슷하게 만드는 방법.
편집: plink(퍼티 명령줄)를 통해 실행 중이고 명령은 내가 사용하는 명령 파일에 있습니다.
답변1
스크린샷을 보면 Windows의 메모장에서 파일을 보고 있는 것처럼 보입니다. Windows 스타일 줄 끝(CR+LF)만 인식하고 Unix 스타일 줄 끝이 있는 파일을 한 줄에 표시합니다.
Windows 스타일 줄 끝을 출력 \n
하도록 변경할 수 있습니다 .\r\n
printf
답변2
unix2dos
( dos2unix
동일한 dos2unix-*
rpm에서 가져오는 것이 아니라) 파일을 실행한 다음 파일을 대상으로 보내면 됩니다 . 이렇게 하면 파일이 Windows에서 제대로 실행될 수 있습니다.