배치 스크립트에서 파일의 텍스트 바꾸기

MD Aminul Islam 2023년9월13일
  1. 배치 스크립트를 사용하여 파일에서 텍스트 교체하기
  2. Windows PowerShell을 사용하여 파일에서 텍스트 교체하기
  3. 결론
배치 스크립트에서 파일의 텍스트 바꾸기

이 글에서는 파일 내의 텍스트를 교체하는 몇 가지 방법을 소개합니다. 두 가지 다른 방법을 살펴보겠습니다.

첫 번째 방법은 작업을 수행하기 위해 배치 스크립트만을 사용하고 두 번째 방법은 Windows PowerShell을 이용한 해결책을 제공합니다.

외부 인터넷 액세스 및 소프트웨어 설치가 제한된 Windows 서버에서 작업하는 시나리오를 가정해 봅시다.

특정 데이터가 포함된 모든 TXT 파일의 발생을 모두 제거하는 작업이 할당되었다고 가정해 보세요. 큰 파일에 수동으로 이 작업을 수행한다고 상상해 보면 번거롭고 비효율적입니다.

우리의 방법이 등장하는 곳은 바로 이때입니다. Windows 기계에서 사용 가능한 도구만을 사용하여 목표를 달성할 수 있도록 도와줍니다 - CMD와 PowerShell입니다.

아래의 내용을 포함하는 텍스트 파일이 있다고 가정해 봅시다.

Test.txt:

This is text that is saved in a text file. This is an update. ,,,,,,,,,,,,

우리는 이 명령들을 빈 문자로 교체할 것입니다.

배치 스크립트를 사용하여 파일에서 텍스트 교체하기

배치 스크립트:

@echo off
FOR /f "tokens=*" %%s IN (Test.txt) DO (
  SET Texts=%%s
)
set Texts=%Texts:,=%

FOR /F "tokens=* delims=" %%x IN (Test.txt) DO SET text=%%x
ECHO %Texts% > "G:\BATCH\Test.txt" :: the path location of the txt file

먼저 FOR /f "tokens=*" %%s IN (Test.txt) DO (라는 줄을 사용하여 파일을 읽은 다음 SET Texts=%%s를 통해 파일의 텍스트로 문자열 변수를 초기화합니다. 쉼표를 빈 문자로 대체하기 위해 set Texts=%Texts:,=%라인을 통해 각 쉼표를 대체합니다.

마지막으로, 텍스트를 다시 파일에 넣습니다. 위의 코드를 실행하면 아래와 같이 파일 내용이 변경되는 것을 볼 수 있습니다.

This is text that is saved in a text file. This is an update.

Windows PowerShell을 사용하여 파일에서 텍스트 교체하기

이 방법은 이전 방법과 동일한 결과를 제공합니다. 이 방법에서는 배치 스크립트에서 PowerShell을 사용했습니다. 이 방법의 예제 코드는 다음과 같습니다.

powershell -Command "(gc Test.txt) -replace ',', '' | Out-File -encoding ASCII Test.txt"

코드를 실행하면 아래와 같이 파일 내용이 변경되는 것을 볼 수 있습니다.

This is text that is saved in a text file. This is an update.

이 방법에서는 PowerShell의 -replace 연산자를 활용하여 텍스트를 교체합니다. 이 명령은 파일(Test.txt)의 내용을 읽고 쉼표를 빈 문자로 대체한 후 업데이트된 내용을 Test.txt에 저장합니다.

결론

배치 스크립트와 Windows PowerShell을 활용하여 효율적으로 텍스트 교체 작업을 자동화할 수 있습니다.

이러한 방법은 파일 크기나 제한된 액세스 때문에 수동 편집이 비현실적인 시나리오에 유용한 도구로 사용됩니다.

큰 파일을 처리하거나 제한된 환경에서 작업을 수행하는 경우, 이러한 기술은 간소화된 해결책을 제공합니다.

배치 스크립트와 PowerShell의 힘을 통해 텍스트 교체 작업을 처리할 때 생산성과 효율성을 향상시킬 수 있습니다.

MD Aminul Islam avatar MD Aminul Islam avatar

Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.

LinkedIn

관련 문장 - Batch Script