파일 이름의 일부분 바꾸기


1

나는 "[무언가] 무언가"형식의 모든 PDF 파일을 가지고 있습니다.

첫 번째 부분과 마지막 부분을 "무언가 [something]"를 얻기 위해 어떻게 바꿀 수 있습니까?

예를 들어 (전후) :

[P. Morandi] Field and Galois Theory
Field and Galois Theory [P. Morandi]

[D. S. Bridges] Foundations of Real and Abstract Analysis
Foundations of Real and Abstract Analysis [D. S. Bridges] 

[J. G. Ratcliffe] Foundations of Hyperbolic Manifolds
Foundations of Hyperbolic Manifolds [J. G. Ratcliffe]

[R. E. Edwards] Fourier Series - A Modern Introduction Volume 1
Fourier Series - A Modern Introduction Volume 1 [R. E. Edwards]

[B. Bollobás] Graph Theory - An Introductory Course
Graph Theory - An Introductory Course [B. Bollobás]

운영 체제 용 태그를 추가하십시오.
dirkt

@dirkt 알림을 보내 주셔서 감사합니다.
Irregular User

점에 유의하시기 바랍니다 superuser.com 무료 스크립트 / 코드 작성 서비스가 아닙니다. 지금까지 시도한 내용 (이미 사용하고있는 스크립트 / 코드 포함)과 문제가있는 곳을 알려 주시면 특정 문제를 해결할 수 있습니다. 너는 또한 읽어야한다. 좋은 질문을하는 방법은 무엇입니까? .
DavidPostill

@DavidPostill 필자는 프로그래머가 아니기 때문에 수동으로 파일 이름을 잘라내어 원하는 방식으로 붙여 넣을 수는 없다. 이와 같은 작업은 자동화하기에 충분히 단순해야만하는 것처럼 보이지만 그러한 코드를 스스로 만들 수는 없습니다.
Irregular User

1
만찬은 즐겁게 쓰여졌 고 대답은 :)
DavidPostill

답변:


2

첫 번째 부분과 마지막 부분을 어떻게 전환 할 수 있습니까?

예를 들어 (전후) :

[P. Morandi] Field and Galois Theory.pdf
Field and Galois Theory [P. Morandi].pdf

다음 배치 파일 (test.cmd)을 사용하십시오.

@echo off 
setlocal enabledelayedexpansion
for /f "usebackq delims=] tokens=1,2" %%a in (`dir /b *.pdf`) do (
  rem %%b is end part of name and will become 1st part
  rem remove extension
  set _first=%%~nb
  rem remove leading space
  set _first=!_first:~1!
  ren "%%a]%%b" "!_first! %%a].pdf"
  )
endlocal  

노트:

  • 귀하의 질문에 처음 두 예제 파일 이름으로 테스트.

사용 예 :

> dir *.pdf
 Volume in drive F is Expansion
 Volume Serial Number is 3656-BB63

 Directory of F:\test

02/10/2016  19:43                 0 [D. S. Bridges] Foundations of Real and Abstract Analysis.pdf
02/10/2016  19:42                 0 [P. Morandi] Field and Galois Theory.pdf
               2 File(s)              0 bytes
               0 Dir(s)  1,733,769,015,296 bytes free

> test

> dir *.pdf
 Volume in drive F is Expansion
 Volume Serial Number is 3656-BB63

 Directory of F:\test

02/10/2016  19:42                 0 Field and Galois Theory [P. Morandi].pdf
02/10/2016  19:43                 0 Foundations of Real and Abstract Analysis [D. S. Bridges].pdf
               2 File(s)              0 bytes
               0 Dir(s)  1,733,769,015,296 bytes free

더 읽을 거리

  • Windows CMD 명령 줄의 A-Z 색인 - Windows cmd line과 관련된 모든 것에 대한 훌륭한 참고서.
  • 지시 - 파일 및 하위 폴더 목록을 표시합니다.
  • / f 용 - 다른 명령의 결과에 대한 명령을 반복하십시오.
  • 매개 변수들 - 명령 행 인수 (또는 매개 변수)는 일} 처리 스크립트로 전달되는 모든 값입니다.
  • - 파일 이름을 바꿉니다.
  • 변수 - 변수의 일부를 추출합니다 (하위 문자열).

멋진, 고마워! 그것은 완벽하게 작동합니다 (š와 같은 영어 이외의 문자를 사용하는 저자를 제외하고는 드문 경우이며 수동으로 수행 할 수 있음). 추가 읽기 섹션은이 답변에 대한 거대한 보너스입니다 & lt; 생선을 가르치는 것에 대한 일부 말을 삽입하십시오 & gt;.
Irregular User

@IrregularUser 올바른 코드 페이지를 사용하여 이상한 문자를 고칠 수 있습니다 (많은 경험이 없습니다). 만나다 chcp - 활성 콘솔 코드 페이지를 변경하십시오. 기본 코드 페이지는 Windows 로켈에 의해 결정됩니다.
DavidPostill
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.