Subversion Repositories Kolibri OS

Rev

Rev 7024 | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 7024 Rev 8827
-
 
1
Shell 0.8.2 // 13.06.2021 // rgimad
-
 
2
* use libj.obj instead of built-in "libc"
-
 
3
* big refactoring:
-
 
4
  - fix indentation
-
 
5
  - string constants moved to locale/.../globals.h files
-
 
6
* add new command - kfetch
-
 
7
  it is like neofetch for KolibriOS
-
 
8
  prints logo and main system information.
-
 
9
* other fixes
-
 
10
 
-
 
11
Shell 0.8.1 // 14.04.2020 - 01.04.2021 // rgimad, turbocat, Kenshin
-
 
12
  rgimad:
-
 
13
* fixed bug with ctrl+v
-
 
14
* added navigation in current string by Home, End
-
 
15
* directory highlighting in ls command output
-
 
16
* Now for incorrect scripts (which doesnt start with #SHS) shell says
-
 
17
  that they are incorrect, not "File not found".
-
 
18
  Also, translated comments from russian to english in two files.
-
 
19
* added mv command
-
 
20
* added ren command
-
 
21
* now ls works also with relative pathes
-
 
22
* fixed bug in strrchr
-
 
23
* fixed bug with cd ../
-
 
24
* fixed cd . and cd ./ behavior
-
 
25
* added output redirection to file (> >>) for echo command
-
 
26
  e.g. echo "">123.txt ; echo a b c >> y.txt
-
 
27
 
-
 
28
  turbocat:
-
 
29
* Added new API: SC_GET_PID
-
 
30
* Fixed data type pid - unsigned int.
-
 
31
* Fixed cmd_ps output pid;
-
 
32
* Added new SC_PING api
-
 
33
* Renamed from SC_GET_PID to SC_PID
-
 
34
* added pkill command
-
 
35
 
-
 
36
  Kenshin:
-
 
37
* shell.inc now suports sc_ping & sc_pid functions
-
 
38
* update docs
-
 
39
 
1
Shell 0.7.7 // 06.02.2017 // Leency
40
Shell 0.7.7 // 06.02.2017 // Leency
2
* help ⥯¥àì ¢ë¢®¤¨â ᯨ᮪ ª®¬¬ ­¤ ¢ âਠª®«®­ª¨
41
* help теперь выводит список комманд в три колонки
3
* ps ⥯¥àì ¢ë¢®¤¨â à §¬¥à Ž‡“, ¨á¯®«ì§ã¥¬ë© ¯à®æ¥áᮬ
42
* ps теперь выводит размер ОЗУ, используемый процессом
4
* ls ⥯¥àì ¢ë¢®¤¨â ¢á¥ ä ©«ë ­¥ ¢ ®¤­ã,   ¢ ­¥áª®«ìª® ª®«®­®ª
43
* ls теперь выводит все файлы не в одну, а в несколько колонок
5
  à §¬¥à ª®«®­®ª à áç¨â뢠¥âáï ¨áå®¤ï ¨§ á ¬®£® ¤«¨­­®£® ¨¬¥­¨ ä ©«  ¢ ¯ ¯ª¥
44
  размер колонок расчитывается исходя из самого длинного имени файла в папке
6
  áâ àë© ¢ë¢®¤ ᯨ᪮¬ ¯® ¯à¥¦­¥¬ã ¤®áâ㯥­ ç¥à¥§ ª«îç '-1'
45
  старый вывод списком по прежнему доступен через ключ '-1'
7
 
46
 
8
Shell 0.7.6 // 06.02.2017 // Siemargl
47
Shell 0.7.6 // 06.02.2017 // Siemargl
9
* ” ©«®¢ë¥ ®¯¥à æ¨¨ ¨á¯®«ì§ãîâ 64-bit à §¬¥àë ä ©«®¢.
48
* Файловые операции используют 64-bit размеры файлов.
10
  cp   ⥯¥àì ¯®­¨¬ ¥â, ¥á«¨  - ª â «®£
49
  cp   теперь понимает, если  - каталог
11
  cp ¨á¯®«ì§ã¥â ¡ãä¥à 1Œ¡, ¨«¨ ­¥ ¡®«¥¥ ¯®«®¢¨­ë ᢮¡®¤­®© ¯ ¬ï⨠
50
  cp использует буфер 1Мб, или не более половины свободной памяти 
12
 
51
 
13
Shell 0.7.5 // 06.01.2017 // Siemargl
52
Shell 0.7.5 // 06.01.2017 // Siemargl
14
* Œ¥«ª¨¥ ¡ £ä¨ªáë, ¨§¬¥­¥­  «®£¨ª  ®¡à ¡®âª¨ áâ५®ª ¢¢¥àå/¢­¨§, çâ®¡ë ª ª ã ¢á¥å
53
* Мелкие багфиксы, изменена логика обработки стрелок вверх/вниз, чтобы как у всех
15
  „®¡ ¢«¥­  ª®¬ ­¤  waitfor ¨ ¢ à¨ ­â ps á ¯ à ¬¥â஬
54
  Добавлена команда waitfor и вариант ps с параметром
16
 
55
 
17
Shell 0.7.4 // 23.01.2014 // Albom
56
Shell 0.7.4 // 23.01.2014 // Albom
18
*  ¡®â  á ¡ãä¥à®¬ ®¡¬¥­  (ª®¯¨à®¢ ­¨¥ Ctrl+C ¨ ¢áâ ¢ª  Ctrl+V áâப¨ 楫¨ª®¬)
57
* Работа с буфером обмена (копирование Ctrl+C и вставка Ctrl+V строки целиком)
19
 
58
 
20
 
59
 
21
Shell 0.7.3 // 28.11.2013 // Albom
60
Shell 0.7.3 // 28.11.2013 // Albom
22
* ˆá¯à ¢«¥­  ®è¨¡ª  á ᨬ¢®«®¬ % ¢ ¨áâ®à¨¨ ª®¬ ­¤
61
* Исправлена ошибка с символом % в истории команд
23
 
62
 
24
 
63
 
25
Shell 0.7.2 // 26.10.2013 // Albom
64
Shell 0.7.2 // 26.10.2013 // Albom
26
* ” ©« .shell ¯¥à¥­¥á¥­ ¢ /sys/settings/
65
* Файл .shell перенесен в /sys/settings/
27
* ˆá¯à ¢«¥­  ª®¬ ­¤  "cd .."
66
* Исправлена команда "cd .."
28
 
67
 
29
 
68
 
30
Shell 0.7.1 // 19.10.2013 // Albom
69
Shell 0.7.1 // 19.10.2013 // Albom
31
* ˆá¯à ¢«¥­  ®è¨¡ª , á¢ï§ ­­ ï á § ¢¨á ­¨¥¬ ¯à¨ ¯®¯ë⪥ ç⥭¨ï ¯ãá⮩ ¨áâ®à¨¨ ª®¬ ­¤ (¯® ª« ¢¨è ¬ Up ¨ Down)
70
* Исправлена ошибка, связанная с зависанием при попытке чтения пустой истории команд (по клавишам Up и Down)
32
 
71
 
33
 
72
 
34
Shell 0.7.0 // 13.10.2013 // Albom
73
Shell 0.7.0 // 13.10.2013 // Albom
35
* ¥à¥à ¡®â ­ ¬®¤ã«ì ¢¢®¤  ª®¬ ­¤ë (¤®¡ ¢«¥­  ®¡à ¡®âª  ª« ¢¨è "¢«¥¢®", "¢¯à ¢®", Del)
74
* Переработан модуль ввода команды (добавлена обработка клавиш "влево", "вправо", Del)
36
* Œ¥«ª¨¥ ¨á¯à ¢«¥­¨ï
75
* Мелкие исправления
37
 
76
 
38
 
77
 
39
Shell 0.6.4 // 09.10.2013 // Leency
78
Shell 0.6.4 // 09.10.2013 // Leency
40
* ®¤¤¥à¦ª  ®â­®á¨â¥«ì­ëå ¯ã⥩ ¢ áªà¨¯â å
79
* Поддержка относительных путей в скриптах
41
 
80
 
42
 
81
 
43
Shell 0.6.3 // 20.09.2013 // Albom
82
Shell 0.6.3 // 20.09.2013 // Albom
44
* msvc-style  âਡãâë ¤«ï ®âª«î祭¨ï ¢ëà ¢­¨¢ ­¨ï ¢ áâàãªâãà å (ᯠᨡ® CleverMouse ¨ Kirakishou!)
83
* msvc-style атрибуты для отключения выравнивания в структурах (спасибо CleverMouse и Kirakishou!)
45
 
84
 
46
 
85
 
47
Shell 0.6.2 // 24.02.2013 // Albom
86
Shell 0.6.2 // 24.02.2013 // Albom
48
* „®¡ ¢«¥­  ®¡à ¡®âª  ã¯à ¢«ïîé¨å ᨬ¢®«®¢ (\n, \t, \", \', \\, \?)
87
* Добавлена обработка управляющих символов (\n, \t, \", \', \\, \?)
49
* Œ¥«ª¨¥ ¨á¯à ¢«¥­¨ï
88
* Мелкие исправления
50
 
89
 
51
 
90
 
52
Shell 0.6.1 // 17.02.2013 // Albom
91
Shell 0.6.1 // 17.02.2013 // Albom
53
* à®áâ ï ®¡à ¡®âª  ®è¨¡®ª ¢­ãâ७­¨å ª®¬ ­¤
92
* Простая обработка ошибок внутренних команд
54
* Š®¬ ­¤  killall âà ­áä®à¬¨à®¢ ­  ¢ ¯ à ¬¥âà all ª®¬ ­¤ë kill
93
* Команда killall трансформирована в параметр all команды kill
55
* ˆ§¬¥­¥­  ª®¤¨à®¢ª  ä ©«  History.txt á 1251 ­  866
94
* Изменена кодировка файла History.txt с 1251 на 866
56
 
95
 
57
 
96
 
58
Shell 0.6 // 16.02.2013 // Albom
97
Shell 0.6 // 16.02.2013 // Albom
59
+ „®¡ ¢«¥­  ¢®§¬®¦­®áâì § ¯ã᪠âì ¯à®£à ¬¬ë, ¨¬¥­  ª®â®àëå ¨«¨ ¯ãâì ª ª®â®àë¬ á®¤¥à¦ â ¯à®¡¥«ë. ˆ¬ï ¯à®£à ¬¬ë (¢®§¬®¦­® á ¯ãâñ¬ ª ­¥©) ¤«ï í⮣® ­¥®¡å®¤¨¬® § ª«îç âì ¢ ª ¢ë窨. ’.¥. ­ ª®­¥æ-â® ¬®¦­® § ¯ãáâ¨âì ¯à®£à ¬¬ã ¨§ /rd/1/File managers, ­¥ ¯¥à¥å®¤ï ¢ ­¥ñ
98
+ Добавлена возможность запускать программы, имена которых или путь к которым содержат пробелы. Имя программы (возможно с путём к ней) для этого необходимо заключать в кавычки. Т.е. наконец-то можно запустить программу из /rd/1/File managers, не переходя в неё
60
+ „®¡ ¢«¥­  äã­ªæ¨ï à §¤¥«¥­¨ï áâப®¢®© ¯¥à¥¬¥­­®© ­  int argc, char* argv[], çâ® ®§­ ç ¥â ¢®§¬®¦­®áâì ã«ãç襭¨ï ª®¬ ­¤ (®¡à ¡®âª  ­¥áª®«ìª¨å ¯ à ¬¥â஢)
99
+ Добавлена функция разделения строковой переменной на int argc, char* argv[], что означает возможность улучшения команд (обработка нескольких параметров)
61
+ „®¡ ¢«¥­  ª®¬ ­¤  cp (ª®¯¨à®¢ ­¨¥ ä ©« ). à¨­¨¬ ¥â ®¡ï§ â¥«ì­® ¤¢  ¯ à ¬¥âà  - ¨¬ï ä ©« -¨áâ®ç­¨ª  ¨ ¨¬ï ä ©« -१ã«ìâ â . ˆ¬¥­  ¬®£ãâ ¡ëâì ªà âª¨¬¨ (¢ ⥪ã饬 ª â «®£¥), â ª ¨ á ¯®«­ë¬ ¯ãâñ¬ (¤®«¦­ë ­ ç¨­ âìáï á /). Ž£à ­¨ç¥­¨¥ ­  à §¬¥à ä ©«  - 4 ƒ¡ ©â 
100
+ Добавлена команда cp (копирование файла). Принимает обязательно два параметра - имя файла-источника и имя файла-результата. Имена могут быть краткими (в текущем каталоге), так и с полным путём (должны начинаться с /). Ограничение на размер файла - 4 Гбайта
62
* ˆá¯à ¢«¥­  ª®¤¨à®¢ª  ¢ á®®¡é¥­¨¨ ®¡ ®è¨¡ª¥ ¢ ª®­á®«ì­®¬ ¯à¨«®¦¥­¨¨
101
* Исправлена кодировка в сообщении об ошибке в консольном приложении
63
* Š« ¢¨è¨ ¨áâ®à¨¨ (¢¢¥àå ¨ ¢­¨§) ¯®¬¥­ï­ë ¬¥¦¤ã ᮡ®©
102
* Клавиши истории (вверх и вниз) поменяны между собой
64
* Š®«¨ç¥á⢮ ª®¬ ­¤ ¢ ¨áâ®à¨¨ 㢥«¨ç¥­® á ¯ï⨠¤® ¤¥áïâ¨
103
* Количество команд в истории увеличено с пяти до десяти
65
* “¬¥­ì襭® ª®«¨ç¥á⢮ ¯à¥¤ã¯à¥¦¤¥­¨© ¯à¨ ª®¬¯¨«ï樨
104
* Уменьшено количество предупреждений при компиляции
66
* Š®¬ ­¤  ccpuid ¯à¥®¡à §®¢ ­  ¢ ¯ à ¬¥âà cpu ª®¬ ­¤ë ver
105
* Команда ccpuid преобразована в параметр cpu команды ver
67
* ˆá¯à ¢«¥­¨ï ¢ ¯ ª¥â­ëå ä ©« å ᡮન
106
* Исправления в пакетных файлах сборки
68
+ „®¡ ¢«¥­ ¯à¨¬¥à ª®­á®«ì­®£® ¯à¨«®¦¥­¨ï ­   áᥬ¡«¥à¥ ¨ ¯ ª¥â­ë© ä ©« ¤«ï ¥£® ᡮન
107
+ Добавлен пример консольного приложения на ассемблере и пакетный файл для его сборки
69
 
108
 
70
 
109
 
71
Shell 0.5.4 // 04.06.2012 // Albom
110
Shell 0.5.4 // 04.06.2012 // Albom
72
=======================================
111
=======================================
73
* ˆá¯à ¢«¥­ ¨­â¥àä¥©á ¨á¯®«­ï¥¬ëå ª®­á®«ì­ëå ¯à¨«®¦¥­¨©. ’¥¯¥àì ®­¨ ¤®«¦­ë ᮧ¤ ¢ âì ¡ãä¥à á ¨¬¥­¥¬ pid-SHELL, £¤¥ pid - ¨¤¥­â¨ä¨ª â®à ¯à®æ¥áá  ¡¥§ § £« ¢­ëå ­ã«¥©
112
* Исправлен интерфейс исполняемых консольных приложений. Теперь они должны создавать буфер с именем pid-SHELL, где pid - идентификатор процесса без заглавных нулей
74
* ¥¨­ª à­¨à®¢ ­ë ª®¬ ­¤ë ccpuid, free, killall
113
* Реинкарнированы команды ccpuid, free, killall
75
+ „®¡ ¢«¥­  ª®¬ ­¤  history 
114
+ Добавлена команда history 
76
 
115
 
77
 
116
 
78
Shell 0.5.3 // 19.04.2012 // Albom
117
Shell 0.5.3 // 19.04.2012 // Albom
79
=======================================
118
=======================================
80
* ˆá¯à ¢«¥­¨¥ ¢ ª®¬ ­¤¥ pwd 
119
* Исправление в команде pwd 
81
 
120
 
82
 
121
 
83
Shell 0.5.2 // 16.04.2012 // Albom
122
Shell 0.5.2 // 16.04.2012 // Albom
84
=======================================
123
=======================================
85
* ˆá¯à ¢«¥­¨¥ ¢ ª®¬ ­¤¥ ls 
124
* Исправление в команде ls 
86
* ¥§­ ç¨â¥«ì­ë¥ ¤à㣨¥ ¨á¯à ¢«¥­¨ï 
125
* Незначительные другие исправления 
87
 
126
 
88
 
127
 
89
Shell 0.5.1 // 15.04.2012 // Albom
128
Shell 0.5.1 // 15.04.2012 // Albom
90
=======================================
129
=======================================
91
* ¥ª®â®àë¥ ­¥§­ ç¨â¥«ì­ë¥ ¨á¯à ¢«¥­¨ï
130
* Некоторые незначительные исправления
92
 
131
 
93
 
132
 
94
Shell 0.5 // 23.03.2012 // Albom
133
Shell 0.5 // 23.03.2012 // Albom
95
=======================================
134
=======================================
96
* „®¡ ¢«¥­  ¯®¤¤¥à¦ª  ª®­á®«ì­ëå ¯à¨«®¦¥­¨©, ª®â®àë¥ ®¡é îâáï á 襫«®¬ ç¥à¥§ ¨¬¥­®¢ ­­ãî ®¡« áâì
135
* Добавлена поддержка консольных приложений, которые общаются с шеллом через именованную область
97
 
136
 
98
 
137
 
99
Shell 0.4.6 // 30.01.2011 // Albom
138
Shell 0.4.6 // 30.01.2011 // Albom
100
=======================================
139
=======================================
101
* ‚६¥­­® 㤠«¥­ë ª®¬ ­¤ë killall ¨ ccpuid (çâ®¡ë ¢¥à­ãâì, ­¥®¡å®¤¨¬® à áª®¬¬¥­â¨à®¢ âì 2 áâà®çª¨)
140
* Временно удалены команды killall и ccpuid (чтобы вернуть, необходимо раскомментировать 2 строчки)
102
* ˆá¯à ¢«¥­¨ï ¢ ⥪á⮢ëå áâப å
141
* Исправления в текстовых строках
103
 
142
 
104
 
143
 
105
Shell 0.4.52 // 25.10.2010 // Pterox
144
Shell 0.4.52 // 25.10.2010 // Pterox
106
=======================================
145
=======================================
107
* „®¡ ¢«¥­  ª®¬ ­¤  "killall" - 㡨¢ ¥â ¢á¥ ¯à®æ¥ááë ªà®¬¥ OS/IDLE.
146
* Добавлена команда "killall" - убивает все процессы кроме OS/IDLE.
108
* ”¨ªáë
147
* Фиксы
109
 
148
 
110
 
149
 
111
Shell 0.4.51 // 21.10.2010 // Pterox
150
Shell 0.4.51 // 21.10.2010 // Pterox
112
=======================================
151
=======================================
113
* Š®¬ ­¤  "turnoff" ¯¥à¥¨¬¥­®¢ ­  ¢ "shutdown", "kerver" 㤠«¥­  - ⥯¥àì ¥ñ § ¬¥­ï¥â "ver kernel"; 䨪áë.
152
* Команда "turnoff" переименована в "shutdown", "kerver" удалена - теперь её заменяет "ver kernel"; фиксы.
114
 
153
 
115
 
154
 
116
Shell 0.4.5 // 19.10.2010 // Pterox
155
Shell 0.4.5 // 19.10.2010 // Pterox
117
=======================================
156
=======================================
118
à®£à ¬¬  ⥯¥àì ¬­®£®ï§ëª®¢ ï ( ­£«¨©áª¨©, ¨ àãá᪨© ï§ëª). à®£à ¬¬  ¯®«­®áâìî àãá¨ä¨æ¨à®¢ ­­ .
157
Программа теперь многоязыковая (английский, и русский язык). Программа полностью русифицированна.
119
* Š®¬ ­¤  "free" ¯¥à¥¨¬¥­®¢ ­  ¢ "memory" - ¤«ï â®ç­®áâ¨.
158
* Команда "free" переименована в "memory" - для точности.
120
* „®¡ ¢«¥­ë ª®¬ ­¤ë turnoff (¢ëª«îç¨âì ª®¬¯ìîâ¥à), kerver (¢¥àá¨ï ï¤à  KolibriOS), uptime; reboot ⥯¥àì ¬®¦¥â ¯¥à¥§ £à㦠âì ï¤à® ("reboot kernel")
159
* Добавлены команды turnoff (выключить компьютер), kerver (версия ядра KolibriOS), uptime; reboot теперь может перезагружать ядро ("reboot kernel")
121
 
160
 
122
 
161
 
123
Shell 0.4.4 // 20.08.2010 // Albom
162
Shell 0.4.4 // 20.08.2010 // Albom
124
=======================================
163
=======================================
125
1) 襫« ª®à४⭮ § ¢¥àè ¥âáï ¯à¨ § ªàë⨨ ®ª­ 
164
1) шелл корректно завершается при закрытии окна
126
2) ¨á¯à ¢«¥­® ¥éñ 2 ®è¨¡ª¨
165
2) исправлено ещё 2 ошибки
127
3) ¤®¡ ¢«¥­ë 2 ª®¬ ­¤ë:
166
3) добавлены 2 команды:
128
* sleep - ¦¤ âì. ¯ à ¬¥âà - ¢à¥¬ï ¢ á®âëå ç áâïå ᥪ㭤ë. ⮫쪮 楫®¥ ç¨á«®. 
167
* sleep - ждать. параметр - время в сотых частях секунды. только целое число. 
129
* ccpuid - ¢ë¢®¤ ¢ ª®­á®«ì ¨­ä®à¬ æ¨¨ (¯®ª  áªã¤­®) ® ¯à®æ¥áá®à¥. ¯®«ì§ë ¬ «®, ­® ¤ ¢­® å®â¥« á ª®¬ ­¤®© cpuid à §®¡à âìáï (¢ á«¥¤ãî饬 ᥬ¥áâॠ¡ã¤ã áâ㤥­â ¬ ªãàá ç¨â âì, ¢ª«î稫 à §¡®à ª®¬ ­¤ë ¢ ¯à®£à ¬¬ã).
168
* ccpuid - вывод в консоль информации (пока скудно) о процессоре. пользы мало, но давно хотел с командой cpuid разобраться (в следующем семестре буду студентам курс читать, включил разбор команды в программу).
130
 
