Я нахожусь на Ubuntu 16.04, и у меня есть сценарий удара с вихревой командой, например:
#!/bin/bash
curl https://www.example.com/file.txt > ./file.txt
Файл должен быть загружен именем file.txt
но когда я делаю ls, я вижу:
$ ls
file.txt?
Почему это делает это и как удалить это ?
?
Спасибо
Ваш сценарий имеет окончания строки Windows.
Если Вы выполняете свое использование сценария ./script.sh
, это должно произвести:
bash: ./script.sh: /bin/bash^M: bad interpreter: No such file or directory
Если Вы работаете bash script.sh
, это сохранит файл с ?
в конце как Вы сообщают.
Измените своего редактора для использования окончаний строки Unix или использования dos2unix script.sh
преобразовать в окончания строки Unix.