Linux에서 파일의 특정 줄을 삭제하는 방법
Linux에서는 sed 명령을 사용하여 지정된 파일의 특정 줄을 삭제할 수 있습니다. "sed 'M,Nd' 파일 이름" 문을 실행하면 M부터 N까지 연속된 줄의 내용을 삭제할 수 있습니다. "sed 'N1d를 실행합니다. ;N2d; N3d;$d' 파일 이름" 문은 연속되지 않은 줄 N1, N2, N3의 내용을 삭제할 수 있습니다. 특정 문자가 포함된 줄을 삭제하려면 "sed '/특정 문자/d' 파일 이름" 문을 실행하세요. " sed '/ ^특정 문자/d' 파일 이름" 문은 특정 문자로 시작하는 줄을 삭제할 수 있습니다.
이 튜토리얼의 운영 환경: linux7.3 시스템, Dell G3 컴퓨터.
Linux에서는 sed 명령을 사용하여 지정된 파일의 특정 줄을 삭제할 수 있습니다.
sed는 Stream Editor의 약자로 Linux에서 기본적인 텍스트 변환에 사용되며 파일 작업에 중요한 명령이므로 텍스트를 삭제할 수도 있습니다.
다음은 대부분의 사용 시나리오를 다루는 sed 명령의 몇 가지 사용 예입니다. sed 명령을 얕은 것부터 깊은 것까지 학습하여 특정 파일 줄을 쉽고 효율적으로 삭제할 수 있습니다.
먼저 데모 파일 sed-demo.txt를 준비하고 파일 내용을 살펴봅니다
cat sed-demo.txt
그런 다음 sed 명령을 사용하여 실험할 수 있습니다.
1. 특정 줄 삭제
먼저 첫 번째 줄과 마지막 줄을 삭제하는 등 실제로는 N 번째 줄을 삭제하는 것부터 시작합니다.
N번째 줄을 삭제하는 명령 형식:
sed 'Nd' file
첫 번째 줄을 삭제해 보겠습니다.
sed '1d' sed-demo.txt
아주 간단하죠? 여기서는 별다른 설명이 없을 것입니다. 어느 줄의 내용을 삭제하려면 명령에서 1만 바꾸면 됩니다.
그렇다면 마지막 줄을 나타내는 데 사용된 숫자는 무엇입니까? 여기에 작은 팁이 있습니다. 달러 기호 $를 사용하여 끝을 나타낼 수 있으므로 마지막 줄을 삭제하는 명령은 다음과 같이 작성할 수 있습니다:
sed '$d' sed-demo.txt
2 특정 줄 삭제
.sed 명령은 연속 또는 불연속 행 내용을 삭제할 수 있습니다.
연속 행 삭제(예: 5~7행 삭제):
sed '5,7d' sed-demo.txt
1번째, 5번째, 9번째 및 마지막 행 삭제와 같은 비연속 행 삭제:
sed '1d;5d;9d;$d' sed-demo.txt
또한 3~6행을 제외한 다른 행 삭제와 같은 논리적 NOT!과 함께 사용할 수도 있습니다.
sed '3,6!d' sed-demo.txt
3. 빈 행 삭제
sed는 파일에서 빈 행 삭제도 지원합니다. 명령은 다음과 같습니다. :
sed '/^$/d' sed-demo.txt
팁: 여기서 두 개의 슬래시 안에 있는 표현식은 텍스트 일치의 역할을 합니다. 정규 표현식의 사용법을 참고할 수 있습니다. 다음은 모든 사람의 학습을 심화하기 위해 일반적으로 사용되는 몇 가지 방법입니다.
4. 특정 문자가 포함된 줄 삭제
샘플 파일에서 System이라는 단어가 포함된 줄을 삭제하고 싶다면 /System/을 사용할 수 있습니다. 즉, System이라는 문자열이 나타나면 Match를 진행합니다. 구체적인 명령은 다음과 같습니다:
sed '/System/d' sed-demo.txt
뿐만 아니라 논리적 조건을 추가할 수도 있습니다. 예를 들어 다음 명령은 다음과 같습니다.
sed '/System\|Linux/d' sed-demo.txt
기호 |
는 논리적 OR을 나타내며, 위 명령의 의미는 다음과 같습니다. 시스템 또는 Linux가 포함된 줄은 삭제해야 합니다.
5. 특정 문자로 시작하는 줄 삭제
먼저 더 나은 설명을 위해 또 다른 샘플 파일 sed-demo-1.txt를 만듭니다. 내용은 다음과 같습니다.
cat sed-demo-1.txt
이미 위에서 언급했습니다. 앞서 언급한 $ 기호는 끝으로 이해될 수 있는데, 시작을 나타낼 수 있는 문자가 있나요? 대답은 '예'입니다. 여기서는 ^ 기호를 사용하여 시작을 나타낼 수 있습니다.
따라서 특정 문자로 시작하는 줄을 삭제하려면, 예를 들어 R로 시작하는 줄을 삭제하려면 다음 명령을 사용할 수 있습니다.
sed '/^R/d' sed-demo-1.txt
那么问题来了,比如我想删除以 R 或者 F 开头的行,那我是不是要执行两次命令呢?如果是有更多岂不是要执行多次命令?这里它有一个简单的写法,你只要把这些字符写在一对中括号 [] 里就可以了:
sed '/^[RF]/d' sed-demo-1.txt
上面命令的作用是 删除以 R 或者 F 开头的行。
6. 删除特定字符结尾的行
同上面一个道理,删除以某一个字符结尾的行,比方说删除以 m 结尾的行,我们可以这样做:
sed '/m$/d' sed-demo.txt
删除以 x 或 m 结尾的行可以这样写:
sed '/[xm]$/d' sed-demo.txt
7. 删除以大写字母开头的行
这里问题又来了,我想要删除所有以大写字母开头的行呢?按照上面的做法是不是要将 A 到 Z 这 26 个字母都写进 [ ] 里呢?其实我们大可不必这样做,在 A 和 Z 中间加个 - 就可以了:
sed '/^[A-Z]/d' sed-demo-1.txt
机智的你看到这里肯定会想到其他类似的用法的了,不妨看看下面是否有你想到的命令吧。
8. 删除包含字母字符的行
sed '/[A-Za-z]/d' sed-demo-1.txt
9. 删除包含数字的行
sed '/[0-9]/d' sed-demo-1.txt
另外,通过这个例子,我们可以加上 ^ 和 $ 更好地看到他们之间的区别:
sed '/^[0-9]/d' sed-demo-1.txt
sed '/[0-9]$/d' sed-demo-1.txt
相关推荐:《Linux视频教程》
위 내용은 Linux에서 파일의 특정 줄을 삭제하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