169
 
131
¥áâì ¬­®£® ¨¤¥©. ­¥ª®â®àë¥ «¥£ª® ॠ«¨§ãîâáï, ­¥ª®â®àë¥ á«®¦­¥¥. ¥á«¨ ¨­â¥à¥á­®: 
-
 
132
1) ¤®¡ ¢¨âì ¯¥à¥¬¥­­ãî (®¤­ã!), ¢ ª®â®àãî ¡ã¤¥â १ã«ìâ â ¢ ⥪á⮢®© ä®à¬¥ (­¥ â® çâ® ¢®§¢à é ¥â äã­ªæ¨ï) § ¯¨á뢠âìáï. á ­¥© ¬®¦­® ¡ã¤¥â à ¡®â âì ¨§ ª®¬ ­¤­®© áâப¨
170
есть много идей. некоторые легко реализуются, некоторые сложнее. если интересно: 
133
2) ¢­¥¤à¨âì ¯à®áâãî á⥪®¢ãî ¬ è¨­ã ¤«ï ¢ëç¨á«¥­¨© á ¢¥é¥á⢥­­ë¬¨ ç¨á« ¬¨
171
1) добавить переменную (одну!), в которую будет результат в текстовой форме (не то что возвращает функция) записываться. с ней можно будет работать из командной строки
-
 
