0

I have a file named "open". I open up a terminal, read it's first line into a variable text and tried to put all the contents of file except for text in a new file called "open.temp" using grep's pattern inversion. Here's the code:

papagolf@Sierra ~/My Files/My Programs % cat open
# PPPP
QQQQ
RRRR
SSSS
papagolf@Sierra ~/My Files/My Programs % text=`head -n 1 open`
papagolf@Sierra ~/My Files/My Programs % cat open | grep -v $text > open.temp
papagolf@Sierra ~/My Files/My Programs % cat open.temp 
QQQQ
RRRR
SSSS

But when I put the same commands in a file called "test.sh", give it executable permission and execute it, it pops an error.

papagolf@Sierra ~/My Files/My Programs % rm open.temp
papagolf@Sierra ~/My Files/My Programs % touch test.sh
papagolf@Sierra ~/My Files/My Programs % nano test.sh  
papagolf@Sierra ~/My Files/My Programs % chmod +x test.sh 
papagolf@Sierra ~/My Files/My Programs % ./test.sh 
grep: PPPP: No such file or directory
papagolf@Sierra ~/My Files/My Programs % cat test.sh 
text=`head -n 1 open`
cat open | grep -v $text > open.temp
Rui F Ribeiro
  • 56,709
  • 26
  • 150
  • 232
7_R3X
  • 1,174

0 Answers0