Rev 3245 | Rev 3268 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
3245 | Albom | 1 | |
3247 | Albom | 2 | * Простая обработка ошибок внутренних команд |
3 | * Команда killall трансформирована в параметр all команды kill |
||
4 | * Изменена кодировка файла History.txt с 1251 на 866 |
||
5 | |||
6 | |||
7 | |||
3245 | Albom | 8 | + Добавлена возможность запускать программы, имена которых или путь к которым содержат пробелы. Имя программы (возможно с путём к ней) для этого необходимо заключать в кавычки. Т.е. наконец-то можно запустить программу из /rd/1/File managers, не переходя в неё |
3247 | Albom | 9 | + Добавлена функция разделения строковой переменной на int argc, char* argv[], что означает возможность улучшения команд (обработка нескольких параметров) |
10 | + Добавлена команда cp (копирование файла). Принимает обязательно два параметра - имя файла-источника и имя файла-результата. Имена могут быть краткими (в текущем каталоге), так и с полным путём (должны начинаться с /). Ограничение на размер файла - 4 Гбайта |
||
11 | * Исправлена кодировка в сообщении об ошибке в консольном приложении |
||
12 | * Клавиши истории (вверх и вниз) поменяны между собой |
||
13 | * Количество команд в истории увеличено с пяти до десяти |
||
14 | * Уменьшено количество предупреждений при компиляции |
||
15 | * Команда ccpuid преобразована в параметр cpu команды ver |
||
16 | * Исправления в пакетных файлах сборки |
||
17 | + Добавлен пример консольного приложения на ассемблере и пакетный файл для его сборки |
||
18 | |||
3245 | Albom | 19 | |
20 | |||
2735 | Albom | 21 | ======================================= |
22 | * Исправлен интерфейс исполняемых консольных приложений. Теперь они должны создавать буфер с именем pid-SHELL, где pid - идентификатор процесса без заглавных нулей |
||
3247 | Albom | 23 | * Реинкарнированы команды ccpuid, free, killall |
24 | + Добавлена команда history |
||
25 | |||
2735 | Albom | 26 | |
27 | |||
28 | ======================================= |
||
29 | * Исправление в команде pwd |
||
3247 | Albom | 30 | |
2735 | Albom | 31 | |
32 | |||
2617 | Albom | 33 | ======================================= |
34 | * Исправление в команде ls |
||
3247 | Albom | 35 | * Незначительные другие исправления |
36 | |||
2617 | Albom | 37 | |
38 | |||
2615 | Albom | 39 | ======================================= |
40 | * Некоторые незначительные исправления |
||
3247 | Albom | 41 | |
2615 | Albom | 42 | |
43 | |||
2502 | Albom | 44 | ======================================= |
45 | * Добавлена поддержка консольных приложений, которые общаются с шеллом через именованную область |
||
3247 | Albom | 46 | |
2502 | Albom | 47 | |
48 | |||
1807 | Albom | 49 | ======================================= |
2502 | Albom | 50 | * Временно удалены команды killall и ccpuid (чтобы вернуть, необходимо раскомментировать 2 строчки) |
3247 | Albom | 51 | * Исправления в текстовых строках |
52 | |||
1807 | Albom | 53 | |
2502 | Albom | 54 | |
1673 | Nasarus | 55 | ======================================= |
56 | * Добавлена команда "killall" - убивает все процессы кроме OS/IDLE. |
||
3247 | Albom | 57 | * Фиксы |
58 | |||
1670 | Nasarus | 59 | |
2502 | Albom | 60 | |
1673 | Nasarus | 61 | ======================================= |
62 | * Команда "turnoff" переименована в "shutdown", "kerver" удалена - теперь её заменяет "ver kernel"; фиксы. |
||
3247 | Albom | 63 | |
1673 | Nasarus | 64 | |
2502 | Albom | 65 | |
1668 | Nasarus | 66 | ======================================= |
67 | Программа теперь многоязыковая (английский, и русский язык). Программа полностью русифицированна. |
||
3247 | Albom | 68 | * Команда "free" переименована в "memory" - для точности. |
69 | * Добавлены команды turnoff (выключить компьютер), kerver (версия ядра KolibriOS), uptime; reboot теперь может перезагружать ядро ("reboot kernel") |
||
70 | |||
1668 | Nasarus | 71 | |
2502 | Albom | 72 | |
1668 | Nasarus | 73 | ======================================= |
74 | 1) шелл корректно завершается при закрытии окна |
||
3247 | Albom | 75 | 2) исправлено ещё 2 ошибки |
76 | 3) добавлены 2 команды: |
||
77 | * sleep - ждать. параметр - время в сотых частях секунды. только целое число. |
||
78 | * ccpuid - вывод в консоль информации (пока скудно) о процессоре. пользы мало, но давно хотел с командой cpuid разобраться (в следующем семестре буду студентам курс читать, включил разбор команды в программу). |
||
79 | |||
1668 | Nasarus | 80 | |
3247 | Albom | 81 | 1) добавить переменную (одну!), в которую будет результат в текстовой форме (не то что возвращает функция) записываться. с ней можно будет работать из командной строки |
82 | 2) внедрить простую стековую машину для вычислений с вещественными числами |
||
83 | |||
1668 | Nasarus | 84 | |
2502 | Albom | 85 | |
1668 | Nasarus | 86 | ======================================= |
87 | * Смесь версий 0.4.1 и 0.4.2. Теперь в архиве все исходные файлы, необходимые для компиляции (раньше использовались объектники с моими обёртками, исходники я с шеллом не выкладывал) |
||
3247 | Albom | 88 | |
1668 | Nasarus | 89 | |
2502 | Albom | 90 | |
1668 | Nasarus | 91 | ======================================= |
92 | * Добавил корректное завершение работы при закрытии окна консоли, работает только начиная с последней на данный момент версией библиотеки (лежит на svn, включена в ночную сборку). Перекомпилировал в VS2008 с LTCG, ещё пошаманил с оптимизацией по размеру |
||
3247 | Albom | 93 | |
1668 | Nasarus | 94 | |
2502 | Albom | 95 | |
1668 | Nasarus | 96 | ======================================= |
97 | * версия с исправленными ошибками. |
||
3247 | Albom | 98 | * работает команда alias, добавлена команда clear. |
99 | |||
1668 | Nasarus | 100 | |
2502 | Albom | 101 | |
1668 | Nasarus | 102 | ======================================= |
103 | 1) Работает схема псевдонимов (до 256 команд) |
||
3247 | Albom | 104 | - просмотр по команде alias (без параметров) |
105 | - добавление псевдонима команды с клавиатуры или в скрипте (в том числе и .shell): alias новая команда = старая команда |
||
106 | - команды регистрозависимые, поэтому поклонникам ДОС придётся внести в .shell строки такого вида |
||
107 | alias dir = ls |
||
1668 | Nasarus | 108 | alias DIR = ls |
109 | alias Dir = ls |
||
110 | alias DIr = ls |
||
111 | и т.д. |
||
3247 | Albom | 112 | - встроенные команды переназвать невозможно, например, бессмысленна команда: |
113 | alias ls=somecommand |
||
1668 | Nasarus | 114 | - при отладке получал странную информацию, но так как у меня всё работает, то пока изменений вносить не планирую |
3247 | Albom | 115 | |
1668 | Nasarus | 116 | |
3247 | Albom | 117 | - синтаксис: |
118 | shell команда |
||
119 | - пример: |
||
120 | shell /sys/somescript |
||
1668 | Nasarus | 121 | - при этом .shell не запускается |
3247 | Albom | 122 | |
1668 | Nasarus | 123 | |
3247 | Albom | 124 | - просмотр текстовых и бинарных файлов (вроде бы задача простая, но пришлось повозиться с управляющими символами) |
125 | - очень не рекомендуется просматривать большие файлы |
||
126 | |||
1668 | Nasarus | 127 | |
2502 | Albom | 128 | |
1668 | Nasarus | 129 | ======================================= |
130 | 1) Возможность запуска скриптов |
||
3247 | Albom | 131 | * каждая строка должна представляет собой команду |
132 | * строкой считается набор символов, который заканчивается CR+LF (Windows) или LF(UNIX) или CR(Mac) |
||
133 | * если строка начинается с #, то вся строка (т.е. комментарий) игнорируется |
||
134 | * скрипт должен начитаться с #SHS |
||
135 | * при запуске шелла автоматически запускается скрипт .shell |
||
136 | |||
1668 | Nasarus | 137 | |
3247 | Albom | 138 | * перемещение по истории - UP/DOWN |
139 | |||
1668 | Nasarus | 140 | |
3247 | Albom | 141 | * до 256 (можно изменить при компиляции) синонимов |
142 | * пока работает только добавление и просмотр синонимов, а отработка пока не реализована |
||
143 | |||
1668 | Nasarus | 144 | |
2502 | Albom | 145 | |
1668 | Nasarus | 146 | ======================================= |
147 | * добавил новые функции |
||
3247 | Albom | 148 | * написал собственную процедуру ввода команды |
149 | |||
1668 | Nasarus | 150 | |
2502 | Albom | 151 | |
1668 | Nasarus | 152 | ======================================= |
153 | * Добавил команды free и reboot, внёс некоторые изменения, исправил найденные ошибки |
||
3247 | Albom | 154 | |
1668 | Nasarus | 155 | |
2502 | Albom | 156 | |
1668 | Nasarus | 157 | ======================================= |
158 | * Реализованы (не полностью) команды: about, cd, date, echo, exit, help, kill, ls, ps, pwd, ver |
||
3247 | Albom | 159 | * При запуске программы (если не указан полный путь) она ищется в каталоге /rd/1 и текущем каталоге |
160 | |||
1668 | Nasarus | 161 | |
2502 | Albom | 162 | |
1668 | Nasarus | 163 | ======================================= |
164 | * Реализовал команды: |
||
3247 | Albom | 165 | exit - выход |
166 | ls (с параметром и без) - вывод списка директории |
||
167 | pwd - текущий каталог |
||
168 | ps - список процессов и их PID |
||
169 | kill - завершить процесс по PID |
||
170 | help (с параметром и без) - помощь |
||
171 | |||
1668 | Nasarus | 172 | |
2502 | Albom | 173 | |
1668 | Nasarus | 174 | ======================================= |
175 | * Решил написать функциональный шелл на Си с использованием console.obj |
||
3247 | Albom | 176 | * Пока сделал функцию отделения команды и параметров, а также реализовал команды help (пока без параметров), ver и exit |
177 |