3

私は bash での文字列操作、特に部分文字列の置換について学びました。

#! /bin/bash

VAR1="aaaa.bbbb.cccc"
VAR2="bbbb*"
echo ${VAR1%${VAR2}}

この bash スクリプトは「aaaa.」を出力します。メイクファイルに含めようとしましたが、機能させることができません..

SHELL:=/bin/bash

VAR1="aaaa.bbbb.cccc"
VAR2="bbbb*"

all:
    @echo $${VAR1%$${VAR2}}

この Makefile は空白行のみを出力します。私は何かを誤解していると思いますが、何がわかりません。どんな助けでも本当に感謝しています。

4

3 に答える 3

5

VAR1 と VAR2 を二重引用符で囲む必要はありません。そして、exportVAR1とVAR2を上に置きたい場合は、使用する必要がありますall:

SHELL:=/bin/bash

export VAR1=aaaa.bbbb.cccc
export VAR2=bbbb*

all:
    @echo $${VAR1%$${VAR2}}
于 2012-09-08T17:40:41.703 に答える