テクめも

プログラミング関連のちょっとしたTipsなどを書いています。

anyenv v1 のインストール/アップグレード

CLI

anyenv は pyenvやrbenvなどをまとめて管理できるツールです。 インストール $ git clone https://github.com/anyenv/anyenv ~/.anyenv $ echo 'export PATH="$HOME/.anyenv/bin:$PATH"' >> ~/.your_profile $ echo 'eval "$(anyenv init -)"' >> ~/.your_pr…

Google Search Consoleにはてなブログのサイトマップを登録する

Google Search Consoleにアクセスして、左のメニューの「サイトマップ」からsitemap.xmlを入力するだけです。 参考 【はてなブログ】サイトマップの作り方と登録方法!サーチコンソール後に! - tkd放浪記

KerasでLSTMが使えないときの対処法

KerasでLSTMを使おうとしたとき以下のようなエラーが発生しました。 TypeError: while_loop() got an unexpected keyword argument 'maximum_iterations' 調べてみると、バージョンがよくなかったみたいで、kerasのバージョンを変更するとうまく動きました。…

RedisにSSLで接続する

AWSのElasticCacheでRedisを使っていて、暗号化をONしたらPythonから接続できなかったときのメモです。 import redis redis_conn = redis.from_url('redis://<Redisのホスト名>:6379') redis_conn.ping() とすると、 Error while reading from socket: (104, 'Connection rese</redisのホスト名>…

SSHポートフォワーディングを使ってサーバ上のJupyterにローカルからアクセスする

サーバにあるJupyterを使いたいとき、ポートを開けたり、ファイアウォールの設定をしたりしないといけない場合がありますが、SSHポートフォワーディングを使うと手軽にアクセスすることができます。 ローカル端末からSSH ssh -L 8888:127.0.0.1:8888 <サーバ…

AWSのElasticCacheでRedisを使う

Redisクラスターの作成 コンソールかCLIで作成します。 # CLIの場合 $ aws elasticache create-cache-cluster \ --cache-cluster-id my-cluster \ --engine redis その他のオプションについては、こちらを参照ください。 作成したRedisのエンドポイントの情…

Noneを含むリストをNumPyに変換するときに注意すること

PythonでリストをNumPyに変換するとき、Noneが含まれる場合は型について少し注意が必要です。 型を指定しない 変換するときに、dtypeを指定しない場合はobjectになってしまいます。 >>> np.array([1, 2, None]) array([1, 2, None], dtype=object) intを指定…

macにnmapをインストールする

普通にインストールするとエラーが発生しました。 $ brew install nmap ... Error: The `brew link` step did not complete successfully The formula built, but is not symlinked into /usr/local Could not symlink share/man/de/man1/nmap.1 /usr/local/…

Elastic Beanstalkで生成されるS3バケットを削除する方法

AWSのElastic Beanstalkでは、ソースコードの保管にS3を使っていますが、このS3のバケットを削除しようとしてもエラーが発生して削除できません。 S3の設定で、アクセス権限のバケットポリシーにあるEffectをDenyからAllowに変更すると削除することができま…

Google Cloud SDKのCLIを使う

インストール # macの場合のみ $ brew cask install google-cloud-sdk ... ==> Linking Binary 'bq' to '/usr/local/bin/bq'. ==> Linking Binary 'docker-credential-gcloud' to '/usr/local/bin/docker-credenti ==> Linking Binary 'gcloud' to '/usr/loc…

macOSでリモートサーバのディレクトリをマウントする

リモートサーバのディレクトリをマウントできるsshfsについて紹介します。 インストール $ brew install sshfs sshfs: OsxfuseRequirement unsatisfied! You can install with Homebrew Cask: brew cask install osxfuse You can download from: https://osx…

Cucumberではじめるエンドツーエンドのテスト

Cucumberのインストール方法とテスト実行までのメモです。 インストール Gemfile に以下を追記して、インストールします。 gem 'rspec-rails' gem 'cucumber-rails', require: false gem 'database_cleaner' $ bundle install 次に、Cucumberのファイルを生…

1発でmatplotlibを日本語対応させる

matplotlibでグラフタイトルに日本語を使うと文字化けしています。 そこで、日本語対応させる方法がいくつかありますが、以下の方法が最も手軽です。 pipでjapanize-matplotlibをインストールして、 $ pip install japanize-matplotlib importするだけです。…

CLIでスピードテストを行う

CLI

リモートホストの速度測定するには、Python製のspeedtest-cliが便利です。 インストール $ pip install speedtest-cli OR $ wget -O speedtest-cli https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py $ chmod +x speedtest-cli 実…

flake8で1行単位で警告を無視する

flake8で構文チェックしていると、一時的な書いているコードや特殊なライブラリなどで、1行単位で警告を無視したいとときがあるかと思います。 通常、 example = lambda: 'example' と書くと、以下のような警告が発生します。 E731 do not assign a lambda e…

macのターミナルでコピペ

macOSの場合、ターミナルでコピペができます。 クリックボートにコピー $ echo 'hoge' | pbcopy クリックボートからペースト $ pbpaste hoge pbpasteはCtl+Vを使えば良いのであんまり出番はありませんが、pbcopyはそれなりに使います。 個人的に一番よく使う…

PyTorchでGlobal Max PoolingとGlobal Average Poolingを使う方法

はじめに Global Max PoolingやGlobal Average Poolingを使いたいとき、KerasではGlobalAveragePooling1Dなどを用いると簡単に使うことができますが、PyTorchではそのままの関数はありません。 そこで、PyTorchでは、Global Max PoolingやGlobal Average Poo…

パスワードなしでsudoする

username ALL=(ALL) NOPASSWD:ALL を /etc/sudoers.d/ 配下のファイルに書き込めば良い。 echo "$(logname) ALL=(ALL) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/$(logname) とすると楽。

Netlifyで独自ドメインのリダイレクトを行う方法

Netlifyで独自ドメインの設定した後に、Netlifyが用意するサブドメインから独自ドメインへリダイレクトをしたいケースがあるかと思います。 例えば リダイレクト元: https://hogehoge.netlify.com リダイレクト先: https://hogehoge.com のようなリダイレク…

ターミナルの移動ショートカット

CLI

先頭へ移動 Ctrl + a 末尾へ移動 Ctrl + e 単語の先頭へ移動(削除される) Ctrl + w 先頭へ移動(削除される) Ctrl + u

MacのPython仮想環境でmatplotlibを使うときのエラーを解決するワンライナー

事象 python -m venv .vencとかで作った仮想環境でMatplotlibを使おうとするとエラーが発生する RuntimeError: Python is not installed as a framework. The Mac OS X backend will not be able to function correctly if Python is not installed as a fra…

PythonでOpenCVのビルド情報を取得する

python -c 'import cv2; print(cv2.getBuildInformation())' opencv-pythonでインストールできるOpenCVの場合 General configuration for OpenCV 3.4.4 ===================================== Version control: 3.4.4 Platform: Timestamp: 2018-11-27T15:2…

matplotlibの_tkinterのエラーを解決する

matplotlib で描画をしようとしたときに以下のようなエラーが発生しました。 Traceback (most recent call last): ... File "/home/username/.pyenv/versions/3.6.2/lib/python3.6/tkinter/__init__.py", line 36, in <module> import _tkinter # If this fails your</module>…

TensorflowのImportErrorを解決する

GPU環境でTensorflowを実行したとき ImportError: libcublas.so.9.0: cannot open shared object file: No such file or directory というエラーが発生した場合、CUDAのライブラリのパスが通っていないことに原因があります。 export LD_LIBRARY_PATH=/usr/l…

macOSでPythonをインストールしようとしたときのエラーを解決する

pyenvでpythonをインストールしようとすると以下のようなエラーが発生しました。 (原因かはわかりませんが、macOSのバージョンを10.13に上げてから発生しました。) $ pyenv install 3.6.4 python-build: use openssl from homebrew python-build: use read…

AWSのCLIをもっと便利に使うツール

AWS #2 Advent Calendar 2018 25日目の記事です。 はじめに AWS CLIを使っていますか?まだの方はぜひインストールしてみください。 www.xn--ebkc7kqd.com この記事では、AWS CLIをさらに便利に使うことができるaws-shellについて紹介したいと思います。 aws…

awscliをインストールする

インストール # macの場合のみ $ brew install awscli OR $ pip install awscli 設定 $ aws configure AWS Access Key ID [None]: xxxx AWS Secret Access Key [None]: xxxxxx Default region name [None]: ap-northeast-1 Default output format [None]: js…

UbuntuでのNginxのコマンド

基本 UbuntuでのNginxを操作するコマンドは3パターンあります。 $ sudo systemctl <コマンド> nginx or $ sudo service nginx <コマンド> or $ sudo /etc/init.d/nginx <コマンド> 以下は、systemctlの例ですが、service nginxでも/etc/init.d/nginxでも同じ…

Pyenvをインストールすると発生するbrew doctorのWarningを解決する

macOSでpyenvをインストールすると、brew doctorでconfigまわりのWarningが発生します。 $ brew doctor Please note that these warnings are just used to help the Homebrew maintainers with debugging if you file an issue. If everything you use Home…

Gitブランチをきれいにするワンライナー

今すぐalias登録すべきワンライナー by ゆめみ① Advent Calendar 2018 10日目の記事です。 開発していると、マージされたfeature/xxxとか不要なブランチが結構でてくるので、一括で削除するコマンドをalias登録しておくと良いです。 git checkout develop &&…