{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "### 5-7-3 ファイルの操作" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "File.rename 'data/src', 'data/dest'" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " ドライブ C のボリューム ラベルは Windows です\n", " ボリューム シリアル番号は 30D7-D31C です\n", "\n", " C:\\Users\\chezo\\Documents\\source\\kawasakirb\\meetups\\pruby\\data のディレクトリ\n", "\n", "2017/12/20 19:50 .\n", "2017/12/20 19:50 ..\n", "2017/11/22 20:20 1 counter\n", "2017/12/20 19:49 dest\n", "2017/10/25 20:07 68 fname.txt\n", "2017/10/25 19:56 5 fname2.txt\n", "2017/10/25 20:10 16 utf16.txt\n", " 4 個のファイル 90 バイト\n", " 3 個のディレクトリ 129,307,635,712 バイトの空き領域\n", "\n" ] } ], "source": [ "puts `dir data`.force_encoding(\"CP932\").encode(\"UTF-8\")" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0" ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ "File.rename 'data/dest', 'data/dest2'" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "data": { "text/plain": [ ":ls_la" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def ls_la(str)\n", " puts `dir #{str}`.force_encoding(\"CP932\").encode(\"UTF-8\")\n", "end" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " ドライブ C のボリューム ラベルは Windows です\n", " ボリューム シリアル番号は 30D7-D31C です\n", "\n", " C:\\Users\\chezo\\Documents\\source\\kawasakirb\\meetups\\pruby\\data のディレクトリ\n", "\n", "2017/12/20 19:56 .\n", "2017/12/20 19:56 ..\n", "2017/11/22 20:20 1 counter\n", "2017/12/20 19:49 dest2\n", "2017/10/25 20:07 68 fname.txt\n", "2017/10/25 19:56 5 fname2.txt\n", "2017/10/25 20:10 16 utf16.txt\n", " 4 個のファイル 90 バイト\n", " 3 個のディレクトリ 129,308,065,792 バイトの空き領域\n", "\n" ] } ], "source": [ "ls_la('data')" ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [ { "ename": "Errno::EACCES", "evalue": "Permission denied @ rb_file_s_symlink - (data/dest2, data/dest_orig)", "output_type": "error", "traceback": [ "\u001b[31mErrno::EACCES\u001b[0m: Permission denied @ rb_file_s_symlink - (data/dest2, data/dest_orig)", "\u001b[37m
:in `symlink'\u001b[0m", "\u001b[37m
:in `
'\u001b[0m", "\u001b[37mC:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/iruby-0.3/lib/iruby/backend.rb:44:in `eval'\u001b[0m", "\u001b[37mC:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/iruby-0.3/lib/iruby/backend.rb:44:in `eval'\u001b[0m", "\u001b[37mC:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/iruby-0.3/lib/iruby/backend.rb:12:in `eval'\u001b[0m", "\u001b[37mC:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/iruby-0.3/lib/iruby/kernel.rb:87:in `execute_request'\u001b[0m", "\u001b[37mC:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/iruby-0.3/lib/iruby/kernel.rb:47:in `dispatch'\u001b[0m", "\u001b[37mC:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/iruby-0.3/lib/iruby/kernel.rb:37:in `run'\u001b[0m", "\u001b[37mC:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/iruby-0.3/lib/iruby/command.rb:70:in `run_kernel'\u001b[0m", "\u001b[37mC:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/iruby-0.3/lib/iruby/command.rb:34:in `run'\u001b[0m", "\u001b[37mC:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/iruby-0.3/bin/iruby:5:in `'\u001b[0m", "\u001b[37mC:/Ruby24-x64/bin/iruby:22:in `load'\u001b[0m", "\u001b[37mC:/Ruby24-x64/bin/iruby:22:in `
'\u001b[0m" ] } ], "source": [ "File.symlink 'data/dest2', 'data/dest_orig'" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "次回、「属性や状態の取得」から" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Ruby 2.4.1", "language": "ruby", "name": "ruby" }, "language_info": { "file_extension": ".rb", "mimetype": "application/x-ruby", "name": "ruby", "version": "2.4.1" } }, "nbformat": 4, "nbformat_minor": 2 }