カテゴリー
Linux

Bash のプロンプトに表示する Git のリポジトリ状態 (__git_ps1) をほぼ満足する状態にまでカスタマイズできた♪

Mac の .bash_profile に書いた Git のプロンプトカスタマイズ部分完成形

# プロンプトに各種追加情報を表示
source /usr/local/etc/bash_completion.d/git-prompt.sh
if type __git_ps1 > /dev/null 2>&1 ; then
  GIT_PS1_SHOWDIRTYSTATE=true
  GIT_PS1_SHOWSTASHSTATE=true
  GIT_PS1_SHOWUNTRACKEDFILES=true
  GIT_PS1_SHOWUPSTREAM="auto"
  GIT_PS1_SHOWCOLORHINTS=true
  PROMPT_COMMAND='\
    __git_ps1 \
    "\[\e[1;32m\]\u@\h\[\e[m\]:\[\e[1;34m\]\W\[\e[m\]" \
    "\$ " \
  '
fi
カテゴリー
Linux

Bash プロンプト PS1 の内容を理解し、設定する

はじめに

いま、私の Mac のターミナルでは、 Git のブランチ名が表示されるようになっており、便利です。さて、 Mac だけでなく、 Windows も使います。 Windows Subsystem for Linux で作業しはじめた時、 Git ブランチ名を表示するようにした後、違和感に気がつきました。

ブランチ名の左側に、ユーザ名等表示されるのですけれども、白くなってしまいました。しばらく放っておいたのですけれども、スクロールして戻った時、どれがコマンド実行行で、どれが出力なのか、わかり辛く感じました。

そこで、ブランチ名も表示しつつ、その左側も色付けするように設定いたしました。

カテゴリー
Apple

SSH 鍵を GitHub で管理する

Git 管理するにあたって守ることまとめ

  • GitHub の Private リポジトリで管理する
  • 秘密鍵は Git リポジトリに含めない
カテゴリー
Linux

【シェルスクリプト】指定ファイルの最終行が空白行かどうかを判定する

指定ファイルの最終行が空白行かどうかを判定するコマンド

  • 標準出力をパイプして、 test コマンドに渡そうと思ったができなかった。 tail -1 ~/.bash_profile | test -z; echo $?, tail -1 ~/.bash_profile | [ -z ]; echo $?, tail -1 ~/.bash_profile | [[ -z ]]; echo $? などではダメだった。
  • test コマンドには、引数が絶対に必要

以上を踏まえて、次のコードで実現できました。

[[ -z $(tail -1 ~/.bash_profile) ]]; echo $?
カテゴリー
Linux

最新の Oracle JDK パッケージをダウンロードするシェルスクリプトを勉強する

が、短いながらも Oracle JDK パッケージをダウンロードという素敵なことをやっています!素晴らしい!

だがしかし、何をやっているのかわかりません><。コメントを付けることで理解を深めました。

今回はそのノートとなります。

準備

カテゴリー
Linux

【Ansible】変数の値を command モジュールで実行できなかった><

はじめに

にて、Ansible の変数を command モジュールで実行しようとしたところ、1 行が 1 つの引数と判断されてしまうために、エラーとなってしまいました。

そこで、次の方法が思い当たりました。

(今回はダメだったけれども) Ansible タスクで変数の値をそのまま command モジュールで実行する方法

カテゴリー
Microsoft

【Git】git svn fetch を自動的に何度も実行するシェルファイル

はじめに

git svn fetch で 何度も time out とエラー終了してしまいます><。

再度 fetch すれば少しずつ進みますので、しつこく何度も自動的に実行したいと存じます。

さしあたって 2 回連続で実行するシェルを書き、試した。