파일의 첫 번째 줄에 명령 출력

파일의 첫 번째 줄에 명령 출력

파일의 첫 번째 줄에 명령 출력을 삽입하려고 합니다.

예를 들어, "list.txt"라는 파일이 있고 해당 폴더에 있는 모든 파일 이름이 포함된 텍스트를 삽입하려고 합니다. ls명령의 출력을 list.txt의 첫 번째 줄로 보내는 방법입니다 .

답변1

대부분의 사람들은 sed를 검색 및 정규식 기반 검색 및 보충 도구로 알고 있지만 이는 편집이 가능한 완전한 편집기입니다.

그래서 이런 명령을 내릴 수 있습니다. 1 ils 명령의 첫 번째 줄을 파일 $(ls| head -1)에 삽입합니다( ).list.txt제자리에( -i).

sed -i "1 i$(ls| head -1)" list.txt

답변2

파일의 첫 번째 줄로 리디렉션하는 기본 방법은 없지만 임시 파일을 사용하여 이를 달성할 수 있습니다. 예를 들어, 먼저 출력을 에 추가한 list2.txt다음 list.txt여기에 추가하고 전체 출력을 다시 다음에 씁니다 list.txt.

ls > list2.txt
cat list.txt >> list2.txt
mv list2.txt list.txt

그렇게 하면 당신이 찾고 있는 것을 얻게 될 것입니다.

답변3

이를 수행하는 더 우아한 방법이 있을 수 있지만 여러 파일을 사용할 수도 있습니다. 예를 들어:

ls | head -n 1 > temp-list.txt
cat list.txt >> temp-list.txt
mv temp-list.txt list.txt

관련 정보