решение1
Проверка типа вашего файла .profile
с помощью file
команды определила его как:
UTF-8 Unicode (with BOM) text
Проблема в следующем BOM
. Это означает "Byte Order Mark" и представляет собой три дополнительных байта в начале потока/документа, которые могут указывать на тип используемой кодировки Unicode. Однако это не рекомендуется для UTF-8 и недопустимо в скриптах оболочки.
Вероятно, вы получили это, используя неподходящий редактор для изменения файла, например, какое-то программное обеспечение Windows.
Чтобы решить проблему, вам придется снова удалить этот BOM.Как удалить BOM из файла UTF-8?содержит несколько полезных предложений, как это можно сделать. Одним из возможных способов будет запуск этой команды:
sed -i '1s/^\xEF\xBB\xBF//' ~/.profile
Проще говоря, эта функция проверяет, начинается ли первая строка файла с этих трех байтов BOM, и удаляет их.