172
2) внедрить простую стековую машину для вычислений с вещественными числами
134
 
173
 
135
 
174
 
136
Shell 0.4.3 // 20.08.2010 // Albom
175
Shell 0.4.3 // 20.08.2010 // Albom
137
=======================================
176
=======================================
138
* ‘¬¥áì ¢¥àᨩ 0.4.1 ¨ 0.4.2. ’¥¯¥àì ¢  à娢¥ ¢á¥ ¨á室­ë¥ ä ©«ë, ­¥®¡å®¤¨¬ë¥ ¤«ï ª®¬¯¨«ï樨 (à ­ìè¥ ¨á¯®«ì§®¢ «¨áì ®¡ê¥ªâ­¨ª¨ á ¬®¨¬¨ ®¡ñà⪠¬¨, ¨á室­¨ª¨ ï á 襫«®¬ ­¥ ¢ëª« ¤ë¢ «)
177
* Смесь версий 0.4.1 и 0.4.2. Теперь в архиве все исходные файлы, необходимые для компиляции (раньше использовались объектники с моими обёртками, исходники я с шеллом не выкладывал)
139
 
178
 
140
 
179
 
141
Shell 0.4.2 // 28.08.2009 // diamond
180
Shell 0.4.2 // 28.08.2009 // diamond
142
=======================================
181
=======================================
143
* „®¡ ¢¨« ª®à४⭮¥ § ¢¥à襭¨¥ à ¡®âë ¯à¨ § ªàë⨨ ®ª­  ª®­á®«¨, à ¡®â ¥â ⮫쪮 ­ ç¨­ ï á ¯®á«¥¤­¥© ­  ¤ ­­ë© ¬®¬¥­â ¢¥àᨥ© ¡¨¡«¨®â¥ª¨ («¥¦¨â ­  svn, ¢ª«î祭  ¢ ­®ç­ãî á¡®àªã). ¥à¥ª®¬¯¨«¨à®¢ « ¢ VS2008 á LTCG, ¥éñ ¯®è ¬ ­¨« á ®¯â¨¬¨§ æ¨¥© ¯® à §¬¥àã
182
* Добавил корректное завершение работы при закрытии окна консоли, работает только начиная с последней на данный момент версией библиотеки (лежит на svn, включена в ночную сборку). Перекомпилировал в VS2008 с LTCG, ещё пошаманил с оптимизацией по размеру
144
 
