Я понимаю, что подобные вопросы были заданы в SO несколько раз. Однако я не смог найти здесь никаких обычных подозреваемых.
#!/bin/bash
myvar="test"
if [ "$myvar" == "test" ]
then
echo "Test mode"
fi
Потратил довольно много времени на это. Кто-нибудь может посоветовать, чего мне не хватает?
Я могу выполнить скрипт, но не смог получить тот же источник.
ошибка при источнике bash: test.sh: line 7: syntax error: unexpected end of file
$ which bash
/bin/bash
$ bash --version
3.2.57(1)
Я могу заставить работать то же самое на моем другом Mac. Так что на моем Mac это что-то не так, но я не могу понять, что это такое. Кроме того, не только вышеупомянутый скрипт, ни один скрипт с условием «если» я не смог найти. Пробовал разные примеры, упомянутые здесь , та же синтаксическая ошибка.
edit1:
$ file test.sh
test.sh: Bourne-Again shell script text executable, ASCII text
edit2:
$ hexdump -C test.sh
00000000 23 21 2f 62 69 6e 2f 62 61 73 68 0a 6d 79 76 61 |#!/bin/bash.myva|
00000010 72 3d 22 74 65 73 74 22 0a 69 66 20 5b 20 22 24 |r="test".if [ "$|
00000020 6d 79 76 61 72 22 20 3d 3d 20 22 74 65 73 74 22 |myvar" == "test"|
00000030 20 5d 0a 74 68 65 6e 0a 65 63 68 6f 20 22 54 65 | ].then.echo "Te|
00000040 73 74 20 6d 6f 64 65 22 0a 66 69 0a |st mode".fi.|
0000004c