情報

ウィンドウズコマンドプロンプトを使って業務効率改善してみた

どうもmasaです。

いやー仕事がない日はほんとにテンションが上がりますね。
まあそうはいっても家で引きこもって漫画や小説を読んでるだけなのですがw

私事なんですが最近プログラミングにはまっていまして、Javascriptとかをかじっているのですが、そんな中、基本中の基本であるウィンドウズのコマンドプロンプトが結構有用であることに今更気づきまして、パソコン上のファイル整理やリネームが完全に自動化でき、業務効率が改善しました。そこで今日は私の少ない知識を紹介していきたいと思います。

もう知ってるわっていう人は全然とばしちゃってください。でもコマンドプロンプトって何っていう方はもしかしたらこの記事を読むことで仕事がはかどるかもしれません。

それではどうぞ!

ウィンドウズコマンドプロンプトを使って業務効率改善してみた

コマンドプロンプトとは

まずコマンドプロンプトって何ってことなんですが、これはウインドウズにもともと入っているアプリでプログラムを打ち込むことでパソコンに作業をさせるものなんです。

例えば、ファイル名をaからbに変更したければ、

ren a bというプログラムをコマンドプロンプトで打ち込めば、勝手にファイル名を変換してくれるというものです。

これだけだと手動でやったほうが早いじゃないかということになるんですが、ここで登場するのがバッチファイルです。

バッチファイルとは

バッチファイルとは、プログラムを書いたテキストファイルのことです。これだけだとなんのこっちゃって感じなんですが、先ほど説明したコマンドプロンプトのプログラムを複数集めた手順書のようなものです。

じゃあ具体的に何ができるのかということなんですが、バッチファイルを使えば、複数のプログラムをダブルクリックだけで実行することができます。

バッチファイル自体はテキストファイルなのでメモ帳で作ることができます。メモ帳を開き、
ren a b
ren c d

と打ち込んでおき、これをプログラムを実行したいフォルダに保存します。そして、ファイルの拡張子をtxtからbatに変換すれば、バッチファイルの出来上がりです。このできたファイルをダブルクリックすると、同一フォルダ内に入っているaというファイルとcというファイルがbファイルとdファイルに名前が変換されるのです。

なので大量のファイルを扱いたいときはバッチファイルは本当に便利なのです。

実際よく使うコマンド

実際に作業でよく使う基本コマンドを紹介します。

ren

これはさっきから何回か出てきますがrename (リネーム) の略すなわち名前を変換するプログラムです。

ren a bと打てばaという名前のファイルがbという名前に変換されます。

move

次はmoveコマンドです。これはファイルをフォルダ間で移動するときに使うコマンドです。

move a b と打てばaというファイルをbという場所に移動させることができます。このときbは移動させたいフォルダのパスにしておく必要があります。これは絶対パスでも相対パスでも大丈夫です。パスという単語がわからない方はググってください。

ちなみにもし移動先のフォルダにaという名前のファイルがあると上書きされてしまうので、上書きしてもよいですかという確認をさせたい場合はmoveをmove/-Yとしてください。

copy

これはファイルをコピーするコマンドで、copy a bと打てばaというファイルをbという場所にコピーすることができます。やはりこの場合もbはフォルダパスを指定します。

xcopy

これはcopyと同じようなコマンドなのですが、こちらを使うとフォルダごと移動するということが可能になります。

xcopy /s a b\aと打てばaというフォルダをbという場所にコピーできます。この時、aはファイルですか?ディレクトリですか?と聞かれますが、ディレクトリとしておけばよいです。ディレクトリはフォルダとほぼ同義と思ってもらって大丈夫です。

とりあえず上に挙げた4っつのコマンドを覚えているとファイルの移動、ファイルの名前変更が自動で大量にできるようになります。

これまでのコマンドプロンプトを使って実際できること

ここまでに書いたコマンドを使ってできることを紹介したいと思います。

まずフォルダ内のファイルの一括リネームです。

手順としてはまず、フォルダに入っているファイルの名前を取得しないといけないので、

そのためにdir /b > filename.txtというコマンドを書いたバッチファイルを作り、フォルダに保存し、実行します。これはフォルダ内のファイル情報を書いたfilename.txtを作製するというコマンドです。

このバッチファイルをダブルクリックするとfilename.txtというファイルができるのでこれを開きます。そうするとファイル名が記述されているのでこれをコピーして、エクセルのB列に貼り付けます。そしてA列にはrenと書き、C列にはそれぞれ変換したい名前を書きます。

そして書いたA,B,C列をすべて選択し、コピーし、メモ帳に貼り付け、保存します。そして拡張子をbatに変換すれば、ファイル名を変換するためのbatファイルの完成です。あとはこれを変換したいファイルと同じフォルダにいれ、ダブルクリックすれば名前が変換されます。

次はファイルのフォルダ間の移動です。

これは先ほどと同様にエクセルを使って

move a b
move c d
move e f

などと記述したテキストファイルを作り、batファイルに変換すればオーケーです。

以上の二つを使えば、フォルダ内に入っているファイルをリネームし、自分の送りたいフォルダに送ることが一瞬でできるようになります。

さらに踏み込みます。実はこのmoveというコマンドだけでは共有フォルダに送ることができません。例えば会社などですべての社員が共有できるフォルダなどがあると思うのですが、そこに目的のファイルを送ろうとしてもエラーとなってしまいます。

しかし、これを克服するマジックコマンドがあるんですねw

それがnet useコマンドです。

これを使うと共有フォルダを自分のパソコンのドライブに存在するかのようにできます。詳しくはネットワークドライブの割り当てでググってほしいのですが、とにかくこれを使えばmoveでファイルを共有フォルダに移動させることができます。

具体的には下のように打てばaというファイルをbというフォルダに移動できます。

net use Z: b password/user:username
move a Z:\b
net use Z: /delete

と打てばいいです。

ちなみに上のコマンドについて解説すると、まず一行目で共有フォルダにあるbというフォルダを仮想のZ:ドライブとして、自分のパソコンに割り当てます。簡単に言うとbという共有フォルダを自分のパソコン上のフォルダと同じように扱えるようにしたということです。

次に二行目はmoveコマンドでの移動です。この時間違えてほしくないのは移動するフォルダパスはZ:ドライブにあるフォルダということです。

そして三行目は割り当てた共有フォルダを切断するコマンドです。これをしておかないとずっと割り当てたままになってしまいます。何が問題かといいますと、ローカルに持ってきてしまっているのでウィルスとかの標的になるかもしれないということです。会社内の重要な情報にウィルスが侵入したらめちゃくちゃやばいので、必ず切断して元の状態に戻しましょう。

これで共有フォルダにもファイルを移動することができるようになりました。

まとめ

いかがでしたでしょうか?

コマンドプロンプトはウィンドウズに元から入っているし、バッチファイルもメモ帳で作れるのでめちゃくちゃ便利です。

コマンドプロンプトをうまく使えば、手作業でやっているものをほとんど自動化することができ、作業効率があがる可能性大です。

ぜひこの機会にコマンドプロンプトを勉強してみてはいかがでしょうか?

(あとちなみにここに書いたことを実行して、何か問題が起きても責任は取れませんので、自己責任で実行することをお願いします。)

それじゃーばいびー!

 

 

ABOUT ME
masa
こんにちは、masaです。 阪大薬学部出身です。できる限り皆さんのお役に立つ、面白い記事を書いていこうと思っています。よろしくお願いします。 詳しいプロフィールはこちら