Tôi muốn biết làm thế nào để xóa tất cả các biến mà tôi đã xác định trong dấu nhắc lệnh mà không đóng terminal?
ví dụ: nếu tôi đặt một biến trong dấu nhắc lệnh là:
$ a=1
bây giờ tôi muốn xóa biến $a
(và nhiều biến khác được định nghĩa theo cách tương tự) mà không đóng terminal. Tôi có thể sử dụng unset
nhưng nó sẽ rất bận rộn nếu không có lớn. của các biến
$var
và var=$(declare -p +F);
sau đó chuyển nó thành một đối số cho một hàm mà echo "${2%%=*}".
câu trả lời đó có một vài vấn đề với kích thước tuyệt đối - nhưng nó sẽ hoạt động nếu môi trường của bạn không lớn.
exec "$0"
có thể - nhưng thật khó để nói ý của bạn trên toàn cầu .