CnUnix

[알림판목록 I] [알림판목록 II] [글목록][이 전][다 음]
[ CnUnix ] in KIDS
글 쓴 이(By): terzeron (microkid)
날 짜 (Date): 2002년 8월 27일 화요일 오전 11시 27분 46초
제 목(Title): Re: [q] 파일 확장자 바꾸는 스크립트?


#!/usr/bin/perl
# Usage: rename perlexpr [files]

# If no perlexpr argument exists, exit.
($op = shift) || die "Usage: rename perlexpr [files]\n";
# If filenames is not presented, get input from STDIN.
if (!@ARGV) {
  @ARGV = <STDIN>;
  chop(@ARGV);
}

# for each argument, rename it.
for (@ARGV) {
  $was = $_;  # $was is old name.
  eval $op;  # evaluate perl expression
  die $@ if $@;  # If there isn't another file, exit.
  rename($was, $_) unless $was eq $_;  # rename oldname to newname
}

Programming Perl 1st ed.에 나와있던 예제로 기억하고 있습니다.

예를 들면, 
rename 's/\.mp3/\.avi/' *.mp3

모든 mp3파일을 avi확장자를 가진 파일로 바꿔줍니다. 물론 확장자뿐만 
아니라 파일명의 일부를 치환할 수 있는 범용의 스크립트입니다.


---
어떤 성취가, 어떤 조롱이, 또는 어떤 고뇌가 나를 기다리고 있을지 나는 모른다. 
나는 아무 것도 모른다. 그러나 나는 아직 과거의 경이로운 기적의 시대가 영원히 
과거의 것이 되어 버리지는 않았다는 사실을 굳게 믿고 있다.  - Stanislaw Lem -
[알림판목록 I] [알림판목록 II] [글 목록][이 전][다 음]
키 즈 는 열 린 사 람 들 의 모 임 입 니 다.