Я хочу знати, як очистити всі змінні, які я визначив у командному рядку, не закриваючи термінал?
Наприклад, якщо я встановив змінну в командному рядку як:
$ a=1
тепер я хочу видалити змінну $a(та багато інших змінних, визначених аналогічно), не закриваючи термінал. Я міг би скористатися, unsetале це буде неспокійно, якщо великих немає. змінних
$varз а var=$(declare -p +F);потім передає його в якості аргументу функції , яка робить , echo "${2%%=*}".що відповідь має кілька проблем з величезними розмірами - але він повинен працювати , якщо середовище не настільки велика.
exec "$0"можливо - але важко сказати, що ти маєш на увазі під глобальним .