
${$(git rev-parse HEAD):0:5}
bash: ${$(git rev-parse HEAD):0:5}: bad substitution
git rev-parse HEAD
ハッシュIDを返しますが、ここで部分文字列をどのように生成しますか?
2行に分けるとうまくいきます。
x=$(git rev-parse HEAD)
echo ${x:0:5}
しかし、一行でどうすればいいですか?
答え1
使用--short
オプション:
$ git rev-parse --short=5 HEAD
90752
$ x=$(git rev-parse --short=5 HEAD)
$ printf '%s\n' "$x"
90752
答え2
cutユーティリティは必要な操作を実行する必要があります。
$ x=$(git rev-parse HEAD | cut -c1-5) && echo $x
なぜスレッドですか?