I tried to replace a line in a Makefile
with sed -i -e 's|$(bindir)\/embossupdate|:|' Makefile
, but I got sed: can't read Makefile: No such file or directory
FROM ubuntu:16.04
...
# EMBOSS (ftp://emboss.open-bio.org/pub/EMBOSS/)
ENV EMBOSS_VER 6.6.0
RUN apt-get install libhpdf-dev libpng12-dev libgd-dev -y
ADD EMBOSS-${EMBOSS_VER}.tar.gz /usr/local/
WORKDIR /usr/local/EMBOSS-${EMBOSS_VER}
RUN sed -i -e 's|$(bindir)\/embossupdate|:|' Makefile
RUN ./configure --enable-64 --with-thread --without-x
RUN make
RUN ldconfig
RUN make install
What did I do wrong with the sed command?
sed
, but sounds like you don't haveMakefile
inEMBOSS-${EMBOSS_VER}
.sed
-expression won't do what you except, as you forgot to escape$
, which will match the end-of-line in this expression.$
is an ordinary character unless at the end of the expression (or at the end of a group) in a BRE.