답변:
출력을 파일 >>
로 >
보낼 때 대신 사용하십시오 .
your_command >> file_to_append_to
경우 file_to_append_to
존재하지 않는, 그것은 생성됩니다.
예:
$ echo "hello" > file
$ echo "world" >> file
$ cat file
hello
world
에 append
파일 사용 >>
echo "hello world" >> read.txt
cat read.txt
echo "hello siva" >> read.txt
cat read.txt
출력은
hello world # from 1st echo command
hello world # from 2nd echo command
hello siva
에 overwrite
파일 사용 >
echo "hello tom" > read.txt
cat read.txt
그런 다음 출력은
hello tom
사용이 command >> file_to_append_to
파일에 추가합니다.
예를 들어 echo "Hello" >> testFile.txt
주의 : 하나만 사용 >
하면 파일의 내용을 덮어 씁니다. 지금까지 발생하지 않도록하기 위해, 당신은 추가 할 수 있습니다 set -o noclobber
당신에게 .bashrc
.
이를 통해 실수로 command > file_to_append_to
기존 파일을 입력 하면 파일이 이미 존재한다는 경고를 표시합니다. 샘플 오류 메시지 :file exists: testFile.txt
따라서 사용 >
하면 기존 파일을 덮어 쓰지 않고 새 파일 만 만들 수 있습니다.
-a (-append) 옵션과 함께 tee 를 사용하면 한 번에 여러 파일을 추가하고 sudo 를 사용할 수 있습니다 (보호 된 파일에 추가 할 때 매우 유용함). 게다가 모든 쉘이> 및 >> 연산자를 지원하지는 않으므로 bash 이외의 다른 쉘을 사용해야하는 경우 흥미 롭습니다.
echo "hello world" | sudo tee -a output.txt
이 스레드 는 티에 대한 좋은 답변 이 있습니다
예를 들어 파일에 다음이 포함되어 있습니다.
1. mangesh@001:~$ cat output.txt
1
2
EOF
파일 끝에 추가하고 싶다면 ----> 'text'>> 'filename'사이의 공백을 기억하십시오.
2. mangesh@001:~$ echo somthing to append >> output.txt|cat output.txt
1
2
EOF
somthing to append
그리고 파일의 내용을 덮어 쓰려면 :
3. mangesh@001:~$ echo 'somthing new to write' > output.tx|cat output.tx
somthing new to write
cat
것은 ... 완벽합니다. 표준 출력을 파일로 리디렉션했기 때문에 비어 있습니다.
echo
문자열에서 줄 바꿈 을 제거 한다는 것 입니다. 줄 바꿈이 포함 된 문자열을 파일에 어떻게 추가합니까?