Program Club

io 리디렉션을 사용하지 않고 명령 줄에서 파일에 텍스트 추가

proclub 2021. 1. 8. 20:48
반응형

io 리디렉션을 사용하지 않고 명령 줄에서 파일에 텍스트 추가


io 리디렉션을 사용하지 않고 한 줄 명령을 통해 파일에 텍스트를 추가하려면 어떻게해야합니까?


sed사용해도 괜찮다

$ 고양이 테스트 
이것은 1 행입니다
$ sed -i '$ a \ 이것은 리디렉션이없는 라인 2입니다'테스트 
$ 고양이 테스트 
이것은 1 행입니다
리디렉션이없는 라인 2입니다.

문서가 다소 길 수 있으므로 몇 가지 설명이 있습니다.

  • -i 내부 변환을 의미하므로 모든 변경 사항은 지정한 파일에서 발생합니다.
  • $ 마지막 줄을 지정하는 데 사용됩니다.
  • a 뒤에 줄 추가를 의미합니다.
  • \ 단순히 구분자로 사용됩니다.

손으로 무언가를 붙이고 싶다면 sed대답이 효과적입니다. 대신 텍스트가 파일에있는 경우 (예 : file1.txt 및 file2.txt) :

Perl 사용 :

perl -e 'open(OUT, ">>", "outfile.txt"); print OUT while (<>);' file*.txt

NB >>는 리디렉션 표시처럼 보일 수 있지만 파일 열기 모드 일 뿐이며이 경우에는 "추가"입니다.


Ex 모드에서 Vim을 사용할 수 있습니다.

ex -sc 'a|BRAVO' -cx file
  1. a 텍스트 추가

  2. x 저장하고 닫습니다


다음 --append기능을 사용할 수 있습니다 tee.

cat file01.txt | tee --append bothFiles.txt 
cat file02.txt | tee --append bothFiles.txt 

또는 더 짧게

cat file01.txt file02.txt | tee --append bothFiles.txt 

리디렉션 없음 ( >>)에 대한 요청은 이것을 사용할 필요가 xargs있거나 이와 유사한 것으로 가정합니다 . 그래서 그것이 중요하지 않다면, 당신은 출력을 >/dev/null.

참조 URL : https://stackoverflow.com/questions/4640011/append-text-to-file-from-command-line-without-using-io-redirection

반응형