run 함수는 충분히 강력하므로 출력 구문 분석에 전적으로 의존하여 시스템에 대한 정보를 가져오려고 할 수도 있습니다. 그러나 이렇게 하면 앞으로 변경되거나 변경되지 않을 수 있으며 사람이 읽을 수 있는 출력을 구문 분석하는 스크립트가 남는다는 명확한 단점이 있습니다. 시스템에 대한 정보를 보다 강력하게 수집하려면 내장 "get" 함수를 사용합니다. boot_time 등록 정보의 경우 이는 문자열 대신 ECMAScript Date 객체를 반환하여 등록 정보 값을 프로그래밍적으로 조작할 수 있게 됩니다.
script run('configuration version'); now = new Date(); uptime = (now.valueOf() - get('boot_time').valueOf()) / 1000; printf('up %d day%s, %d hour%s, %d minute%s, %d second%s\n', d = uptime / 86400, d < 1 || d >= 2 ? 's' : '', h = (uptime / 3600) % 24, h < 1 || h >= 2 ? 's': '', m = (uptime / 60) % 60, m < 1 || m >= 2 ? 's': '', s = uptime % 60, s < 1 || s >= 2 ? 's': '');
% ssh root@dory < uptime.aksh Pseudo-terminal will not be allocated because stdin is not a terminal. Password: up 2 days, 10 hours, 47 minutes, 48 seconds
의사 단말기 할당에 대한 메시지는 SSH 클라이언트 때문입니다. 이 메시지가 나타내는 문제는 SSH에 "-T" 옵션을 지정하여 처리할 수 있습니다.