Atomic Habits

DOS 명령어 본문

IT/Linux-Vim

DOS 명령어

체계성 2021. 11. 8. 21:05

- 파일 병합

방법1)

type 1.txt 2.txt 3.txt > 4.txt

type *.txt > 4.txt (파일 마지막 라인이 없을 경우 이어 붙는 문제 발생)

 

방법2)

1) EXEC.bat 파일 생성(메모장 작성 후 확장자 변경 /

txt 파일이 있는 곳에 넣어두기)

echo.>>1.txt
echo.>>2.txt
echo.>>3.txt

 

2) cmd> EXEC.bat

2) cmd> type *.txt > 0.txt (우측 파일명이 좌측 파일명 보다 뒤에 있으면 0.txt도 병합되는 문제 발생 : 0.txt로 병합)

 

- 파일 라인 수 구하기

C:\TY\document>find /v /c *.txt ""
---------- NEW3.TXT: 10
---------- TEMP_SOURCE.TXT: 60
---------- YTY NOTE.TXT: 10

 

- 리눅스(우분투) 파일 라인 수 구하기

ytgo@DESKTOP-8B0ADNK:/mnt/c/code/remove$ wc -l mart_djy_06.txt
99522032 mart_djy_06.txt

 

- 리눅스(우분투) 파일 문자열 치환 변경(찾아 바꾸기) 
ytgo@DESKTOP-8B0ADNK:/mnt/c/code/remove$ sed -i 's/\\//g' djy_06.txt -- -i : 원본에 저장

 

- ★★★ 줄바꿈 + 파일 합치기 + 배치파일 만들기 ★★★

https://doksan.tistory.com/161

C:\code\remove>dir /b > list.txt
C:\code\remove>TYPE 1.txt >> ALL.TXT & ECHO. >> ALL.TXT    
C:\code\remove>TYPE 2.txt >> ALL.TXT & ECHO. >> ALL.TXT
C:\code\remove>TYPE 3.txt >> ALL.TXT & ECHO. >> ALL.TXT

ECHO. : 줄바꿈 실행

A > B : A 내용을 B 내용 대체

A >> B : B 내용 아래에 A 내용 추가

ex) 엑셀 수식 ="TYPE " & A2 & " >> ALL.TXT & ECHO. >> ALL.TXT"

배치파일
cd test2
type *.csv > ..\total.csv  -> 상대 경로
find /v /c *.csv ""
del *.xlsx
cd ..
cd raw
find /v /c *.csv ""
del *.xlsx
cd ..


cd test2
type *.csv > c:\total.csv -> 절대 경로 : 명령 프롬프트를 관리자 모드로 실행해야 함.
find /v /c *.csv ""
del *.xlsx
cd ..
cd raw
find /v /c *.csv ""
del *.xlsx
cd ..

 

 

- 개행 문자만 있는 줄 지우기

https://www.lesstif.com/system-admin/vim-carriage-return-blank-line-17105920.html

 

 

(Vim) 필요없는 공백제거하기

https://soooprmx.com/vim-%ED%95%84%EC%9A%94%EC%97%86%EB%8A%94-%EA%B3%B5%EB%B0%B1%EC%A0%9C%EA%B1%B0%ED%95%98%EA%B8%B0/

1)
:g/^$/d
Plain text
CODE
2)
g/^\s*$/d
Plain text
CODE

3) 모든 개행 문자 지우기
%s/\n//g

-------------------------------------------------------------

[빈줄 삭제] https://www.lhb.kr/mobile/article.html?no=2618 

 

# 빈줄 삭제    :g/^$/d

 
# 해당 문자열이 들어간 라인 삭제
설명 : 이 문자열이 들어간 라인은 모두 삭제
:% g/문자열/d
 
 
# 특정 문자열만 들어간 라인 삭제
설명 : 문자열 앞 뒤로 < 와 > 를 감싸주면 해당 단어만을 의미한다.
:% g/<문자열>/d
 
-------------------------------------------------------------
:%s/\v^\s+//g
\v 는 vim 정규식 대신 표준 정규식을 사용하게 하는 옵션
\s스페이스바나 탭 등 모든 공백 한글자를 나타냄
-------------------------------------------------------------

vi 에서 줄 끝에 있는 공백을 제거하는 방법입니다. 

:%s/\s\+$//


출처: https://shinymoments.tistory.com/entry/vi-줄끝에-공백제거-Remove-unwanted-spaces [Collect Moments not Things]
-------------------------------------------------------------

$ ls | xargs cat > total.txt :
ls의 결과를 xargs로 전달해서 cat t1 t2 t3 > total 과 같은 형식으로 파일 병합
[https://do-study.tistory.com/75]

find . -iname '*t*' -type f | xargs cat > new.txt : 
iname : 대소문자 구분없이 이름에 t가 들어간, f 파일 목록을 xargs로 넘기고
cat으로 합쳐서 new.txt에 저장하라.

텍스트 파일을 모두 연달아서 출력하고 output.txt 에 그 모든 텍스트를 하나로 합쳐서 저장하라.
find . -type f -name '*.txt' -exec cat {} + > output.txt

 

-------------------------------------------------------------

# 공백 2~7칸 혹은 탭키 간격 \s{2,7} | \t 

 

# 헤더 삭제    :%g/헤더/d

# 빈줄 삭제    :g/^$/d

# 라인 끝 공백 제거  %s/\s\+$//

 

'IT > Linux-Vim' 카테고리의 다른 글

[sed] 문자열 치환하기  (0) 2021.12.01
VI 에디터 사용법[표]  (0) 2021.12.01
리눅스 명령어 모음(유튜브)  (0) 2021.11.07
리눅스(우분투) 설치 및 간단 명령어  (0) 2021.11.07
Vim 사용법  (0) 2021.11.07
Comments