カテゴリー : Shell Script

[Bash] HTTP ステータスコード 200 を返す URL をリストアップする Shell Script

HTTP ステータスコード 200 を返す URL をリストアップする bash で動く Shell Script をご紹介します。

bash

続きを読む

[Shell Script] 昨日, 今日, 明日の日付をフォーマットして取得する

シェルスクリプトで「昨日」「今日」「明日」の日付を Google スプレッドシートや MongoDB Query で使いやすいようにフォーマットして取得する方法をご紹介します。

前提

「今日」の日付は 2016/06/22 とします。

昨日, 今日, 明日の日付を取得する

# 昨日の日付
% date -d '1 days ago'
Tue Jun 21 13:40:41 UTC 2016
# 今日の日付
% date
Wed Jun 22 13:40:42 UTC 2016
# 明日の日付
% date -d '1 days'
Thu Jun 23 13:40:43 UTC 2016

昨日, 今日, 明日の日付を取得する (フォーマット版)

Google スプレッドシートや MongoDB Query で扱いやすいようにハイフン区切りでそれぞれ日付をだしてみました。

# 昨日の日付
% date '+%Y-%m-%d' -d '1 days ago'
2016-06-21
# 今日の日付
% date '+%Y-%m-%d'
2016-06-22
# 明日の日付
% date '+%Y-%m-%d' -d '1 days'
2016-06-23

以上です。

参考情報

[Zsh] oh-my-zsh のインストールと設定方法

oh-my-zsh のインストールと設定方法をメモ。
(最終更新日:2014/11/28)

robbyrussell/oh-my-zsh

oh-my-zsh のインストール

0から始める場合だと、何も気にせず以下の curl コマンドを実行すればOKです。

curl -L http://install.ohmyz.sh | sh

oh-my-zsh のプラグインを利用する

~/.oh-my-zsh/plugins/ 以下に独自のプラグインが入っています。デフォルトでは git だけなので、必要なプラグインを読み込む設定をします。

plugins=(adb ant atom brew bundler capistrano coffee gem git gitignore gradle heroku history node npm nvm pod postgres rails rake redis-cli ruby rvm screen vagrant xcode)

自分でカスタマイズした設定を使う

oh-my-zsh は ~/.oh-my-zsh/custom/ 以下にシェルスクリプトを設置することで、カスタマイズした設定を読み込むことができます。

ln -s ~/Dropbox/dotfiles/_oh-my-zsh_custom.sh ~/.oh-my-zsh/custom/oh-my-zsh_custom.sh

PATH の設定が上手くいかない場合

自動生成された .zshrc に export PATH=”/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin” の記述が追加されていたら、適切に修正するか削除した方がいいです。

# User configuration
 
export PATH="/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin"
# export MANPATH="/usr/local/man:$MANPATH"

僕は、自分でカスタマイズした _oh-my-zsh_custom.sh の中で export PATH= を呼び出していました。なので .zshrc に追加されていた PATH の設定で上書きされてしまい、PATH が通ってない状況になりハマりました・・・。

以上です。


参考情報

oh-my-zsh を使って zsh の便利な設定をまとめて取り入れる – mollifier delta blog

[Shell Script] CPUコア数を取得するコマンド

CPUコア数を取得するコマンドをメモ。

$ cat /proc/cpuinfo | grep processor
processor	: 0
processor	: 1
$ echo `grep -c ^processor /proc/cpuinfo`
2

参考記事

逆引きUNIXコマンド/CPUコア数を調べる – Linuxと過ごす

[Mac] zsh のインストール手順と設定メモ

Mac のデフォルトのシェルを bash から zsh へ移行したので手順をメモ。
(最終更新日:2014/11/19)

zsh はデフォルトでインストールされているものを使わずに、最新版を homebrew でインストールして使います。

事前準備

Homebrew でインストールした zsh に path を通すようにします。

$ export PATH=/usr/local/bin:$PATH

Homebrew で zsh をインストール

$ brew install zsh
$ brew install zsh-completions
$ zsh --version
zsh --version
zsh 5.0.5 (x86_64-apple-darwin14.0)
$ which zsh
/usr/local/bin/zsh

ログインシェルを zsh に変更

$ sudo sh -c "echo '/usr/local/bin/zsh' >> /etc/shells"
$ chsh -s /usr/local/bin/zsh

.zshrc の作成

設定をカスタマイズするために .zshrc ファイルを作成・編集します。

僕は、ほとんど oh-my-zsh にお任せしているので、oh-my-zsh のインストールと設定をします。

[Zsh] oh-my-zsh のインストールと設定方法 | CodeNote.net

.zshrc の設定反映

$ source ~/.zshrc

以上です。


参考情報

zsh 導入メモ – Clipboard

Macでhomebrewのzshを使う – Qiita [キータ]

Homebrewでzsh-completionsを利用する手順。

zshの補完を強化する方法 – Qiita [キータ]

[Shell Script] /bin/bash^M: bad interpreter: No such file or directory

シェルスクリプトを実行したら、エラーが発生しました。

/bin/bash^M: bad interpreter: No such file or directory

原因は、Windowsの改行コード CR/LF になっているせいみたいでした。

Linuxの改行コード LF に変換すれば正常に実行できました。

【参考】

シェルを実行できない失敗例「/bin/bash^M: bad interpreter: No such file or directory」の原因と解決策 – r_nobuホームページ はてなブックマーク - シェルを実行できない失敗例「/bin/bash^M: bad interpreter: No such file or directory」の原因と解決策 - r_nobuホームページ