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