所以我試圖從運行Raspbian的RaspberryPi上的Makefile運行sed命令。我使用的命令直接輸入到終端時非常有效,但是當我嘗試從Makefile執行它們時,我收到以下反饋:如何從Makefile執行SED命令
sed:-e表達式#1,字符14:命令
#
# Quick and dirty Makefile for logsnag
#
CC = gcc
INCLUDE = -I.
CFILES = myThing.c
OBJS = myThing.o
CFLAGS = ${INCLUDE}
all: myThing
myThing: ${OBJS}
${CC} ${CFLAGS} ${OBJS} -o myThing
myThing.o: ${CFILES}
${CC} ${CFLAGS} myThing.c -c
install: myThing
sudo cp -f myThing/usr/local/bin
sudo cp -f ../bin/startlogging.sh /usr/local/bin
sudo cp -f ../cfg/rotateThing.cfg /etc
if [ ! -d /var/log/thingLog ]; then\
sudo mkdir /var/log/thingLog;\
fi;
sudo sed -i -e '$i touch /var/log/thingLog/thing.log /var/log/thingLog/myThing \n' /etc/rc.local;
sudo sed -i -e '$i logrotate -f /etc/rotateThing.cfg \n' /etc/rc.local;
sudo sed -i -e '$i touch /var/log/thingLog/thing.log /var/log/thingLog/myThing \n' /etc/rc.local;
sudo sed -i -e '$i /usr/local/bin/startlogging.sh > /var/log/thingLog/myThing 2>&1 & \n' /etc/rc.local;
clean:
rm -f myThing *.o
請顯示上下文! –
我想你應該逃避你的'/'字符。如果'i'沒有定義,我會在最後一行發現錯誤。 –
您可以通過準備[最小完整示例](http://stackoverflow.com/help/mcve)爲我們節省大量工作量。 – Beta