183
 
145
 
184
 
146
Shell 0.4.1 // 16.03.2009 // Albom
185
Shell 0.4.1 // 16.03.2009 // Albom
147
=======================================
186
=======================================
148
* ¢¥àá¨ï á ¨á¯à ¢«¥­­ë¬¨ ®è¨¡ª ¬¨.
187
* версия с исправленными ошибками.
149
* à ¡®â ¥â ª®¬ ­¤  alias, ¤®¡ ¢«¥­  ª®¬ ­¤  clear.
188
* работает команда alias, добавлена команда clear.
150
 
189
 
151
 
190
 
152
Shell 0.4 // 12.08.2008 // Albom
191
Shell 0.4 // 12.08.2008 // Albom
153
=======================================
192
=======================================
154
1)  ¡®â ¥â á奬  ¯á¥¢¤®­¨¬®¢ (¤® 256 ª®¬ ­¤)
193
1) Работает схема псевдонимов (до 256 команд)
155
- ¯à®á¬®âà ¯® ª®¬ ­¤¥ alias (¡¥§ ¯ à ¬¥â஢)
194
- просмотр по команде alias (без параметров)
156
- ¤®¡ ¢«¥­¨¥ ¯á¥¢¤®­¨¬  ª®¬ ­¤ë á ª« ¢¨ âãàë ¨«¨ ¢ áªà¨¯â¥ (¢ ⮬ ç¨á«¥ ¨ .shell): alias ­®¢ ï ª®¬ ­¤  = áâ à ï ª®¬ ­¤ 
195
- добавление псевдонима команды с клавиатуры или в скрипте (в том числе и .shell): alias новая команда = старая команда
157
- ª®¬ ­¤ë ॣ¨áâ஧ ¢¨á¨¬ë¥, ¯®í⮬㠯®ª«®­­¨ª ¬ „Ž‘ ¯à¨¤ñâáï ¢­¥á⨠¢ .shell áâப¨ â ª®£® ¢¨¤ 
196
- команды регистрозависимые, поэтому поклонникам ДОС придётся внести в .shell строки такого вида
158
alias dir = ls
197
alias dir = ls
159
alias DIR = ls
198
alias DIR = ls
160
alias Dir = ls
199
alias Dir = ls
161
alias DIr = ls
200
alias DIr = ls
162
¨ â.¤.
201
и т.д.
163
- ¢áâ஥­­ë¥ ª®¬ ­¤ë ¯¥à¥­ §¢ âì ­¥¢®§¬®¦­®, ­ ¯à¨¬¥à, ¡¥áá¬ëá«¥­­  ª®¬ ­¤ :
202
- встроенные команды переназвать невозможно, например, бессмысленна команда:
164
alias ls=somecommand
203
alias ls=somecommand
165
- ¯à¨ ®â« ¤ª¥ ¯®«ãç « áâà ­­ãî ¨­ä®à¬ æ¨î, ­® â ª ª ª ã ¬¥­ï ¢áñ à ¡®â ¥â, â® ¯®ª  ¨§¬¥­¥­¨© ¢­®á¨âì ­¥ ¯« ­¨àãî
204
- при отладке получал странную информацию, но так как у меня всё работает, то пока изменений вносить не планирую
166
 
