Я пробовал различные решения для чтения из файла в linux, и вам не повезло. Моя основная цель - получить HTTP-ответ от приложения и сохранить его в файле.Чтение из файла в linux
Вот мой код в файле сценария оболочки
wget localhost:8080/abc/rest/eventservice/event -O /dev/null -S --quiet 2>&1 | grep "200 OK" > out.txt
while read -r LINE || [[ -n $LINE ]];
do
echo "$LINE";
done < out.txt
После того, как я выполнил вышеуказанный файл ш я получаю ошибку ниже
'ervercheck.sh: line 6: syntax error near unexpected token `
'ervercheck.sh: line 6: ` done < out.txt
Эта линия wget localhost:8080/abc/rest/eventservice/event -O /dev/null -S --quiet 2>&1 | grep "200 OK"
печатает HTTP/1.1 200 OK
Я также заметил, что когда я пытаюсь просмотреть содержимое файла и введите vi out.txt
Содержимое пуста, но когда я набираю vi out.txt^M
, тогда контент есть.
Пожалуйста, помогите мне, почему выполнение файла оболочки дает такую ошибку и почему я имею^M в конце моего имени файла
У вас есть окончания строки MSWin в вашем скрипте. Используйте 'dos2unix' или' fromdos', чтобы удалить их. – choroba
, который является окончанием MSWin, это «;»? – Deb
no '^ M' char – poida