У меня есть путь к файлу, который находится в домашнем каталоге, и я sh обрабатываю его, чтобы он стал сокращенным путем, который включает в себя «~».
Например, мой ввод может быть:
"/home/username/test"
или /home/./username/test
или /home/../home/username/test
и я wi sh, чтобы получить
~/test
Я попытался .split("/")
и сопоставить первые два термина, но когда со всеми этими словами немного сложнее "." и ".." Я понятия не имею, как этого добиться.
Как эффективно обрабатывать пути для достижения указанной выше цели?