idealo / image-super-resolution

🔎 Super-scale your images and run experiments with Residual Dense and Adversarial Networks.
https://idealo.github.io/image-super-resolution/
Apache License 2.0
4.63k stars 762 forks source link

entrypoint.sh: Syntax error: word unexpected (expecting "in") #190

Open heinrichI opened 3 years ago

heinrichI commented 3 years ago

Hello.

I have problems running ISR in docker under windows 10. Build succecfull. But run: docker run -v ${pwd}/data/:/home/isr/data -v ${pwd}/weights/:/home/isr/weights -v ${pwd}/config.yml:/home/isr/config.yml -it isr -p -d -c config.yml

show:

: not foundntrypoint.sh: 4: ./scripts/entrypoint.sh:
Hello. This is your favorite ISR assistant.

: not foundntrypoint.sh: 7: ./scripts/entrypoint.sh:
: not foundntrypoint.sh: 12: ./scripts/entrypoint.sh:
./scripts/entrypoint.sh: 15: printf: Illegal option -c
./scripts/entrypoint.sh: 16: printf: Illegal option -t
./scripts/entrypoint.sh: 17: printf: Illegal option -p
./scripts/entrypoint.sh: 18: printf: Illegal option -d
: not foundntrypoint.sh: 19: ./scripts/entrypoint.sh: }
: not foundntrypoint.sh: 20: ./scripts/entrypoint.sh:
./scripts/entrypoint.sh: 22: ./scripts/entrypoint.sh: Syntax error: word unexpected (expecting "in")

I don't know what to do and what is wrong with entrypoint.sh

heinrichI commented 3 years ago

It was necessary to convert the end of lines of the entrypoint.sh file to Unix (LF).

Now such a problem:

docker run -v ${pwd}/data/:/home/isr/data -v ${pwd}/weights/:/home/isr/weights -v ${pwd}/config.yml:/home/isr/config.yml -it isr -p -d -c config.yml
Hello. This is your favorite ISR assistant.

usage: assistant.py [-h] [--prediction] [--training] [--summary] [--default]
                    [--config CONFIG_FILE]
assistant.py: error: unrecognized arguments: --config config.yml
C-Collamar commented 2 years ago

I'm having the same issue as well.

From Git Bash on Windows, when I pipe the output to clipboard with docker run ... | clip, the previously overlapping console output is expanded to as follows:

$ docker run -v $(pwd)/data/:/home/isr/data -v $(pwd)/weights/:/home/isr/weights -v $(pwd)/isr/config.yml:/home/isr/config.yml -it isr -p -d -c config.yml | clip

./scripts/entrypoint.sh: 4: ./scripts/entrypoint.sh: 
: not found
Hello. This is your favorite ISR assistant.

./scripts/entrypoint.sh: 7: ./scripts/entrypoint.sh: : not found
./scripts/entrypoint.sh: 12: ./scripts/entrypoint.sh: 
: not found
Usage:
./scripts/entrypoint.sh: 15: printf: Illegal option -c
./scripts/entrypoint.sh: 16: printf: Illegal option -t
./scripts/entrypoint.sh: 17: printf: Illegal option -p
./scripts/entrypoint.sh: 18: printf: Illegal option -d
./scripts/entrypoint.sh: 19: ./scripts/entrypoint.sh: }
: not found
./scripts/entrypoint.sh: 20: ./scripts/entrypoint.sh: 
: not found
./scripts/entrypoint.sh: 22: ./scripts/entrypoint.sh: Syntax error: word unexpected (expecting "in")

@heinrichI suggested to ensure ./scripts/entrypoint.sh uses the Unix LF rather than Windows' CRLF. So I ran:

$ dos2unix scripts/entrypoint.sh
dos2unix: converting file scripts/entrypoint.sh to Unix format...

But I'm still getting the same error. Does anyone else experience this?