あるディレクトリの中のディレクトリ群を、全て個別のzipアーカイブにしたいと思った。

そこで

for i in `ls`; do zip -r $i.zip $i; done;

というコードを書いて実行したところ、すべてのディレクトリの中に「.zip」というファイルが出来上がってしまった。

いやいや、もう一つ上のディレクトリに、個別のディレクトリと個別のディレクトリのzipアーカイブが並んでほしかったのだけど。

何がおかしいのだろうと思って

for i in `ls` ; echo $i.zip

を実行したところ


dir1/.zip
dir2/.zip

という結果が出てきた。

つまり、ディレクトリをあらわす記号"/"の後に.zipがついていたわけです。
なるほど、自分のzshはディレクトリの名前をタイプするだけでそのディレクトリの中に入るような仕様にカスタムしているので、

cd dir1

をしていることと同様になり、その後.zipを作っているということになっていたわけです。

ということでディレクトリの末尾のスラッシュを消す方法を探したところ、以下のコマンドで達成できました。

for i in `ls` ; echo ${i%/}.zip

${i%/} %/を変数に対して付加してあげると、末尾のスラッシュを取り除いてくれるようです。

これは例えばスラッシュでなくても、i%#とすれば末尾のシャープを取り除いてくれるようですね。

結果、以下のコードを実行することで思っていたことが出来ました。

for i in `ls` ; do zip -r ${i%/}.zip $i; done;

勉強になりました。




macにvagrantの最新版(2.0.3)をインストールしてVVVをup、vagrant-hostsupdaterというプラグインを入れると良いという記事を見たので入れようとしたところ下記のエラーが出てインストールできない

vagrant plugin install vagrant-hostsupdaterInstalling the 'vagrant-hostsupdater' plugin. This can take a few minutes...
Vagrant failed to load a configured plugin source. This can be caused
by a variety of issues including: transient connectivity issues, proxy
filtering rejecting access to a configured plugin source, or a configured
plugin source not responding correctly. Please review the error message
below to help resolve the issue:

SocketError: Failed to open TCP connection to rubygems.org:443 (Hostname not known: rubygems.org) (https://rubygems.org/specs.4.8.gz)

Source: https://rubygems.org/

ping https://rubygems.org/

してみたり

curl https://rubygems.org/

してみたらちゃんと通る。
なんだこれと思って調べていると海外のページに「同じ問題にぶち当たったけどvagrant2.0.0に戻したら治った」というコメントを発見。

vagrantのダウングレードは公式にかいてあるとおりにまずvagrantを削除

Uninstalling Vagrant - Vagrant by HashiCorp : https://www.vagrantup.com/docs/installation/uninstallation.html

その後2.0.0のpkgファイルをダウンロード、インストール

vagrant2.0.0に戻したらプラグインがすんなり入った。
なんだろうねこれ。

ちなみにVirtualBoxのバージョンは5.2.8だったのを5.1.0にダウングレードする必要がでてきた。

これは古いvirtualboxのpkgファイルをダウンロードしてきて、インストールするだけで簡単にダウングレードできた。




IntelliJ IDEAをMacにインストールして内部サーバーでPHPを使おうと思ったらPHP-CGIがありませんよ!と怒られた。

BREW使えばすぐインストールできるだろうと軽く考えていたのだけどBREW使ってインストールできない。

これは困ったという事で調べてみたところMAMPをインストールすればいいという情報をYoutubeで見つけた。

(2) Configure PhpStorm Interpreters on Mac OS X - YouTube : https://www.youtube.com/watch?v=CqHWhaPOfos

MAMP & MAMP PRO : https://www.mamp.info/en/

最近はYoutubeにこういう情報が落ちているのだなあという感慨。

ただまあ思うに、これからの時代は開発用OSの中にわざわざ内部サーバーをセットアップする時代じゃないのだろうなあという気持ちもあります。

仮想環境を作ってそこで開発するのが早いのでは。
まあでもデバッガー使うには実行環境がホストOSにないとダメなのかな。

当代最強のIDEと呼ばれるIntelliJ IDEAを使いはじめるにあたっての環境の構築中。