205
 
167
2) ’¥¯¥àì 襫« ¬®¦­® § ¯ã᪠âì á ¯ à ¬¥â஬ (¨§ á ¬®£® ᥡï, ­ ¯à¨¬¥à)
206
2) Теперь шелл можно запускать с параметром (из самого себя, например)
168
- ᨭ⠪á¨á:
207
- синтаксис:
169
shell ª®¬ ­¤ 
208
shell команда
170
- ¯à¨¬¥à:
209
- пример:
171
shell /sys/somescript
210
shell /sys/somescript
172
- ¯à¨ í⮬ .shell ­¥ § ¯ã᪠¥âáï
211
- при этом .shell не запускается
173
 
212
 
174
3) ¥ «¨§®¢ ­  ª®¬ ­¤  more
213
3) Реализована команда more
175
- ¯à®á¬®âà ⥪á⮢ëå ¨ ¡¨­ à­ëå ä ©«®¢ (¢à®¤¥ ¡ë § ¤ ç  ¯à®áâ ï, ­® ¯à¨è«®áì ¯®¢®§¨âìáï á ã¯à ¢«ïî騬¨ ᨬ¢®« ¬¨)
214
- просмотр текстовых и бинарных файлов (вроде бы задача простая, но пришлось повозиться с управляющими символами)
176
- ®ç¥­ì ­¥ ४®¬¥­¤ã¥âáï ¯à®á¬ âਢ âì ¡®«ì訥 ä ©«ë
215
- очень не рекомендуется просматривать большие файлы
177
 
