Rumah >pembangunan bahagian belakang >Golang >Bagaimanakah saya boleh melarikan diri dari Interpolasi Tanda Dolar dalam Perintah Makefile?

Bagaimanakah saya boleh melarikan diri dari Interpolasi Tanda Dolar dalam Perintah Makefile?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-16 10:11:111006semak imbas

How Can I Escape Dollar Sign Interpolation in Makefile Commands?

Melepaskan Interpolasi Ungkapan dalam Perintah Makefile

Isu:

Menghadapi kesukaran menginterpolasi ungkapan dalam arahan dalam Makefile disebabkan penilaian isu.

Penjelasan:

Fail Make menggunakan peraturan penilaian yang berbeza berbanding skrip shell. Dalam Makefile, tanda dolar ($) digunakan untuk pengembangan berubah, tetapi apabila digunakan dalam arahan, ia mungkin tidak dinilai seperti yang dimaksudkan.

Penyelesaian:

Untuk melepaskan $ dalam arahan Makefile dan mendayakan interpolasi ungkapan seperti shell, gunakan tanda dolar kedua ($$). Ini memberitahu Makefile untuk menganggap $ pertama sebagai teks literal dan menangguhkan interpolasi ke shell.

Contoh:

Untuk menjalankan ujian dalam projek Go, tetapi langkau vendor ujian, anda boleh menggunakan coretan Makefile berikut:

test:
    go test $$(go list ./... | grep -v /vendor/)

.PHONY: test

Dalam contoh ini, senarai $$(go ./... |. grep -v /vendor/) disertakan dalam dolar dua kali ganda untuk memastikan bahawa ungkapan diinterpolasi oleh cangkerang.

Dengan melarikan diri dari tanda dolar, Makefile menilai ungkapan dengan betul dan menyediakan output yang dijangkakan.

Atas ialah kandungan terperinci Bagaimanakah saya boleh melarikan diri dari Interpolasi Tanda Dolar dalam Perintah Makefile?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn