今日はポンコツ、そんな日もありますよね。たいがーです。
小さなミスを連発しました。きっと原因は花粉のせいだと思っています。
花粉症は生活習慣が原因だという説もあるそうですが、実際はどうなんでしょうか。
そんな今日の振り返りです。
今日も今日とて、前回までの続き、ハンズオン準備の自動化を進めていきます。
https://www.wantedly.com/companies/serverworks/post_articles/163117
前回までで、特定のファイルを
- boxにアップロード
- パスワードを設定
- bitlyで短縮URL取得
まで自動化できたので、今回は仕上げとして、特定のフォルダのすべてのファイルに対し、これらの処理が自動で行われるよう実装していきます。
Gitでresetしすぎました。
間違えて同じフォルダを二回プッシュしてしまってエラーが出たので、それを訂正しようとresetすると戻しすぎました・・・
resetしなかったことにするコマンドを打ちます。これです。
git reset --soft HEAD{}
そうです、同じresetです。が、続くものが違います。
とりあえず
git reflog
を打って、過去のコミットの履歴を探し、戻りたい場所を見つけます。
reflogで出力されたものには、HEAD@{1}というように番号が付いています。その中から、戻りたい場所に該当する番号を入力します。これで、戻したいところまで戻すことができました。
今度は間違って動かしました。
今日は小さな間違いがてんこ盛りです。
今まで開発してきたものが謎のディレクトリの中に入っていたので、プロジェクト直下に動かそうとなりました。
そこで最近Linuxを触るようになっていた私は調べもせず、とあるコマンドでファイルを移動させます。それがこちら。
mv
私は今、どのようにファイルを管理していたでしょう。Gitです。
mvコマンドはGitには反映されません。なので、Git上でそこにあるはずのファイルがない。しかし、パソコン上ではプロジェクト直下になっていました。
今回も、また少しずつ修復してきます。
もう一度git resetコマンドを使いました。動かす前のところまで戻します。
戻せたら、今度はきちんと調べたコマンドを使っていきます。そう、
git mv
です。途中間違えて、rmコマンドを打ってしまい、一つのデータを誤って消してしまいましたが、なんとかなりました。
すべてはそう、花粉のせいです。
Windowsだけ、異なる表記。
とにかくファイルをアップロードすることだけを考えていましたが、フォルダの中身をboxの指定の場所にいれるところがゴールです。
そのためには、Pythonでフォルダ内の内容を一度にとってくる必要があります。
glob.glob
関数を使うと、ディレクトリ内に入っているファイルの一覧を取得できるようなので、こちらを使っていきます。
Linuxでは/となりますが、Windows上では\\となるそうです。
import glob
glob.glob("photos\\*")
今回はzipファイルのみを宣言するので、二行目を少し変更します。
glop.glop("photos\\*.zip*)
こうすることで、ファイル形式を限定した、ファイルの一覧を習得することができました。
for文でこの関数の値を回し、すべて短縮されたURLで表示することができました・・・
これで、ようやく、機能的には完成しました~!!わ~い!!思っていたよりも早くできて嬉しい!!
ほかの人からも見やすく変形してきます。
今まではとにかく書いて書いて!という状態だったので、これからほかの人が見てもわかりやすいコードに書き換えていきます。
今より難しくなるようなので、へこたれないように頑張ります!笑
確認が甘めなので、注意しつつ、小さなミスから減らしていきたいです。