216
 
178
 
217
 
179
Shell 0.3 // 07.08.2008 // Albom
218
Shell 0.3 // 07.08.2008 // Albom
180
=======================================
219
=======================================
181
1) ‚®§¬®¦­®áâì § ¯ã᪠ áªà¨¯â®¢
220
1) Возможность запуска скриптов
182
* ª ¦¤ ï áâப  ¤®«¦­  ¯à¥¤áâ ¢«ï¥â ᮡ®© ª®¬ ­¤ã 
221
* каждая строка должна представляет собой команду 
183
* áâப®© áç¨â ¥âáï ­ ¡®à ᨬ¢®«®¢, ª®â®àë© § ª ­ç¨¢ ¥âáï CR+LF (Windows) ¨«¨ LF(UNIX) ¨«¨ CR(Mac)
222
* строкой считается набор символов, который заканчивается CR+LF (Windows) или LF(UNIX) или CR(Mac)
184
* ¥á«¨ áâப  ­ ç¨­ ¥âáï á #, â® ¢áï áâப  (â.¥. ª®¬¬¥­â à¨©) ¨£­®à¨àã¥âáï
223
* если строка начинается с #, то вся строка (т.е. комментарий) игнорируется
185
* áªà¨¯â ¤®«¦¥­ ­ ç¨â âìáï á #SHS
224
* скрипт должен начитаться с #SHS
186
* ¯à¨ § ¯ã᪥ 襫«   ¢â®¬ â¨ç¥áª¨ § ¯ã᪠¥âáï áªà¨¯â .shell
225
* при запуске шелла автоматически запускается скрипт .shell
187
 
