#!/bin/sh
LOG='log --pretty=format:"%h - %an, %ar : %s"'
git $LOG
我希望這會以指定的格式輸出實際的git日誌。但是,我得到的只是一個致命的參數錯誤。Bash Shell變量中的引號不起作用,爲什麼?
我也曾嘗試下面的選項,他們也不起作用:
LOG="log --pretty=format:\"%h - %an, %ar : %s\""
LOG='log --pretty=format:\"%h - %an, %ar : %s\"'
然而,奇怪的是下面的腳本不工作,我不明白爲什麼:
LOG='--pretty=format:"%h - %an, %ar : %s"'
git log "$LOG"
有人認爲,殼正在考慮變量只有一個參數,但以下工作正常:
LOG1LINE='log --pretty=oneline'
git $LOG1LINE
[我想在一個變量把一個命令,但是複雜的情況下總是失敗(http://mywiki.wooledge.org/BashFAQ/050) –