Как вручную развернуть специальную переменную (исключая: ~ тильда) в ударе

У меня есть переменная в моем сценарии удара, значение которого - что-то вроде этого:

~/a/b/c

Обратите внимание, что это - нерасширенная тильда. Когда я делаю ls - лейтенант на этой переменной (назовите это $VAR), я не получаю такого каталога. Я хочу позволить удару интерпретировать/расширить эту переменную, не выполняя его. Другими словами, я хочу, чтобы удар выполнил оценку, но не выполнил оцененную команду. Действительно ли это возможно в ударе?

Как мне удавалось передать это в мой сценарий без расширения? Я передал аргумент в окружении его с двойными кавычками.

Попробуйте эту команду для наблюдения то, что я имею в виду:

ls -lt "~"

Это - точно ситуация, в которой я нахожусь. Я хочу, чтобы тильда была расширена. Другими словами, что должно я заменять волшебство сделать эти две команды идентичными:

ls -lt ~/abc/def/ghi

и

ls -lt $(magic "~/abc/def/ghi")

Обратите внимание, что ~/abc/def/ghi может или не может существовать.

119
задан madiyaan damha 18 October 2010 в 22:05
поделиться