226
 
188
2) ˆáâ®à¨ï ¨§ 5 (¬®¦­® ¨§¬¥­¨âì ¯à¨ ª®¬¯¨«ï樨) ¢¢¥¤ñ­­ëå ª®¬ ­¤
227
2) История из 5 (можно изменить при компиляции) введённых команд
189
* ¯¥à¥¬¥é¥­¨¥ ¯® ¨áâ®à¨¨ - UP/DOWN
228
* перемещение по истории - UP/DOWN
190
 
229
 
191
3) Š®¬ ­¤  alias, ª®â®à ï ¯®§¢®«ï¥â ¢¢®¤¨âì ᨭ®­¨¬ë ¤«ï ª®¬ ­¤
230
3) Команда alias, которая позволяет вводить синонимы для команд
192
* ¤® 256 (¬®¦­® ¨§¬¥­¨âì ¯à¨ ª®¬¯¨«ï樨) ᨭ®­¨¬®¢
231
* до 256 (можно изменить при компиляции) синонимов
193
* ¯®ª  à ¡®â ¥â ⮫쪮 ¤®¡ ¢«¥­¨¥ ¨ ¯à®á¬®âà ᨭ®­¨¬®¢,   ®âà ¡®âª  ¯®ª  ­¥ ॠ«¨§®¢ ­ 
232
* пока работает только добавление и просмотр синонимов, а отработка пока не реализована
194
 