도커 프로세스보기 방법 : 1. Docker CLI 명령 : Docker PS; 2. Systemd Cli 명령 : SystemCTL 상태 Docker; 3. Docker Compose CLI 명령 : Docker-Compose PS; 4. 프로세스 탐색기 (Windows); 5. /Proc Directory (Linux).

대 코드 시스템 요구 사항 : 운영 체제 : Windows 10 이상, MacOS 10.12 이상, Linux 배포 프로세서 : 최소 1.6GHz, 권장 2.0GHz 이상의 메모리 : 최소 512MB, 권장 4GB 이상의 저장 공간 : 최소 250MB, 권장 1GB 및 기타 요구 사항 : 안정 네트워크 연결, Xorg/Wayland (LINUX)

VS 코드 확장을 설치하는 이유는 다음과 같습니다. 네트워크 불안정성, 불충분 한 권한, 시스템 호환성 문제, C 코드 버전은 너무 오래된, 바이러스 백신 소프트웨어 또는 방화벽 간섭입니다. 네트워크 연결, 권한, 로그 파일, 업데이트 대 코드 업데이트, 보안 소프트웨어 비활성화 및 대 코드 또는 컴퓨터를 다시 시작하면 점차 문제를 해결하고 해결할 수 있습니다.

VS 코드는 Mac에서 사용할 수 있습니다. 강력한 확장, GIT 통합, 터미널 및 디버거가 있으며 풍부한 설정 옵션도 제공합니다. 그러나 특히 대규모 프로젝트 또는 고도로 전문적인 개발의 경우 VS 코드는 성능 또는 기능 제한을 가질 수 있습니다.

VS Code는 Full Name Visual Studio Code로, Microsoft가 개발 한 무료 및 오픈 소스 크로스 플랫폼 코드 편집기 및 개발 환경입니다. 광범위한 프로그래밍 언어를 지원하고 구문 강조 표시, 코드 자동 완료, 코드 스 니펫 및 스마트 프롬프트를 제공하여 개발 효율성을 향상시킵니다. 풍부한 확장 생태계를 통해 사용자는 디버거, 코드 서식 도구 및 GIT 통합과 같은 특정 요구 및 언어에 확장을 추가 할 수 있습니다. VS 코드에는 코드에서 버그를 신속하게 찾아서 해결하는 데 도움이되는 직관적 인 디버거도 포함되어 있습니다.

메모장은 Java 코드를 직접 실행할 수는 없지만 다른 도구를 사용하여 명령 줄 컴파일러 (Javac)를 사용하여 Bytecode 파일 (filename.class)을 생성하면 달성 할 수 있습니다. Java Interpreter (Java)를 사용하여 바이트 코드를 해석하고 코드를 실행하고 결과를 출력하십시오.

Linux의 주요 용도에는 다음이 포함됩니다. 1. 서버 운영 체제, 2. 임베디드 시스템, 3. 데스크탑 운영 체제, 4. 개발 및 테스트 환경. Linux는이 분야에서 뛰어나 안정성, 보안 및 효율적인 개발 도구를 제공합니다.

vs 코드 1 단계/다음 단계 바로 가기 키 사용 : 1 단계 (뒤로) : Windows/Linux : Ctrl ←; MACOS : CMD ← 다음 단계 (앞으로) : Windows/Linux : Ctrl →; MACOS : CMD →
