내가 만든 웹 사이트를 다운로드했으며 은 각 파일을 열지 않고도 도메인 이름을 찾고 새 이름으로 바꾸고 싶습니다. 많은 많은 .php 파일에서 문자열 바꾸기
나는 에디트 플러스이 작업을 수행 할 수 없거나 Windows 또는 에디트 플러스에서이 작업을 수행하는 방법을 알고있는 편집기가 거기에 사용?
들으
내가 만든 웹 사이트를 다운로드했으며 은 각 파일을 열지 않고도 도메인 이름을 찾고 새 이름으로 바꾸고 싶습니다. 많은 많은 .php 파일에서 문자열 바꾸기
나는 에디트 플러스이 작업을 수행 할 수 없거나 Windows 또는 에디트 플러스에서이 작업을 수행하는 방법을 알고있는 편집기가 거기에 사용?
들으
나는 Notepad++을 건의 할 것입니다. 하나의 파일, 열려있는 모든 파일 또는 디렉토리의 모든 파일을 검색하고 바꿉니다.
드문 경우지만 Dreamweaver와 같은 평가판을 사용할 수 있습니다.
즉, 나는 Notepad++이 가능하다고 말했습니다.
나는 EditPlus에 "다음 파일로 계속 진행"버튼이 있다고 생각했습니다.
그래서 열기 모든 파일 보도 CTRL + F 찾기 : 대체 OLDDOMAIN :
버튼 "다음 파일로 계속"버튼 "모두 바꾸기"를 NEWDOMAIN.
또한이
당신은 PowerShell에서이 작업을 수행 할 수 있습니다 할 이클립스 또는 Aptana를 사용할 수 있습니다.
$textToRemove = New-Object System.Text.RegularExpressions.Regex "SOMEREGEX", SingleLine
Get-Item "*.php" | ForEach-Object {
$backupfile = [System.IO.File]::Copy($_.FullName,"NEWPATH")
$text = [System.IO.File]::ReadAllText($_.FullName)
$text = $textToRemove.Replace($text, "REPLACEWITHTHIS")
$newFile = [System.IO.File]::OpenWrite($_.FullName)
$newFile.Write($text);
$newFile.Close()
}
위 코드는 테스트되지 않은 코드입니다. Powershell은 이와 같은 작업을 자동화하는 친구입니다.
쉘을 사용하려면 perl -i -pe '/ word/replace/g'*. phpl – rjh
물론, 그가 perl을 설치했다면. 창 상자에 있다고 했어. 그리고, 쉘을 사용하려고한다면,'find '를 사용하여 좀 더 휴대용 방식으로 sed에서 이것을 할 수 있습니다. -type f -name * .php -print | xargs sed -i.BAK/word/replace/g'' 그리고 dir 구조체로 반복됩니다. –
find/xargs는 Cygwin이 설치되어 있지 않으면 휴대 할 수 없습니다. PowerShell로 설치할 가능성이 높기 때문에 Perl에 대해 언급했습니다. – rjh
글쎄, 적어도 도메인을 반복해서 하드 코딩하지 않는 법을 배웠습니다. – Kobi
@ Kobi가 암시 하듯이 도메인 이름을 변수로 바꾸는 것이 좋습니다. –
일반적으로 나는 변수를 사용 하겠지만 다른 도메인에서 "정확한"복사본을 만들 것이라고는 생각하지 못했습니다 – daniel