233
 
195
 
234
 
196
Shell 0.2 // 04.08.2008 // Albom
235
Shell 0.2 // 04.08.2008 // Albom
197
=======================================
236
=======================================
198
* ¤®¡ ¢¨« ­®¢ë¥ ä㭪樨
237
* добавил новые функции
199
* ­ ¯¨á « ᮡá⢥­­ãî ¯à®æ¥¤ãàã ¢¢®¤  ª®¬ ­¤ë
238
* написал собственную процедуру ввода команды
200
 
239
 
201
 
240
 
202
Shell 0.11 // 01.08.2008 // Albom
241
Shell 0.11 // 01.08.2008 // Albom
203
=======================================
242
=======================================
204
* „®¡ ¢¨« ª®¬ ­¤ë free ¨ reboot, ¢­ñá ­¥ª®â®àë¥ ¨§¬¥­¥­¨ï, ¨á¯à ¢¨« ­ ©¤¥­­ë¥ ®è¨¡ª¨
243
* Добавил команды free и reboot, внёс некоторые изменения, исправил найденные ошибки
205
 
244
 
206
 
245
 
207
Shell 0.1 // 29.07.2008 // Albom
246
Shell 0.1 // 29.07.2008 // Albom
208
=======================================
247
=======================================
209
* ¥ «¨§®¢ ­ë (­¥ ¯®«­®áâìî) ª®¬ ­¤ë: about, cd, date, echo, exit, help, kill, ls, ps, pwd, ver
248
* Реализованы (не полностью) команды: about, cd, date, echo, exit, help, kill, ls, ps, pwd, ver
210
* à¨ § ¯ã᪥ ¯à®£à ¬¬ë (¥á«¨ ­¥ 㪠§ ­ ¯®«­ë© ¯ãâì) ®­  ¨é¥âáï ¢ ª â «®£¥ /rd/1 ¨ ⥪ã饬 ª â «®£¥
249
* При запуске программы (если не указан полный путь) она ищется в каталоге /rd/1 и текущем каталоге
211
 
250
 
212
 
251
 
213
Shell 0.02 // 27.07.2008 // Albom
252
Shell 0.02 // 27.07.2008 // Albom
214
=======================================
253
=======================================
215
* ¥ «¨§®¢ « ª®¬ ­¤ë: 
254
* Реализовал команды: 
216
  exit - ¢ë室
255
  exit - выход
217
  ls (á ¯ à ¬¥â஬ ¨ ¡¥§) - ¢ë¢®¤ ᯨ᪠ ¤¨à¥ªâ®à¨¨
256
  ls (с параметром и без) - вывод списка директории
218
  pwd - ⥪ã騩 ª â «®£
257
  pwd - текущий каталог
219
  ps - ᯨ᮪ ¯à®æ¥áᮢ ¨ ¨å PID
258
  ps - список процессов и их PID
220
  kill - § ¢¥àè¨âì ¯à®æ¥áá ¯® PID
259
  kill - завершить процесс по PID
221
  help (á ¯ à ¬¥â஬ ¨ ¡¥§) - ¯®¬®éì
260
  help (с параметром и без) - помощь
222
 
261
 
223
  
262
  
224
Shell 0.01 // 27.07.2008 // Albom
263
Shell 0.01 // 27.07.2008 // Albom
225
=======================================
264
=======================================
226
* ¥è¨« ­ ¯¨á âì ä㭪樮­ «ì­ë© 襫« ­  ‘¨ á ¨á¯®«ì§®¢ ­¨¥¬ console.obj
265
* Решил написать функциональный шелл на Си с использованием console.obj
227
* ®ª  ᤥ« « äã­ªæ¨î ®â¤¥«¥­¨ï ª®¬ ­¤ë ¨ ¯ à ¬¥â஢,   â ª¦¥ ॠ«¨§®¢ « ª®¬ ­¤ë help (¯®ª  ¡¥§ ¯ à ¬¥â஢), ver ¨ exit
266
* Пока сделал функцию отделения команды и параметров, а также реализовал команды help (пока без параметров), ver и exit