make
GNU変数の最初の文字を取得するより良い方法はありますか?
FIRST=$(shell echo $(VARIABLE) | head -c 1)
(扱いにくいだけでなく、外部シェルも呼び出します)?
make
GNU変数の最初の文字を取得するより良い方法はありますか?
FIRST=$(shell echo $(VARIABLE) | head -c 1)
(扱いにくいだけでなく、外部シェルも呼び出します)?
これはかなり恐ろしいですが、少なくともそれは呼び出されませんshell
:
$(eval REMAINDER := $$$(VAR)) # variable minus the first char
FIRST := $(subst $(REMAINDER),,$(VAR)) # variable minus that
GNU Make Standard Libraryはsubstr
関数を提供します
サブストリング
Arguments: 1: A string
2: Start offset (first character is 1)
3: Ending offset (inclusive)
Returns: Returns a substring
私はそれをテストしていませんが、$(call substr,$(VARIABLE),1,1)
動作するはずです