Comment remplacer une chaîne de caractères dans un fichier en PowerShell ?
파워쉘

PowerShell에서 파일의 문자열을 어떻게 바꾸나요?

By Hervé , on 25 6월 2024 , updated on 25 6월 2024 - 1 minute to read
Partager cet article :

PowerShell에서 파일의 문자열을 바꿔야 했던 적이 있나요? 단 몇 줄의 코드만으로 이 작업을 간단하고 효율적으로 수행할 수 있다는 것을 알고 계셨습니까? 이 문서에서는 PowerShell에서 이 필수 작업을 구현하는 방법을 살펴보고 스크립트에서 텍스트를 조작하는 것이 얼마나 쉬운지 보여 드리겠습니다. IT 생산성을 향상시킬 수 있는 새로운 도구를 발견할 준비를 하십시오!

Get-Content 명령을 사용하는 방법

파일의 문자열 바꾸기 파워셸 특히 구성이나 스크립트를 변경할 때 일반적인 작업입니다. 이 작업은 다음을 사용하여 효율적으로 수행할 수 있습니다. 주문하다


콘텐츠 가져오기

. 수행 방법은 다음과 같습니다.

시작하려면 다음을 사용하세요.


콘텐츠 가져오기

파일의 내용을 읽으려면. 그런 다음 내용을 파이프로 연결하십시오.


ForEach-객체

각 라인을 개별적으로 처리하기 위해. 명령


-바꾸다

그런 다음 각 줄의 특정 문자열을 바꿀 수 있습니다. 마지막으로 다음을 사용하여 편집된 내용을 원본 파일이나 새 파일에 저장합니다.


세트컨텐츠

.

다음 PowerShell 스크립트는 이 접근 방식을 보여줍니다.



$filePath = "경로/to/your/file.txt"
$oldString = "string_to_replace"
$newString = "새_문자열"

콘텐츠 가져오기 $filePath | ForEach-객체 {
    $_ - $oldString, $newString 교체
} | 콘텐츠 설정 $filePath


자세한 단계는 다음과 같습니다.

  • 변수 설정 : 파일 경로, 교체할 문자열, 새 문자열을 지정합니다.
  • 파일 내용 읽기 : 사용 콘텐츠 가져오기

    파일을 메모리에 로드합니다.

  • 채널 교체 : 각 줄을 따라 이동합니다. ForEach-객체

    그리고 사용

    -바꾸다

    교체를 하려고 합니다.

  • 편집한 내용 저장 : 사용 세트컨텐츠

    파일에 변경 사항을 기록합니다.

이 방법을 사용하면 파일에서 바꿀 문자열이 모두 수정됩니다. 그녀는 또한 효과적인 대용량 파일을 처리합니다.

1단계: 파일 내용 읽기

하나 교체 문자열 PowerShell을 사용하여 파일을 작성하는 것은 모든 시스템 관리자에게 공통적이고 필수적인 작업입니다. 명령어를 사용해 보자 콘텐츠 가져오기 이를 효과적으로 달성하기 위해.

시작하려면 파일의 내용을 읽어야 합니다. 명령 콘텐츠 가져오기 파일의 내용을 변수에 로드할 수 있습니다.



$filePath = "C:파일 경로.txt"
$fileContent = 콘텐츠 가져오기 -경로 $filePath


파일 내용이 로드되면 원하는 문자열을 바꿀 수 있습니다. 방법을 사용하십시오 -바꾸다 이 작업을 수행하려면



$searchString = "이전_문자열"
$replaceString = "새_문자열"
$fileContent = $fileContent - $searchString, $replaceString 교체


교체한 후에는 변경 사항을 파일에 저장하는 것이 중요합니다. 명령 세트컨텐츠 새 내용으로 파일을 다시 작성할 수 있습니다.



$fileContent | 콘텐츠 설정 경로 $filePath


다음은 단일 코드 블록의 전체 예입니다.



$filePath = "C:파일 경로.txt"
$fileContent = 콘텐츠 가져오기 -경로 $filePath
$searchString = "이전_문자열"
$replaceString = "새_문자열"
$fileContent = $fileContent - $searchString, $replaceString 교체
$fileContent | 콘텐츠 설정 경로 $filePath


PowerShell을 사용하면 필요에 따라 여러 파일에서 문자열 교체를 자동화하여 관리 프로세스를 더욱 효율적이고 빠르게 만들 수 있습니다.

2단계: 문자열 교체

교체하려면 문자열 파일에 파워셸, 간단하지만 효과적인 일련의 명령을 사용할 수 있습니다. 가장 일반적인 방법 중 하나는 명령을 사용하는 것입니다.


콘텐츠 가져오기

파일의 내용을 읽은 다음 편집하고 다시 저장하십시오.

이 예에서는 PowerShell을 사용하여 파일을 읽고, 특정 문자열을 바꾼 다음, 변경 사항을 동일한 파일에 저장하는 방법을 보여줍니다.

파일의 내용을 변수로 읽는 것부터 시작합니다. 명령을 사용하십시오


콘텐츠 가져오기

이것을하기 위해 :


$content = Get-Content -Path "경로/to/your/file.txt"

이는 모든 파일 내용을 변수에 저장합니다.


$content

.

교체하려면 특정 문자열 다른 사람은 다음 방법을 사용하십시오.


바꾸다

:


$contentModify = $content - "이전 채널", "새 채널" 교체

이제 변수


$content수정

수정된 텍스트를 포함하며, “이전 문자열”이 나올 때마다 “새 문자열”로 대체됩니다.

마지막으로 편집된 내용을 파일에 저장합니다. 명령을 사용하십시오


세트컨텐츠

:


$content수정 | 콘텐츠 설정 -경로 "path/to/your/file.txt"

이 프로세스는 원본 파일을 수정된 콘텐츠로 덮어씁니다.

다음 단계를 수행하면 PowerShell을 사용하여 파일의 문자열을 쉽게 바꿀 수 있습니다. 이 방법은 파일 관리 작업을 자동화해야 하는 시스템 관리자와 개발자에게 매우 유용합니다.

💻 Get-Content 명령을 사용하여 파일 내용 읽기
🔄 문자열을 바꾸려면 바꾸기 메서드를 사용하세요.
💾 Set-Content 명령을 사용하여 파일에 변경 사항을 씁니다.
파워셸 명령 설명
콘텐츠 가져오기 file.txt | ForEach-Object { $_ -replace “old_string”, “new_string” } | 콘텐츠 설정 file.txt 텍스트 파일에서 이전 문자열의 모든 항목을 새 문자열로 바꿉니다.

Select-String 명령을 사용하는 방법

SelectString 명령을 사용하여 편집 중인 파일을 표시하는 노트북 화면

교체하려면 문자열 사용하는 파일에서 파워셸, 명령


선택 문자열

특히 유용합니다. 파일에서 특정 문자열을 검색하고 해당 문자열을 다른 문자열로 바꿀 수 있습니다.

수행 방법은 다음과 같습니다.

먼저 터미널을 엽니다. 파워셸 문제의 파일을 수정하는 데 필요한 권한이 있는지 확인하세요. 그런 다음 다음 명령을 사용하십시오.

  • $filePath = "경로/to/your/file.txt"
  • $oldString = "string_to_replace"
  • $newString = "새_문자열"

이 세 가지 변수는 각각 파일 경로, 대체할 문자열 및 새 문자열을 정의합니다.

그런 다음 사용 콘텐츠 가져오기 파일의 내용을 읽으려면 다음을 수행하십시오.

  • $fileContent = 콘텐츠 가져오기 $filePath

이전 문자열을 새 문자열로 교체하려면 다음을 사용하십시오. ForEach-객체 이와 같이 :

  • $updatedContent = $fileContent | ForEach-Object { $_ - $oldString 교체, $newString }

마지막으로, 할 시간이다 이 변경사항을 작성하세요 파일에서 :

  • $updatedContent | 콘텐츠 설정 $filePath

이러한 몇 가지 명령 덕분에 다음 명령을 사용하여 PowerShell에서 파일의 문자열을 성공적으로 바꿨습니다. 선택 문자열.

파일이 큰 경우 다음을 사용하십시오. 콘텐츠 가져오기 그리고 세트컨텐츠 시간이 좀 걸릴 수 있습니다. 매우 큰 파일의 경우 사용하는 것이 더 효율적일 수 있습니다. 스트림 또는 기타 최적화 기술.

1단계: 바꿀 문자열 찾기

을 위한 문자열을 교체하다 PowerShell 파일에서는 여러 가지 방법을 사용할 수 있습니다. 가장 일반적인 기술 중 하나는 명령을 사용하는 것입니다. 선택 문자열. 이 방법은 효과적이고 구현하기 쉽습니다.

첫 번째 단계는 교체하려는 문자열을 찾는 것입니다. 명령을 사용하십시오 선택 문자열 이 검색을 수행합니다. 다음은 예제 스크립트입니다.



$path = "C:파일 경로.txt"
$oldString = "string_to_replace"

$matches = 선택 문자열 -Path $path -Pattern $pattern


꼭 교체하세요


C:파일 경로.txt

수정할 파일의 경로로


chain_to_replace

바꾸려는 문자열로

검색이 실행되면 파일 내용을 읽고, 해당 문자열을 바꾸고, 변경 사항을 파일에 써야 합니다.



$content = 콘텐츠 경로 가져오기
$newString = "새_문자열"

$newContent = $content - $pattern, $newString 교체
$new콘텐츠 | 콘텐츠 설정 경로 $path


이 스크립트에서는


new_channel

사용하려는 새 문자열로. 파일의 내용이 로드되고 문자열이 대체되며 변경 사항이 파일에 다시 기록됩니다.

요약하면 이 방법은 다음 명령을 사용합니다. 선택 문자열 파일에서 특정 문자열을 검색합니다. 그런 다음 이 문자열을 바꾸고 변경 사항을 저장합니다.

2단계: 찾은 문자열 바꾸기

파일에서 특정 문자열을 검색하려면 파워셸, 다음 명령을 사용할 수 있습니다


선택 문자열

. 이 명령을 사용하면 문자열 발생을 찾아 후속 처리에 사용할 수 있습니다.

를 이용하여 문자열을 식별한 후


선택 문자열

, 다음 명령으로 바꿀 수 있습니다.



$path = "pathtofile.txt"
$oldString = "string_to_find"
$newString = "새_문자열"

(Get-Content -Path $path) -replace $oldString, $newString | 콘텐츠 설정 경로 $path


따라야 할 단계는 다음과 같습니다.

  • 지정 변수가 있는 파일의 $path

    .

  • 정의 검색할 문자열 ~와 함께 $oldString

    .

  • 정의 새 채널 ~와 함께 $newString

    .

  • 사용 콘텐츠 가져오기

    파일의 내용을 읽으려면.

  • 적용하다 -바꾸다

    이전 문자열을 새 문자열로 교체합니다.

  • 사용 세트컨텐츠

    파일에 대한 변경 사항을 저장합니다.

이 방법은 파일에서 지정된 문자열의 모든 항목을 대체하여 데이터가 효율적으로 업데이트되도록 합니다.

Avatar

Hervé

Comments

Leave a comment

Your comment will be revised by the site if needed.