소프트웨어 배치파일 또는 오토핫키 질문 드립니다.
2021.09.24 17:50
안녕하세요
추석 연휴들은 잘 보내셨는지요...
오랜만에 또 하나 문의 드리려 합니다.
오토핫키나 배치파일 둘 다 상관은 없는데 가급적 빠르게 처리되면 좋겠습니다.
질문
파일 사이즈가 좀 있는 txt파일이 있습니다.
해당 텍스트 파일에서 특정 라인에 .png라던가 .gif, .jpg가 동일하게 있을 경우 해당 라인을 삭제하고 싶습니다.
현재는 오토핫키로 백그라운드 작업이 아닌 메모장으로 파일을 열어 loop로 문자열 찾아서 해당 라인 블럭씌우고 del 하는 방법으로 하고 있습니다.
그러다보니 시간이 어마어마하게 걸리고 있네요 ㅠㅠ
파일 크기가 크다보니 기다리는 시간도 의미없고해서 질문드리게 되었습니다.
생각 같아선 배치파일도 가능할것 같고 오토핫키는 더더욱 가능할것 같은데 백그라운드로 작업이 가능한지 답변 주시면 감사하겠습니다.
아래 현재 사용중인 허접한 오토핫키 소스 같이 등록합니다. ㅠㅠ
불금인데 다들 저녁 맛있게 드시고 한주 고생 많으셨습니다.
감사합니다.
소스
send, ^{f}
sleep, 100
send, .jpg
sleep, 100
send, {enter}
sleep, 100
send, {home}{shift down}{end}{shift up}
sleep, 100
send, {del}
sleep, 100
loop
{
send, {f3}
sleep, 100
send, {home}
sleep, 100
send, {home}{shift down}{end}{shift up}
sleep, 100
send, {del}
sleep, 100
IfWinExist, 메모장
break
}
댓글 [5]
-
지후빠 2021.09.24 18:09
-
지후빠 2021.09.24 18:32
emeditor 에서 찾기/바꾸기에서 정규식으로 다음처럼 찾으셔도 됩니다.
^.*?((\.png)|(\.jpg)|(\.gif)).*?$
-
지후빠 2021.09.24 23:05
오토핫키는 다음처럼 .png .gif .jpg 3개 중에 하나라도 있는 줄은 제외됩니다.
같은 폴더에 InputFile.txt 를 넣어두면 결과로 OutputFile.txt 파일이 생성됩니다.
SetWorkingDir %A_ScriptDir%
Loop, Read, InputFile.txt, OutputFile.txt
If InStr(A_LoopReadLine, ".png") Or InStr(A_LoopReadLine, ".gif") Or InStr(A_LoopReadLine, ".jpg")
Continue
Else
FileAppend %A_LoopReadLine%`n
Return
-
천공의아키라 2021.09.25 14:54
항상 상세한 답변 감사드립니다 ㅠㅠ
생각도 못해본 소스인데...
감사드립니다 한번 해보겠습니다
-
슈머슈마 2021.09.25 19:57
감사합니다.
.png 줄만 제거; findstr /v "\.png" 원본.txt > 출력.txt
응용해서 .png .gif .jpg 포함된 줄을 제거하시려면 다음처럼 할 수 있을 것 같습니다.
findstr /v "\.png" 원본.txt | findstr /v "\.gif" | findstr /v "\.jpg" >출력.txt