Путь: Toys/POSIX, команды версии: Ver.4 Ver.9
Комментарии в файле uname.c :
Команд: 3
arch
usage: arch
Напечатать имя машины (аппаратного обеспечения), то же, что и uname -m.
usage: arch
Print machine (hardware) name, same as uname -m.
linux32
usage: linux32 [COMMAND...]
Скажите uname -m, чтобы указать autoconf (для сборки 32-битных двоичных файлов на 64-битном ядре).
usage: linux32 [COMMAND...]
Tell uname -m to line to autoconf (to build 32 bit binaries on 64 bit kernel).
uname
usage: uname [-asnrvm]
Печать информации о системе.
-s Имя системы
-n Сетевое (доменное) имя Ядро
-r Номер
-v версии ядра Версия ядра
-m Имя компьютера (аппаратного обеспечения) Тип
-o пространства пользователя
-a Все вышеперечисленное (по порядку)
usage: uname [-asnrvm]
Print system information.
-s System name
-n Network (domain) name
-r Kernel Release number
-v Kernel Version
-m Machine (hardware) name
-o Userspace type
-a All of the above (in order)
Исходный текст в файле uname.c
#define FOR_uname
#define FORCE_FLAGS
#include "toys.h"
void uname_main(void)
{
int i, needspace = 0;
char *c;
uname((void *)toybuf);
if (!toys.optflags) toys.optflags = FLAG_s;
for (i=0; i<6; i++) if (toys.optflags & ((1<<i)|FLAG_a)) {
if (i==5) c = " Toybox"+!needspace;
else {
c = toybuf+sizeof(((struct utsname *)0)->sysname)*i;
if (needspace++) *(--c)=' '; // Can't decrement first entry
}
xputsn(c);
}
if (FLAG(p)) xputsn(" unknown"+!needspace);
xputc('\n');
}
void arch_main(void)
{
toys.optflags = FLAG_m;
uname_main();
}
void linux32_main(void)
{
personality(PER_LINUX32);
xexec(toys.optc ? toys.optargs : (char *[]){"/bin/sh", 0});
}