Has this been attempted?
Да. Не только пытались, но и сделали . Существует интерактивная оболочка, в которой конвейеры (внутри -оболочки )представляют собой потоки объектов, а не потоки байтов, и где переменные оболочки представляют собой объекты с доступными свойствами, не требующими синтаксического анализа структурированного текста или разделителей полей.
% uptime | awk '{print $3;}' 2 % % pwsh PowerShell 6.2.0 Copyright (c) Microsoft Corporation. All rights reserved. https://aka.ms/pscore6-docs Type 'help' to get help. PS /var/lib/dpkg> (Get-Uptime).TotalDays 2.98334490740741 PS /var/lib/dpkg> $U = Get-Uptime PS /var/lib/dpkg> echo $U.TotalDays 2.98353009259259 PS /var/lib/dpkg> exit %Вы отстали от мысли вернуться к этому на десятилетия. Этот конкретный пример — не первый случай, когда люди думают о переделке оболочки командной строки -. У М. Уолл и М. Джой, среди прочих, были некоторые мысли по этому поводу несколько десятилетий назад.
% tcsh /var/lib/dpkg> set u=(`uptime`) /var/lib/dpkg> echo $u[3] 2 /var/lib/dpkg> exit exit % % perl << "." $U = `uptime`; $U =~ /.*?up (.*?) /; print "$1\n"; . 2 %Ошибки в вашем мышлении:
- Что такого рода вещи делаются, придираясь к другим людям.
- Инструменты GNU со всеми их существующими нестандартными -расширениями являются стандартом.
- У вас есть только один набор инструментов.
Дополнительная литература