開発環境
- OS X Lion - Apple(OS)
- BBEdit - Bare Bones Software, Inc., Emacs(Text Editor)
- プログラミング言語: Perl
『初めてのPerl 第6版』(Randal L. Schwartz, Tom Phoenix, brian d foy 共著、近藤 嘉雪 訳、オライリー・ジャパン、2012年、ISBN978-4-87311-567-2)の13章(ディレクトリ操作)の13.13(練習問題)5を解いてみる。
その他参考書籍
5.
コード(BBEdit)
sample.pl
#!/usr/bin/env perl use strict; use warnings; use 5.016; use utf8; binmode STDOUT, ':utf8'; binmode STDIN, ':utf8'; use File::Basename; use File::Spec; my($src, $dest) = @ARGV; $dest = File::Spec->catfile($dest, basename $src) if -d $dest; rename $src => $dest or die "can't rename $src to $dest: $!";
入出力結果(Terminal)
$ ls tmp* tmp.txt tmp_folder: sample.pl sample_folder some_folder $ ./sample.pl tmp.txt tmp1.txt $ ls tmp* tmp1.txt tmp_folder: sample.pl sample_folder some_folder $ ./sample.pl tmp1.txt tmp_folder $ ls tmp* sample.pl sample_folder some_folder tmp1.txt $ ./sample.pl ./tmp_folder/tmp1.txt . $ ls tmp* tmp1.txt tmp_folder: sample.pl sample_folder some_folder $
ちなみにpython3.3の場合。
コード(BBEdit)
sample.py
#!/usr/bin/env python3.3 ## Copyright (C) 2013 by kamimura #-*- coding: utf-8 -*- import os, sys src = sys.argv[1] dest = sys.argv[2] if os.path.isdir(dest): dest = os.path.abspath(dest) + os.path.sep + os.path.basename(src) os.rename(src, dest)
入出力結果(Terminal)
$ ls tmp* tmp.txt tmp_folder: sample.pl sample_folder some_folder $ ./sample.py tmp.txt tmp1.txt $ ls tmp* tmp1.txt tmp_folder: sample.pl sample_folder some_folder $ ./sample.py tmp1.txt tmp_folder $ ls tmp* sample.pl sample_folder some_folder tmp1.txt $ ./sample.py tmp_folder/tmp1.txt . $ ls tmp* tmp1.txt tmp_folder: sample.pl sample_folder some_folder $
0 コメント:
コメントを投稿