![텍스트 파일의 같은 줄에 데이터를 추가하는 방법](https://linux55.com/image/147496/%ED%85%8D%EC%8A%A4%ED%8A%B8%20%ED%8C%8C%EC%9D%BC%EC%9D%98%20%EA%B0%99%EC%9D%80%20%EC%A4%84%EC%97%90%20%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%A5%BC%20%EC%B6%94%EA%B0%80%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95.png)
텍스트 파일의 같은 줄에 데이터를 추가하는 방법은 무엇입니까? 상황은 첫 번째 부분이 명령의 출력이고 다른 부분이 내 특수 텍스트입니다(예: $ 코드 사용). date >> file.txt && echo -n "new data" >> file.txt
여기서 날짜의 첫 번째 출력은 "new data"라는 텍스트와 함께 파일에 먼저 저장됩니다. 새 줄을 추가하고 -$와 같은 코드 순서를 변경하면 echo "new data ">> file.txt && date >> file.txt
동일한 행에 데이터가 추가되지만 날짜 출력을 먼저 추가한 다음 특수 텍스트를 추가하고 싶습니다. 어떻게 할 수 있니?
답변1
노력하다
echo $(date) "new data" >> file.txt
어디
$( )
교체하면 새 날짜 행이 제거됩니다.
답변2
이 date
명령은 명령 끝에 개행 문자를 자동으로 추가합니다. 이 개행 문자를 제거하려면 다음을 수행할 수 있습니다.
date | tr -d '\n' >> file.txt && echo -n "new data" >> file.txt
그러면 날짜 출력에서 모든 개행 문자가 제거됩니다.
답변3
바꾸기를 사용하여 개행을 제거하는 솔루션입니다.
$ d=$(date)
$ echo -n $d >> file
$ echo " <- this is date" >> file
$ cat file
Mon Feb 4 07:08:21 CET 2019 <- this is date
$
답변4
"새 데이터"가 정적인 경우 다른 옵션은 다음과 같습니다.
printf '%s new data\n' "$(date)" >> file.txt
"새 데이터"가 다를 수 있는 경우:
printf '%s %s\n' "$(date)" "${newdatavar}" >> file.txt