ホームにもどる      「パソコンについて」にもどる

Windows XP
  1. タスクバーで同じ種類のものをまとめて表示すると、そのまとめてあるものをクリックして、特定のものを表示させ、さらにその特定のものをクリックする必要がある。2回クリックが必要である。タククバー上で右クリックして、プロパティを表示させ、「同種のタスクバーボタンをグループ化する」 のチェックをはずすと、グループ化されずに表示される。また「アクティブでないインジケータを隠す」のチェックをはずすとインジケータが隠れることがなくなる。
  2. 一人でパソコンを使う時には、いちいちユーザー名やパスワードを入力するのは繁雑である。ファイル名を指定して実行にcontrol userpasswords2 と記入すると、「ユーザーがこのコンピューターを使うには、ユーザー名とパスワードの入力が必要」の画面が出てくる。このチェックをはずす。「自動ログオンするユーザーを次に指定してください」と聞いてくると、自分がWindows XPインストール時に使用者にした名前にする。デフォルトでAdiministratorが入っているがAdiministratorのままにすると、うまく起動しないことがある。これでユーザー名やパスワードを入力せずにパソコンが起動するようになる。
  3. アプリケーションを「シングルクリックで開く」「ダブルクリックで開く」の選択をする方法。エクスプローラを開く。ツール→フォルダオプション→クリック方法 でどちらかを選択し、OKを押す。
  4. Windows XP を再インストールすること自体はそう難しくないが、インストールした後に、それぞれの機器に適したドライバがないと、もとの状態にもどらない。インターネットにつながらなかったり、USBフラッシュメモリーが使えなかったりする。フォーマットする前にドライバがすべてそろっているかどうか確認することが大事である。
    Windows XP を再インストールするには、Windows XPがハードディスクから起動している状態で、CDドライブにWindows XPのCDを入れて、一度電源を切る。もう一度電源を入れると、たいていの機器はまずCDドライブから起動するように、バイオスが設定されているから、Press any key to boot from CD.. という画面が出るから、どれかのキーを押すとCDドライブから起動し、Windows XPのインストールが始まる。Press any key to boot from CD.が画面に出るのは短期間なので、キーを押すタイミングが遅れると、ハードディスクから起動してしまう。すはやくキーを押す必要がある。バイオスの設定がハードディスクから先に起動するようになっている場合は、CDドライブから先に起動するようにバイオスの設定をしなおす必要がある。電源を入れて、すぐにF2あるいはDelete(機器によって違う)を押すと、バイオス設定の画面が開く。Windows XPのインストールは画面の指示に従って実行していけばよいから、そう難しくない。フォーマットには、かなり時間がかかる。
  5. Windowsでは、テキストファイルをダブルクリックすると、メモ帳でそのファイルが開かれる。Winsows XP では、右クリックし「プログラムから開く」から開きたいソフトを選択することができる。しかしダブルクリックするだけで、自分の好みのソフトで開くようにするには、どうすればよいのだろうか。エクスプローラを開き、メニューバーから、ツール→フォルダオプションと進み、ファイルの種類タブをクリックする。登録されているファイルの種類の一覧が示されるから、テキストファイルなら拡張子がTXTのものを探し、選択する。下にある変更をクリックする。プログラム一覧が出てくるから、自分の好みのソフト(私の場合はサクラエディター)を選択し、OKをクリックする。
  6. Windowsキー + Rキーでファイル名を指定して実行が開く。
  7. LANでパソコンのネットワークをつくるには、コントロールパネル→ネットワークセットアップウィザード をダブルクリックすると、ネットワークセットアップウィザード が始まるから、指示に従ってクリックしていけばよい。この時、プリンターのスイッチを入れてから、設定するとプリンターをネットワーク上で使えるようになる。 ただしアンチウイルスソフトのために、ネットワーク上のコンピューターにアクセスできないことがある。アンチウイルスソフトをしばらく無効にする必要がある。
  8. セーフモードで起動するには、コンピューター起動直後にF8を押す。
  9. Winodows XPを以前の設定にもどすには、すべてのプログラム→アクセサリ→システムツール→システムの復元でシステムの復元画面を開く。これは最近に保存したドキュメント、電子メールなどを失うことなく、システムを以前のある時点の状態に戻すことができる。何かの操作をした後にシステムがおかしくなったり、何かのソフトをインストールした後にシステムがうまく動かなくなった時に使える便利な機能である。ただし復元できるのは、コンピューターが記憶している復元ポイントと言われる時点だけである。それで何かの操作をしてシステムが不安定になる可能性があることが前もってわかる時は、手動で復元ポイントをつくり、その操作をするとよい。
  10. アカウントの設定に不具合があり、コンピューターを起動した時に「開始するにはユーザー名をクリックしてください」の画面でユーザー名が何も表示されず、クリックしようにもクリックできないことがある。この時はCtrlキー+Altキー+Deleteキーを長く押すと、アカウント名とパスワードを入力する画面が出てくる。起動してから、きちっと起動するように、システムの変更が必要である。
  11. Windows Xp を起動した時に、同時に起動するスタートアップを変更するには、
    スタート→ファイル名を指定して実行 から msconfig と打ち込んでOKをクリックする。 スタートアップタブをクリックし、不要なスタートアップ項目のチェックをはずし、適用をクリックする。
  12. 画面の文字を大きくするには
    デスクトップ上で右クリック→プロパティを選択→設定タブをクリック→詳細設定をクリック→DPI設定で好みの大きさを選択
  13. デフォルトの設定では拡張子は表示されない。拡張子を表示するには
    ウインドウズキーとEキーを同時に押してエクスプローラ画面を開き、メニューバーのツール→フォルダオプションで表示タブをクリックして、「登録されている拡張子は表示しない」のチェックをはずして、適用をクリックする。
  14. CD-Rへの書き込み方

    CD-R を CD-R ドライブに挿入する。

    コピーしたいファイルを右クリックし、[送る] をポイントする。次に、[CD ドライブ] をクリックする。

    Windowsキーを押し、[マイ コンピュータ] をクリックする。次に、CD ドライブをダブルクリックする。

    [CD に書き込む準備ができたファイル] の項目にコピーするファイルが表示されていることを確認し、[これらのファイルを CD に書き込む] をクリックする。

    CD書き込みウィザードが開くのでその指示に従う。

    書き込みが終了するとCDトレイが自動的に開く。
  15. コマンド プロンプト
    コマンド プロンプトはデフォルトのままだと、コピーや貼りつけができず、不便である。タイトルバーの上で右クリックし、プロパティを選択することで、"コマンド プロンプト"のプロパティを開くことができる。"コマンド プロンプト"のプロパティで各種設定ができる。
    オプションタブをクリックし、簡易編集モードにチェックを入れると、コピー、貼りつけができるようになる。コマンド プロンプト上の文字をコピーするには、マウスでコピーしたいものを選択し、右クリックすると、クリップボードにコピーされる。これをテキストファイルに貼りつけるには、テキストエディタを開き、通常のようにCtrlキーとVキーを押すことで貼りつけることができる。
    テキストエディタ上の文字をコピーしてコマンド プロンプトに貼りつけるには、テキストエディタ上の文字を選択して、通常のようにCtrlキーとCキーを押し、クリップボードにコピーする。コマンド プロンプト画面で、Altキーとスペースキーを押すとメニューが表示されるので、次に、Eキーを押し、次にPキーを押すと、貼りつけることができる。メニューが表示された後はAltキーとスペースキーを押すのをやめてもメニューは表示されたままである。Altキーとスペースキーを押さずに、Eキー、Pキーを押すことができる。Altキーとスペースキーを同時に押すと、メニューが出てこないことがあり、Altキーを押してから、スペースキーを押すほうがよい。キーボードでの操作がわずらわしいならば、タイトルバー上でアイコンを左クリックして、マウスで選択することもできる。
    コマンド プロンプトへの貼り付けはマウスを用いると簡単にできる。右クリックするだけである。
    "コマンド プロンプト"のプロパティでフォントタブをクリックして、サイズを変更することで、文字の大きさを変えることができる。
    "コマンド プロンプト"のプロパティでレイアウトタブをクリックして、ウィンドウのサイズを変更することで、ウィンドウの大きさを変えることができる。
    "コマンド プロンプト"のプロパティで画面の色タブをクリックして、画面の背景を選択して、白を選び、画面の文字を選択して、黒を選ぶことで、背景が白、文字が黒に変更できる。
    "コマンド プロンプト"のプロパティを変更した後、OKをクリックすると、選択画面が出るから、「このウィンドウを起動したショートカットを変更する」を選択することで、いつも同じ設定で起動される。
  16. エクスプローラ画面で、AltキーとVキーを押すことでメニューバーの「表示」の項目の一覧を表示することができる。項目の一覧が出ればAltキーとVキーを離して、( ) の中にあるキーを押せばその操作ができる。例えばLキーを押すと一覧表示になる。同様にAltキーとVキーを押すことでメニューバーの編集項目の一覧を表示することができる。Altキーとメニューバーの( ) の中にあるキーを押せばその項目の一覧が出るのである。こういう機能は他のウインドウズアプリケーションも持っているものが多い。
  17. エクスプローラで上にアドレスを表示するのは、メニューバーの表示→ツールバー→アドレスバーと進んで、アドレスバーにチェックをいれればいいのだが、チェックをしても、画面の右にアドレス(D)と表示されるだけで、何のアドレスも表示されないことがある。メニューバーで表示→ツールバー→ツールバーを固定すると進んで、ツールバーを固定するのチェックをはずしてから、アドレスと書いてある所の左の縦線ににフォーカスを合わすと矢印の表示に変わるから、左クリックしたまま左にドラッグすると、アドレスを表示する画面が現れる。
  18. スタンバイの状態になるまでの時間の変更はコントロールパネルの電源オプションでする。
  19. 現在使っているパソコンのCPUやメモリを知るには、Ctrlキー + Eキーでエクスプローラを開き、マイコンピュータにマウスポインタを合わして右クリックしプロパティを選ぶとシステムのプロパティ画面が出る。全般タブをクリックすると右下に表示される。RAMと書いてあるのがメモリでRandom Access Memoryの略である。
  20. 環境変数の設定はコントロールパネル→システム設定 でシステムのプロパティを開き、詳細設定タブをクリックし、環境変数をクリックする。
  21. ルーターのIPアドレスを知るには、コントロールパネルのネットワーク接続のアイコンをダブルクリックすると、ローカルエリア接続のアイコンが出るからそれをダブルクリックする。次にサポートタブをクリックする。デフォルトゲートウエイの所のIPアドレスがルーターのアドレスである。
    あるいはコマンドプロンプトにipconfigと打ちこむとネットワークの接続情報が表示される。Ethernet adapter ローカル エリア接続のDefault Gatewayの所に表示されている数字がルーターのアドレスである。
  22. ドライバがきちんとインストールされているかどうかのチェックの仕方は、デバイスマネージャーでする。
    Windowsキーを押した状態でEキーを押して、マイ コンピュータウインドを出して、左のフォルダの所のマイ コンピュータアイコンの上にフォーカスを移して、右クリックする。出てくるポップアップメニューのプロパティを選択すると、システムのプロパティウインドが出る。ハードウェアタブをクリックして、デバイスマネージャをクリックする。デバイスの一覧が表示される。黄色い疑問符がついていないなら、ドライバはすべてインストールされている。
  23. 2台以上のパソコンをLANでつなぎ、共有フォルダをつくるには、コントロールパネルのネットワークセットアップウィザードをダブルクリックし、指示に従う。途中で、「ファイルとプリンタの共有を有効にする。ネットワーク上でのファイルとプリンタの共有を許可するよう、Windowsファイアウォールを構成します。」を選択する。
  24. 2台以上のパソコンをLANでつないで、共有フォルダをつくっても、アンチウイルスソフトのウイルスセキュリティZEROが起動していると
    「Mshomeにアクセスできません。このネットワークソースを使用するアクセス許可がない可能性があります。アクセス許可があるかどうかこのサーバに管理者に問い合わせてください。
    ネットワークパスが見つかりません。」
    という表示が出て相手先のフォルダが見えないことがある。ウイルスセキュリティZEROの機能を無効にすると、相手先のフォルダが見えるようになる。
  25. ハードディスクをフォーマットしてWindowsXP を入れ直すには、ハードディスクに入っているファイルのバックアップを取らなければならない。フォーマットすると、当然のことながら、ハードディスクにあるデータはすべて失われてしまう。ところがハードディスクにたくさんファイルが入っていると、いちいちCtrl+C Ctrl+Vで一つずつコピーをしていると、バックアップに大変な手間と時間がかかる。Ctrl+Aですべてのフォルダを選択し、不要なフォルダをCtrlキーを押して左クリックすることで、選択からはずし、Ctrl+C Ctrl+Vでコピー、貼り付けをする手があるが、データが大量なためか、うまくいかないことがある。データのバックアップの手間が面倒なためWindowsXPの再インストールをあきらめてしまう。だからバックアップを自動化する必要が生じてくる。以下バックアップの自動化の仕方を考える。
    まずPerlをインストールする。Perlは
    Perl  https://www.activestate.com/activeperl/downloads
    よりダウンロードできる。
    次に2台のパソコンをLANでつなぎ、共通ファイルをつくる。これはコントロールパネルのネットワークセットアップウィザードをダブルクリックし指示に従うことでできる。ただし、このウィザードを実行する時はアンチウイルスソフトを無効にして操作する。アンチウイルスソフトが働くと、うまくつくれないことがある。途中で「ファイルとプリンタの共有を有効にする」にチェックを入れる。アンチウイルスソフトを無効にしてつくっても、アンチウィルスソフトを有効にすると、ファイルの共有ができないことがある。その時はアンチウィルスソフトをしばらく無効にする。フォーマットする予定のパソコンをHope、データを保存するパソコンをHpとして話を進める。データを保存するパソコンをHp以外の名前にしている時は、以下のコードでHpになっている所をすべてその名前に書き換える必要がある。
    テキストエディタを開き、idomoto_folder.batと名付けて、C:\(Cドライブ直下)に下記コードを保存する。
    @echo off
    dir /ad /b /o:g C:\> C:\フォルダ.txt
    echo 終了しました。 
    
    これは、Cドライブのフォルダ名をすべて、フォルダ.txtに保存している。/aは指定された属性のファイルのみを表示するオプションで、dでディレクトリのみ表示になる。/bはファイル名のみの表示になる。オプションは大文字で書いても同じことである。
    次にコマンドプロンプトを開き、cd C:\ と入力してEnterキーを押すと、C:\>と表示される。その後ろにidomoto_folderと入力してEnterキーを押すと、上記のコードが実行される。フォルダ.txtを開くと、Cドライブのすべてのフォルダ名が記入されている。これには、WindowsやProgram Filesのシステムフォルダ名やJUSTのようなインストールしたソフトのフォルダ名も含まれる。このようなフォルダはもとより、バックアップする必要はなく、またWindowsフォルダをコピーすると不具合が出ることも考えられる。これらは削除し、自分がつくったフォルダ名だけを残すように、フォルダ.txtを修正する。Windows、Program Files、JUSTの3つのフォルダはたとえここで削除を忘れても、移動を指示するバッチファイルであるidomoto_file.batの中に入らないようにしているが、他のシステムフォルダはしていない。ここでシステムフォルダは必ず削除する。
    次にテキストエディタに下記をコピーし、C:\(Cドライブ直下)にidomoto_file.batと名付けて保存する。
    @echo off
    dir /a-d /b C:\> C:\ファイル.txt 
    
    これは、Cドライブのフォルダに入っていないファイル名をすべて、ファイル.txtに保存している。/a-d でディレクトリ以外(ファイルのみ)表示する。
    次にコマンドプロンプトを開き、cd C:\ と入力してEnterキーを押すと、C:\>と表示される。その後ろにidomoto_fileと入力してEnterキーを押すと、上記のコードが実行される。ファイル.txtを開くと、Cドライブのフォルダに入っていないすべてのファイル名が記入されている。
    次にテキストエディタに下記をコピーし、C:\(Cドライブ直下)にido_command_sakusei.batと名付けて保存する。
    @echo off
    perl shusei_folder.pl
    perl shusei_file.pl
    

    次にテキストエディタに下記をコピーし、shusei_folder.plと名付けてC:\(Cドライブ直下)に保存する。
    #!/usr/bin/perl
    use strict;
    use warnings;
    
    sub trim {
      my $val = shift;
      $val =~ s/^ *(.*?) *$/$1/;
      return $val;
    }
    
    my $bun;
    my @file2;
    my $line2;
    open(FILE,'C:\フォルダ.txt') or die "$!";
    my @file=<FILE>;
    close(FILE);
    push(@file2,"\@echo off\n");
    foreach my $line(@file){
      chomp($line);
      if($line=~/./){
        $line2=trim($line);
        if($line ne "JUST" and $line ne "WINDOWS" and $line ne "Program Files"){
          $bun="xcopy /D /I /S /Y C:\\".$line2." \\\\Hp\\shareddocs\\".$line2."\\ \n";
          push(@file2,$bun);
        }
      }
    }
    open(NEWFILE, '>C:\file_ido.bat') or die "$!";
    print NEWFILE @file2;
    close(NEWFILE); 
    

    次にテキストエディタに下記をコピーし、shusei_file.plと名付けてC:\(Cドライブ直下)に保存する。
    #!/usr/bin/perl
    use strict;
    use warnings;
    
    sub trim {
      my $val = shift;
      $val =~ s/^ *(.*?) *$/$1/;
      return $val;
    }
    
    my $bun;
    my @file2;
    my $line2;
    open(FILE,'C:\ファイル.txt') or die "$!";
    my @file=<FILE>;
    close(FILE);
    foreach my $line(@file){
      chomp($line);
      if($line=~/./){
        $line2=trim($line);
        $bun="echo F | xcopy /D /Y C:\\".$line2." \\\\Hp\\shareddocs\\".$line2."\n";
        push(@file2,$bun);
      }
    }
    push(@file2,"echo 終了しました。\n");
    open(NEWFILE, '>>C:\file_ido.bat') or die "$!";
    print NEWFILE @file2;
    close(NEWFILE); 
    

    今ハードディスクにCドライブ直下にShikenフォルダあり、その中に試験.txt があり、Cドライブ直下にtest.txtがあるとする。
    コマンドプロンプトを開き、cd C:\ と入力してEnterキーを押すと、C:\>と表示されるので、ido_command_sakuseiと入力し、Enterキーを押す。
    file_ido.bat というバッチファイルができる。それを右クリックし編集を選ぶと、
    xcopy /D /I /S /Y C:\Shiken \\Hp\shareddocs\Shiken\
    echo F | xcopy /D /Y C:\test.txt \\Hp\shareddocs\test.txt
    という記述が見られる。
    xcopy はコピーするコマンドで、/Dがあると、HopeとHpに同じファイルがある時、新しいファイルだけをコピーする。/Iがあると、コピー先にフォルダが存在しない場合、フォルダを作成する。/S があると、空の場合を除いて、フォルダとサブフォルダをコピーする。/Y があると、受け側の既存のファイルを上書きする前に確認のメッセージが表示されない。
    Shiken\ の\をつけないと、「受け側のファイル名ですか、またはディレクトリ名ですか」と聞いてきて、プログラムが中断してしまうことがある。
    echo F を書いてないとやはり、「受け側のファイル名ですか、またはディレクトリ名ですか」と聞いてきてプログラムが中断してしまう。
    コマンドプロンプトにcd C:\ と入力してEnterキーを押すと、C:\>と表示されるのでfile_ido と打ち込みEnterキーを押す。HopeのハードディスクのデータがHpのshareddocフォルダに自動でコピーされる。

    Windows XPをインストールした後、そのCドライブにバックアップしたファイルをもどすには、 まず、バックアップしたフォルダ.txt  ファイル.txtをHopeにコピーする。
    次にテキストエディタに下記をコピーし、back_command_sakusei.batと名付けてC:\(Cドライブ直下)に保存する。
    @echo off
    perl shusei_folder_back.pl
    perl shusei_file_back.pl
    echo 終了しました。 
    

    次にテキストエディタに下記をコピーし、shusei_folder_back.plと名付けてC:\(Cドライブ直下)に保存する。
    #!/usr/bin/perl
    use strict;
    use warnings;
    
    sub trim {
      my $val = shift;
      $val =~ s/^ *(.*?) *$/$1/;
      return $val;
    }
    
    my $bun;
    my @file2;
    my $line2;
    open(FILE,'C:\フォルダ.txt') or die "$!";
    my @file=<FILE>;
    close(FILE);
    push(@file2,"\@echo off\n");
    foreach my $line(@file){
      chomp($line);
      if($line=~/./){
        $line2=trim($line);
        if($line ne "JUST" and $line ne "WINDOWS" and $line ne "Program Files"){
          $bun="xcopy /D /I /S /Y \\\\Hp\\shareddocs\\".$line2." C:\\".$line2. "\\\n";
          push(@file2,$bun);
        }
      }
    }
    open(NEWFILE, '>C:\file_back.bat') or die "$!";
    print NEWFILE @file2;
    close(NEWFILE); 
    

    次に下記をコピーし、shusei_file_back.plと名付けてC:\(Cドライブ直下)に保存する。
    #!/usr/bin/perl
    use strict;
    use warnings;
    
    sub trim {
      my $val = shift;
      $val =~ s/^ *(.*?) *$/$1/;
      return $val;
    }
    
    my $bun;
    my @file2;
    my $line2;
    open(FILE,'C:\ファイル.txt') or die "$!";
    my @file=<FILE>;
    close(FILE);
    foreach my $line(@file){
      chomp($line);
      if($line=~/./){
        $line2=trim($line);
        $bun="echo F | xcopy /D /Y \\\\Hp\\shareddocs\\".$line2." C:\\".$line2."\n";     push(@file2,$bun);
      }
    }
    push(@file2,"echo 終了しました。\n");
    open(NEWFILE, '>>C:\file_back.bat') or die "$!";
    print NEWFILE @file2;
    close(NEWFILE); 
    

    コマンドプロンプトにcd C:\ と入力してEnterキーを押すと、C:\>と表示されるので、back_command_sakuseiと入力し、Enterキーを押す。
    上記の例だと、下記のように記述してあるfile_back.batができる。
    @echo off
    xcopy /D /I /S /Y \\HP\shareddocs\Shiken C:\Shiken\
    echo F | xcopy /D /Y \\HP\shareddocs\test.txt C:\test.txt
    echo 終了しました。
    
    コマンドプロンプトにcd C:\ と入力してEnterキーを押し、C:\>と表示させてから、file_backと入力して、Enterキーを押す。データの自動移動が始まる。大量のデータであっても、眠っている間や外出している間にパソコンが勝手に処理してくれる。
    つくるファイル名とファイルの内容をまとめると次のようになる。ファイル名は赤で表示してある。

    再インストール前につくるファイル
    idomoto_folder.bat
    @echo off
    dir /ad /b /o:g C:\> C:\フォルダ.txt
    echo 終了しました。 
    

    idomoto_file.bat
    @echo off
    dir /a-d /b C:\> C:\ファイル.txt 
    

    ido_command_sakusei.bat
    @echo off
    perl shusei_folder.pl
    perl shusei_file.pl 
    

    shusei_folder.pl
    #!/usr/bin/perl
    use strict;
    use warnings;
    
    sub trim {
      my $val = shift;
      $val =~ s/^ *(.*?) *$/$1/;
      return $val;
    }
    
    my $bun;
    my @file2;
    my $line2;
    open(FILE,'C:\フォルダ.txt') or die "$!";
    my @file=<FILE>;
    close(FILE);
    push(@file2,"\@echo off\n");
    foreach my $line(@file){
      chomp($line);
      if($line=~/./){
        $line2=trim($line);
        if($line ne "JUST" and $line ne "WINDOWS" and $line ne "Program Files"){
          $bun="xcopy /D /I /S /Y C:\\".$line2." \\\\Hp\\shareddocs\\".$line2."\\ \n";
          push(@file2,$bun);
        }
      }
    }
    open(NEWFILE, '>C:\file_ido.bat') or die "$!";
    print NEWFILE @file2;
    close(NEWFILE); 
    

    shusei_file.pl
    #!/usr/bin/perl
    use strict;
    use warnings;
    
    sub trim {
      my $val = shift;
      $val =~ s/^ *(.*?) *$/$1/;
      return $val;
    }
    
    my $bun;
    my @file2;
    my $line2;
    open(FILE,'C:\ファイル.txt') or die "$!";
    my @file=<FILE>;
    close(FILE);
    foreach my $line(@file){
      chomp($line);
      if($line=~/./){
        $line2=trim($line);
        $bun="echo F | xcopy /D /Y C:\\".$line2." \\\\Hp\\shareddocs\\".$line2."\n";
        push(@file2,$bun);
      }
    }
    push(@file2,"echo 終了しました。\n");
    open(NEWFILE, '>>C:\file_ido.bat') or die "$!";
    print NEWFILE @file2;
    close(NEWFILE); 
    


    再インストール後につくるファイル
    back_command_sakusei.bat
    @echo off
    perl shusei_folder_back.pl
    perl shusei_file_back.pl
    echo 終了しました。
    

    shusei_folder_back.pl
    #!/usr/bin/perl
    use strict;
    use warnings;
    
    sub trim {
      my $val = shift;
      $val =~ s/^ *(.*?) *$/$1/;
      return $val;
    }
    
    my $bun;
    my @file2;
    my $line2;
    open(FILE,'C:\フォルダ.txt') or die "$!";
    my @file=<FILE>;
    close(FILE);
    push(@file2,"\@echo off\n");
    foreach my $line(@file){
      chomp($line);
      if($line=~/./){
        $line2=trim($line);
        if($line ne "JUST" and $line ne "WINDOWS" and $line ne "Program Files"){
          $bun="xcopy /D /I /S /Y \\\\Hp\\shareddocs\\".$line2." C:\\".$line2. "\\\n";
          push(@file2,$bun);
        }
      }
    }
    open(NEWFILE, '>C:\file_back.bat') or die "$!";
    print NEWFILE @file2;
    close(NEWFILE); 
    

    shusei_file_back.pl
    #!/usr/bin/perl
    use strict;
    use warnings;
    
    sub trim {
      my $val = shift;
      $val =~ s/^ *(.*?) *$/$1/;
      return $val;
    }
    
    my $bun;
    my @file2;
    my $line2;
    open(FILE,'C:\ファイル.txt') or die "$!";
    my @file=<FILE>;
    close(FILE);
    foreach my $line(@file){
      chomp($line);
      if($line=~/./){
        $line2=trim($line);
        $bun="echo F | xcopy /D /Y \\\\Hp\\shareddocs\\".$line2." C:\\".$line2."\n";     push(@file2,$bun);
      }
    }
    push(@file2,"echo 終了しました。\n");
    open(NEWFILE, '>>C:\file_back.bat') or die "$!";
    print NEWFILE @file2;
    close(NEWFILE); 
    

    コマンドプロンプトに打ち込むもの
    再インストール前
    idomoto_folder
    idomoto_file
    ido_command_sakusei
    file_ido
    

    再インストール後
    @file=<FILE>;
    back_command_sakusei
    file_back
    

    もし何らかの理由で再インストール後フォルダ.txt、ファイル.txtがなくなった時は下記ファイルをつくる。
    idomoto_folder_hope.bat
    @file=<FILE>;
    dir /ad /b /o:g \\Hope\SharedDocs\> C:\フォルダ.txt
    echo 終了しました。 
    

    idomoto_file_hope.bat
    @echo off
    dir /a-d /b \\Hope\SharedDocs\> C:\ファイル.txt 
    echo 終了しました。
    

    コマンドプロンプトにcd C:\ と入力してEnterキーを押し、C:\>と表示させた後にidomoto_folder_hope と打ち込みEnterキーを押す。C:\フォルダ.txtがつくられる。
    コマンドプロンプトにcd C:\ と入力してEnterキーを押し、C:\>と表示させた後にidomoto_file_hope と打ち込みEnterキーを押す。C:\ファイル.txtがつくられる。
  26. 自分が定義したコマンドをコマンドプロンプトで実行させる方法
    コマンドプロンプトのショートカットを選択して、右クリックするとメニューが出るので、プロパティを選択する。ショートカットタブをクリックしてリンク先を見ると、
    %SystemRoot%\system32\cmd.exe
    と書かれている。この後ろに半角スペースをあけた後
    /k C:\henko.bat
    と記入する。つまり
    %SystemRoot%\system32\cmd.exe /k C:\henko.bat
    
    に変更する。/k オプションの後ろに書かれたコマンドはコマンドプロンプトを開けた時に自動的に実行される。この場合だとコマンドプロンプトのショートカットをダブルクリックした時に、コマンドプロンプトが開き、 C:\henko.batファイルに書かれたコマンドを自動的に実行する。
    C:\henko.bat に次のように記述する。
    @echo off
    cd c:\
    doskey /macrofile=C:\macros.txt
    
    C:\macros.txt に定義したコマンド名でコマンドを実行するようになる。例えばC:\macros.txt に
    word="C:\Program Files\Microsoft Office\Office\WINWORD.EXE" $*
    sakura="C:\Program Files\sakura\sakura.exe" $*
    firefox="C:\Program Files\Mozilla Firefox\firefox.exe" $* 
    

    と記述しておくと、コマンドプロンプトにword と記入してEnterキーを押すとワードが開き、sakura と記入してEnterキーを押すとさくらエディタが開き、firefox と記入してEnterキーを押すとFireFoxが開く。
    C:\macros.txt をさくらエディタで開きたければ、コマンドプロンプトにsakura macros.txt と記入してEnterキーを押せばよい。
  27. 共有フォルダにある大量のデータを別のフォルダにコピーする。
    少しのデータなら、Ctrlキーを押しながらAキーを押すことですべてのファイルを選択し、Ctrlキーを押しながらCキーを押すことでクリップボードに保存し、コピー先のフォルダを開いて、Ctrlキーを押しながらVキーを押すことで、そのフォルダにコピーすることができる。しかしハードディスクに入っていたデータをすべてバックアップしたような大量のデータにはこの方法でコピーするのは困難である。それでコードをつくって、コピーする。
    C:\Documents and Settings\All Users\Documents
    にあるすべてのデータを
    C:\Backup1
    にコピーするとする。
    まず、C:\Documents and Settings\All Users\Documentsにあるフォルダの一覧を書いたShareフォルダ.txt を、次のコードによりつくる。このコードをfolder_ichiran_sakusei.batと名づける。
    @echo off
    dir /ad /b C:\"Documents and Settings"\"All Users"\Documents\> C:\Shareフォルダ.txt
    echo 終了しました。 
    
    /aは指定された属性のファイルのみを表示するオプションで、dでディレクトリのみ表示になる。/bはファイル名のみの表示になる。オプションは大文字で書いても同じことである。
    icrosoftは重要なフォルダ名にDocuments and Settingsのように、スペースが入った名前をつける。スペースの入ったフォルダ名をそのままコードの中で使うと、エラーとなってしまう。Micorsoftはなぜスペースのないフォルダ名をつけなかったのかと思う。エラーを避けるためには、"Documents and Settings"のように、"で囲む必要がある。
    次に、C:\Documents and Settings\All Users\Documentsにあるフォルダの中にないファイルの一覧を書いたShareファイル.txtを、次のコードによりつくる。このコードをfile_ichiran_sakusei.batと名づける。
    @echo off
    dir /a-d /b C:\"Documents and Settings"\"All Users"\Documents\> C:\Shareファイル.txt
    echo 終了しました。 
    
    /a-d でフォルダ以外(ファイルのみ)を表示する。
    次に、フォルダをコピーするコードをPerlでつくる。folder_copy_sakusei.plと名づける。
    #!/usr/bin/perl
    use strict;
    use warnings;
    
    sub trim {
      my $val = shift;
      $val =~ s/^ *(.*?) *$/$1/;
      return $val;
    }
    
    my $bun;
    my @file2;
    my $line2;
    open(FILE,'C:\Shareフォルダ.txt') or die "$!";
    @file=<FILE>;
    close(FILE);
    push(@file2,"\@echo off\n");
    foreach my $line(@file){
      chomp($line);
      if($line=~/./){
        $line2=trim($line);
        if($line ne "JUST" and $line ne "WINDOWS" and $line ne "Program Files"){
          $bun="xcopy /D /I /S /Y C:\\\"Documents and Settings\"\\\"All Users\"\\Documents\\".$line2." C:\\Backup1\\".$line2."\\ \n";
          push(@file2,$bun);
        }
      }
    }
    open(NEWFILE, '>C:\folder_copy.bat') or die "$!";
    print NEWFILE @file2;
    close(NEWFILE); 
    
    次に、フォルダの中にないファイルをコピーするコードをPerlでつくる。file_copy_sakusei.plと名づける。
    #!/usr/bin/perl
    use strict;
    use warnings;
    
    sub trim {
      my $val = shift;
      $val =~ s/^ *(.*?) *$/$1/;
      return $val;
    }
    
    my $bun;
    my @file2;
    my $line2;
    open(FILE,'C:\Shareファイル.txt') or die "$!";
    @file=<FILE>;
    close(FILE);
    foreach my $line(@file){
      chomp($line);
      if($line=~/./){
        $line2=trim($line);
        $bun="echo F | xcopy /D /Y C:\\\"Documents and Settings\"\\\"All Users\"\\Documents\\".$line2." C:\\Backup1\\".$line2."\n";
        push(@file2,$bun);
      }
    }
    push(@file2,"echo 終了しfile_ichiran_sakusei.batました。\n");
    open(NEWFILE, '>C:\file_copy.bat') or die "$!";
    print NEWFILE @file2;
    close(NEWFILE); 
    
    次に下記のコードをfoldrfile_copy_sakusei.batと名づける。
    @echo off
    folder_ichiran_sakusei
    file_ichiran_sakusei.bat
    perl folder_copy_sakusei.pl
    perl file_copy_sakusei.pl
    
    端末に、
    foldrfile_copy_sakusei
    と打ち込み、Enterキーを押すことで、
    folder_copy.bat
    file_copy.bat
    の二つのバッチファイルができる。
    今、C:\Documents and Settings\All Users\DocumentsにShikenというフォルダがあり、shiken_file.txtというファイルがあるとする。
    folder_ido.batには、
    xcopy /D /I /S /Y C:\"Documents and Settings"\"All Users"\Documents\Shiken C:\Backup1\Shiken\
    と書かれている。
    xcopy はコピーするコマンドで、/Dがあると、すでに同じ名前のファイルがある時、新しいファイルだけをコピーする。/Iがあると、コピー先にフォルダが存在しない場合、フォルダを作成する。/S があると、空の場合を除いて、フォルダとサブフォルダをコピーする。/Y があると、受け側の既存のファイルを上書きする時の確認のメッセージが表示されない。
    Shiken\ の\をつけないと、「受け側のファイル名ですか、またはディレクトリ名ですか」と聞いてきて、プログラムが中断してしまうことがある。
    file_ido.batには、
    echo F | xcopy /D /Y C:\"Documents and Settings"\"All Users"\Documents\shiken_file.txt C:\Backup1\shiken_file.txt
    と書かれている。
    echo F を書いてないと「受け側のファイル名ですか、またはディレクトリ名ですか」と聞いてきてプログラムが中断してしまう。
    端末にfolder_copyと打ち込み、Enterキーを押すことで、C:\Documents and Settings\All Users\DocumentsにあるすべてのフォルダはBackup1フォルダにコピーされる。
    端末にfile_copyと打ち込み、Enterキーを押すことで、C:\Documents and Settings\All Users\Documentsにあるフォルダ内にないすべてのファイルはBackup1フォルダにコピーされる。

ホームにもどる      「パソコンについて」にもどる