텍스트 파일에서 새 줄을 제거하려면 어떻게 해야 합니까?
저는 다음과 같은 데이터를 가지고 있으며, 모든 데이터를 한 줄로 정리해야 합니다.
이거 있어요.
22791
;
14336
;
22821
;
34653
;
21491
;
25522
;
33238
;
난 이게 필요해
22791;14336;22821;34653;21491;25522;33238;
편집
이들 명령어 중 어느 것도 완벽하게 동작하지 않습니다.
대부분의 경우 데이터는 다음과 같습니다.
22791
;14336
;22821
;34653
;21491
;25522
tr --delete '\n' < yourfile.txt
tr -d '\n' < yourfile.txt
편집:
여기에 표시된 명령어가 모두 작동하지 않으면 필드를 구분하는 줄바꿈 이외의 명령어가 있습니다.파일에는 DOS/Windows 행의 엔딩이 포함되어 있을 가능성이 있습니다(그 경우에도 Perl 솔루션은 동작합니다).
시험:
tr -d "\n\r" < yourfile.txt
그래도 문제가 해결되지 않으면 파일을 좀 더 자세히 검사하여(16진수 에디터 등) 삭제하려는 문자가 실제로 있는지 확인해야 합니다.
tr -d '\n' < file.txt
또는
awk '{ printf "%s", $0 }' file.txt
또는
sed ':a;N;$!ba;s/\n//g' file.txt
이 페이지에는, 그 외의 새로운 행을 삭제하는 방법이 많이 있습니다.
편집하여 고양이 학대 제거:)
perl -p -i -e 's/\R//g;' filename
그 일을 해야 한다.
이전 답변을 확장하면 모든 새 행이 삭제되고 결과가 새 파일에 저장됩니다(@tripleee 덕분에).
tr -d '\n' < yourfile.txt > yourfile2.txt
'쓸데없는 고양이'보다 나은 방법(댓글 참조):
cat file.txt | tr -d '\n' > file2.txt
말미에서 를 들어, 파일 행을 사용할 수 있습니다.echo blah > file.txt
.
대상 파일 이름이 다르므로 중요합니다. 그렇지 않으면 원본 컨텐츠가 지워집니다.
paste -sd "" file.txt
vim에서 파일을 편집할 수 있습니다.
$ vim inputfile
:%s/\n//g
사용하다
head -n 1 filename | od -c
'무엇을 공격하고 있는지'를 알아냅니다.그 후
tr -d '\n' <filename
LF의 경우
tr -d '\r\n' <filename
CRLF의 경우
POSIX 클래스에서 sed 사용
공백(스페이스와 탭)만을 포함한 모든 행이 삭제됩니다.
sed '/^[[:space:]]*$/d'
그냥 네가 하고 있는 일을 거기에 파이프로 연결해.
예
cat filename | sed '/^[[:space:]]*$/d'
또는 매우 nvim 을 할 수 .gJ
는 그냥 사용 로, 사용 예시는 그냥 사용 로 해주세요.
99gJ
99년은 할 수 있어요.99
몇 줄에 가입하느냐에 따라 필요한 만큼.한 줄만 연결하면gJ
분합니니다다
man 1 ed 사용:
# cf. http://wiki.bash-hackers.org/doku.php?id=howto:edit-ed
ed -s file <<< $'1,$j\n,p' # print to stdout
ed -s file <<< $'1,$j\nwq' # in-place edit
xargs
는 새로운 행도 소비합니다(단, 최종적인 후행의 추가).
xargs < file.txt | tr -d ' '
Nerd 팩트: ASCII를 대신 사용합니다.
tr -d '\012' < filename.extension
(같은 솔루션을 가진 빌어먹을 답변을 보지 못했기 때문에 편집했습니다만, 제 답변은 ASCII를 가지고 있었습니다.)
gedit 텍스트에디터 사용(3.18.3)
- [검색(Search)]을 클릭합니다.
- 찾기 및 바꾸기...를 클릭합니다.
- 「」라고 입력합니다.
\n\s
[검색(Find)]필드로 - 공백으로 바꾸기(없음)
- [ Regular expression ]체크박스를 켜겠습니다
- [검색(Find)]버튼을 클릭합니다.
주의: 이것은 OP의 7년 전의 문제에 대해 정확하게 대처하는 것은 아니지만, 유사한 "텍스트를 한 줄에 모두 표시하는 방법"을 SE에서 찾아오는 몇몇 noob Linux 사용자(저와 같은 사용자)에게 도움이 될 것입니다.
$ perl - 0777 - pe 's/\n+/g' 입력 > 출력
$ perl - 0777 - pe 'tr/\n/d' 입력 > 출력
데이터가 파일에 있는 경우.그러면 txt:
echo $(<file.txt) | tr -d ' '
'$(<file.txt)
'는 파일을 읽고 내용을 일련의 단어로 나타내며, 그 단어 사이에 공백으로 에코합니다.그런 다음 'tr' 명령을 실행하면 다음과 같은 공백이 삭제됩니다.
22791;14336;22821;34653;21491;25522;33238;
숫자 및 세미콜론만 유지한다고 가정할 경우, 다음과 같이 큰 인코딩 문제가 없다고 가정하고 마지막 "newline"도 삭제합니다.
$ tr -cd ";0-9"
예를 들어 소수점, 쉼표 등을 유지하려는 경우 위의 내용을 다른 문자를 포함하도록 쉽게 수정할 수 있습니다.
보통 파일에서 코드 스니펫을 복사할 때 불필요한 새 행을 추가하지 않고 콘솔에 붙여넣을 때 이 사용 사례가 발생합니다.그 결과 bash 에일리어스가 생성되었습니다.
(나는 그것을 불렀다.oneline
궁금하시다면)
xsel -b -o | tr -d '\n' | tr -s ' ' | xsel -b -i
xsel -b -o
내 클립보드를 읽다tr -d '\n'
새로운 회선을 삭제합니다.tr -s ' '
반복 공간을 삭제합니다.xsel -b -i
이것을 클립보드에 다시 밀어넣다
그 후 클립보드의 새로운 내용을 콘솔이나 다른 곳에서 온라인에 붙여넣습니다.
아악, 예컨대 난데없이.
awk '/[0-9]+/ { a = a $0 ";" } END { print a }' file.txt
(단점은 가 메모리에 「자극」되어 있는 것입니다).
편집
printf는 잊어버렸어!그래서 또
awk '/[0-9]+/ { printf "%s;", $0 }' file.txt
아니면 awk를 사용하여 다른 Awk에 이미 입력된 것을 사용하는 것이 더 나을 수도 있습니다.
특히 이상한 단어들을 수정하기 위해 GUI에서 이 작업을 수행해야 할 경우 가장 명확하고 빠른 답변을 놓치고 있습니다.
열다.
gedit
+, 를 입력하고,
Find
텍스트 박스\n
및 인Replace with
빈 공간그러면 체크박스를 채웁니다.
Regular expression
그리고 부라.
파일 끝에 있는 줄 바꿈도 제거하려면
python -c "s=open('filename','r').read();open('filename', 'w').write(s.replace('\n',''))"
내가 찾은 가장 빠른 방법:
- 명령줄에서 이 작업을 수행하여 vim을 엽니다.
vim inputfile
- ":"를 누르고 다음 명령을 입력하여 모든 줄바꿈을 제거합니다.
:%s/\n//g
- 일부 문자가 공백인 경우에도 공백을 제거하려면 이 항목을 입력하십시오.
:%s/ //g
- 파일에 쓰는 것으로, 반드시 보존해 주세요.
:w
같은 형식을 사용하여 다른 문자를 삭제할 수 있습니다.https://apps.timwhitlock.info/unicode/inspect과 같은 웹 사이트를 사용하여 누락된 문자를 확인할 수 있습니다. 또한 이 형식을 사용하여 볼 수 없는 다른 문자를 확인할 수도 있습니다. 또한 보이지 않는 다른 문자를 학습할 수 있는 도구도구를 사용하여 다른 문자를 학습할 수도 있습니다.
언급URL : https://stackoverflow.com/questions/3134791/how-do-i-remove-newlines-from-a-text-file
'programing' 카테고리의 다른 글
기본적으로 라디오 버튼을 선택하려면 어떻게 해야 합니까? (0) | 2023.04.15 |
---|---|
iOS 앱을 업로드할 때 애플리케이션 로더가 "iTunes 스토어와 인증 중"으로 고착됨 (0) | 2023.04.15 |
이벤트 처리를 위해 WPF 자원 딕셔너리 뒤에 코드를 설정할 수 있습니까? (0) | 2023.04.15 |
sudo를 사용하여 쓰기 권한이 없는 위치로 출력을 리디렉션하려면 어떻게 해야 합니까? (0) | 2023.04.15 |
Xcode의 숨겨진 특징 (0) | 2023.04.15 |