WebDAVでマウントしたlolipopのサーバにMacからrsyncするときはiconvオプションが重要

タイトルの通りです。iconvをつけないと、日本語ファイル名で濁点・半濁点が入っている時に文字化けしてアップロードされてしまい、期待通りのURLでアクセスできません。 正解の手順は以下のとおり。 lolipopで借りているwebサーバで、ssh接続ができないライトプランだと、FTPかWebDAVしかファイルアップロードの手段がありません。FTPだとrsyncコマンドが使えなくて面倒なので、WebDAVでマウントしてJekyllで生成したスタティックなウェブサイトのデータをアップロードしています。 Jekyllでは日本語ファイル名(サンプル.mdみたいな)のMarkdownファイルを作っても、ローカルではとくに問題なく動いていたので、lolipopの環境にアップロードして運用しようとしたところ、濁点・半濁点を含む日本語名のファイルで問題がおきました(アクセスするとファイルが存在しない、というエラーになる)。 説明の順番が逆になりましたが、上記のようにすると解決します。キモは、 Homebrewで最新版のrsyncをインストールする rsync時に–iconv=UTF8-MAC,UTF-8オプションを追加する です。 [tmkm-amazon]B00J3H931I[/tmkm-amazon]

【Mac】複数のMP3ファイルをsoxコマンドで連結する(catは使わない)

sox(Sound Exchange)を使えば、GUIのソフトウエアを使わずにコマンドラインから1コマンドで連結できたので、メモ。 soxのインストール Homebrewでsoxコマンドをインストール。2分くらいでインストールされます。 –with-lameをつけないと、mp3とmp2の処理機能が含まれな場合があるようなので、つけておきましょう。 mp3ファイルの連結 以下のコマンドで一発。合計1時間半くらいのファイルの場合、1-2分で完了します。 catコマンドでの連結はやめましょう 「mp3 連結…

【Mechanize/Ruby】Amazonへのログイン

Amazonのウェブサービスの操作を自動化しています。RubyでMechanizeを使ってAmazonにログインしようとしたのですが、「Cookieを有効にしてください」の表示がでてしまってうまく行きませんでした。 調べたところ、Stackoverflowのページに投稿があり、以下のようにagent.follow_meta_refresh = trueとagent.redirect_ok = trueとagent.user_agent_alias = ‘Mac Safari’を設定したらうまく行きました。 以下の例の中で、MAIL_ADDRESSとPASSWORDのところは適当に変更してください。

【Ruby】コマンドラインからMediaWikiにファイルをアップロード

参加しているプロジェクトのwikiでMediaWikiを利用しています。会議のプレゼンテーションをまとめたりするときに頻繁にファイルをアップロードする必要があるのですが、毎回ブラウザ経由で手動でアップロードするのが面倒になってきました。 最近はRubyからSeleniumを使って色々なwebサービスの操作を自動化するのがマイブームになってきましたが、ブラウザのウインドウを開かずにコマンドラインだけで動作が完結するという点でMechanizeも便利です。なので、Mechanizeを使ってMediaWikiにファイルをアップロードするスクリプトを作成してgistに公開しました。 → upload_file_to_mediawiki – gist このページの下の方にもソースコードを掲載しておきます。 Mechanizeについて勉強・入門したいときの参考情報 Mechanize – オフィシャルのウェブページ Mechanize…