ifeq не сравнивает две переменные
Я создаю программу для перемещения файла на рабочий стол, независимо от языка, выбранного в ОС. На португальском языке папка рабочего стола называется «Área de trabalho». Поскольку «Área de Trabalho» - это три отдельных слова, при написании каталога необходимо добавлять одинарные кавычки («Área de Trabalho»), в противном случае команда приводит к ошибке.
mv Minesweeper $HOME/Área de Trabalho/ #command
mv: target 'Trabalho/' is not a directory #Error
Я использую эта команда для получения каталога папки рабочего стола пользователя:
xdg-user-dir DESKTOP
И если каталог равен домашнему каталогу плюс "/ Área de Trabalho", я хочу изменить
Вот код:
desktop=$(shell xdg-user-dir DESKTOP) # I'm using this command to get the directory of the desktop folder of the user
desktopVar="$$HOME/Área de Trabalho" # And if the directory is equals to the home directory plus "/Área de Trabalho"
move:
ifeq (${desktop},${desktopVar})
desktop=${HOME}/'Área de Trabalho' # I want to change the directory to ${HOME} plus "/'Área de Trabalho'", so the command doesn't results in error
@echo yes
endif
@echo ${desktopVar}
@echo ${desktop}
Но ifeq говорит, что обе переменные равны и ничего не меняет.
Вот вывод:
/home/daniel/Área de Trabalho
/home/daniel/Área de Trabalho