Aros/用户/DOS
在 Dopus 5 Magellan 中 - 右键单击 -> Icaros -> Shell
在 Wanderer(AROS 桌面/GUI)中,按 RightAROS + w(或 F12 + w)(或使用鼠标右键访问 Wanderer 屏幕顶部的菜单)打开 Shell 窗口。要关闭 Shell 窗口,请单击 Shell 窗口左上角的 X,或键入
endcli
或者
endshell
默认情况下,当前目录将显示为 Shell 提示符的一部分。默认情况下,起始点为“System:”,即操作系统的根目录,也称为 sys
System:>
键入“dir”并按回车键。您将看到当前目录的内容。
System:>dir
您只需键入其名称(并按回车键)即可运行可执行文件或进入目录。只需键入“c”即可进入“C”目录(AROS DOS 不区分大小写)。
System:>c
现在按两次向上箭头键。AROS Shell 拥有一个命令历史记录,允许您快速重复或重新使用命令。现在您应该再次看到“dir”命令,所以按回车键。您将看到刚刚进入的“c”目录的内容。
System:c>dir
此目录是 AROS 的主要可执行文件位置,可以从任何目录运行。现在键入“/”(一个斜杠)并按回车键。您刚刚向上移动了一个目录,回到了“System:”。
System:>
现在尝试另一个“dir”类似命令(位于“c”目录中),“list”。
System:>list
输出与“dir”非常相似。但您可以使用选项控制“list”输出。AROS DOS 命令行选项通过其名称识别,并最终通过其在命令行中的位置识别。试试这个
System:>list sub d
输出现在将包含所有目录内容,其名称包含子字符串“d”。另一个示例,另一个选项
System:>list sub d all
这将递归地列出与“d”匹配的内容。
http://uk.aminet.net/docs/help/adosbegin.lha
http://se.aminet.net/pub/aminet/docs/help/adosbegin.lha
IF <condition>
; these commands are executed if the condition is true
ELSE
; these commands are executed if the condition is false
ENDIF
<condition> 可以是以下之一
WARN
- 前一个命令的返回值为 5 或更高。
ERROR
- 前一个命令的返回值为 10 或更高。
FAIL
- 前一个命令的返回值为 20 或更高。
EXISTS <filename>
- 检查文件或目录是否存在。
<a> EQ <b>
- 字符串比较。
<a> EQ <b>
VAL - 数值比较。
<a> GT <b>
- 与 EQ 相同,只是表示“大于”。
<a> GE <b>
- 与 EQ 相同,只是表示“大于或等于”。
以上任何一个都可以通过 NOT 否定。例如,使用 NOT GT 表示“小于或等于”,使用 NOT GE 表示“小于”。
07 Bell - Flash screen and sound bell 08 Backspace - move cursor back one position 09 vertical tab - move cursor up one line 10 line feed - move cursor down one line 11 is not listed in my book 12 form feed - clear screen 13 Carriage return - move cursor to start of line 14 Set MSB of each character. (Print extended chars) 15 Clear MSB of each character. *e[c - Clear window and turn all modes off *e[0m - All modes turned off *e[1m - Bold text enabled *e[3m - Italic enable *e[4m - Uderline *e[7m - Inverted text enable *e[8m - text becomes invisible (grey on grey) *e[3xm - Text colour becomes colour x (0-7) *e[4xm - Background colour becomes colour x (0-7) *e[n@ - Insert n spaces at cursor position. *e[nA - Cursor up n lines. Default 1 *e[nB - Cursor down n lines. Default 1 *e[nC - Cursor forward n characters. Default 1 *e[nD - Cursor back n characters. Default 1 *e[nE - Cursor next n lines(to column 1). Default 1 *e[nH - Cursor to row n (Y position) *e[;nH - Cursor to column n (X position) *e[y;xH - Cursor to position X,Y *e[J - Erase from cursor to end of display *e[K - Erase from cursor to end of line *e[I - Insert line above line at cursor *e[M - Delete line at cursor *e[nS - Scroll up n lines *e[nT - Scroll down n lines *e[nt - set page length to n lines (in current font) *e[nu - Set line length in characters of current font *e[nx - Set left offset in characters *e[ny - Set top offset in lines *e[0 p - Disable cursor: Note space between zero and p *e[ p - Enable cursor. Note space
Shell 中彩色文本的示例
prompt "*E[>1m*E[1;37;41m%n.%s> *E[0;32;41m" echo "*E[0;0H*E[J"
*E[>1m
这是一个所谓的 SGR 命令,它省略了前几个参数。它将粗体打开。
*E[1;37;41m%n.%s>
SGR 命令指示:- 粗体(1) - 前景色 7(37)。这意味着它使用笔色 #7(默认情况下在 AROS 上为黑色,因此使用 setpencolor 命令)。- 使用背景色 1(41)。这意味着它使用笔色 #1(默认情况下在 AROS 上为黑色)。- %n 表示打印当前打开的 cli/shell 编号 - %s 表示打印当前路径 - > 在以上所有内容之后打印一个漂亮的管道标记(以及一个空格字符)。
*E[0;32;41m
SGR 命令指示:- 普通文本(0) - 前景色 2(32)。这意味着它使用笔色 #2(默认情况下在 AROS 上为白色)。- 背景色 1(41)。这意味着它使用笔色 #1(默认情况下在 AROS 上为黑色)。
*E[0;0H
命令“光标位置” - 将行设置为 0(0) - 将列设置为 0(0)。请注意,这似乎不像在经典系统(未经检查)中那样在 AROS 上工作。似乎 AROS 使用的最小编号为 1(对于左侧和顶部)。
*E[J
命令“清除显示”(此命令中未使用其他参数)。
每个 AROS 发行版中都会存在操作系统所需的一组特定目录和文件。此外,“分配”(逻辑的,而不是物理的,驱动器)指向物理驱动器分区或分区目录结构中的位置。
- 默认情况下,IDE 总线上的硬盘驱动器将分配驱动器名称“DH0:”,“DH1:”等。
- 默认情况下,USB 闪存驱动器将分配驱动器名称“DU0:”,“DU1:”等。
- 默认情况下,IDE 总线上的 CD/DVD 驱动器将分配驱动器名称“CD0:”,“CD1:”等。
SYS: Extras: DEVS: Development: L: S: LIBS: C: ENV: RAM: ENVARC: MUI: T
...包含所有系统首选项程序,例如“Screenmode”、“Locale”、“Time”、“Trident”(USB)等。是默认路径的一部分,因此在 Shell 中输入“screenmode”将启动“Screenmode”首选项程序。
...包含设备驱动程序和数据类型。将文件移动到“SYS:Storage”的相应子目录以禁用它(重新启动后)。更多(当前禁用的)设备驱动程序或数据类型可以在“SYS:Storage”下找到,移动到“Devs:”以启用(重新启动后)。
...是一个旨在存储可选或当前未使用的设备和数据类型的目录。将“Devs:”的内容(见上文)移动到这里以禁用设备驱动程序(重新启动后)。
...是一个在启动操作系统时将运行的脚本。它也用于某些应用程序来存储其个人需求(如果有 - 大多数情况下这将是一行,例如“assign PROGRAMNAME: SYS:path/to/installation/of/PROGRAMNAME”)。
...是一个由 S:startup-sequence 运行的脚本。您可以在这里放置自己的内容。假设您在“C:”以外的目录(或默认“path”中的任何其他目录)中安装了一些可执行程序,但仍然想要在不键入完整路径的情况下访问它们,您可以添加类似这样的行:“path WORK:path/to/my/program/ add”。
它也由一些应用程序用来存储它们的个别需求(见上文)。
...是在启动新 shell 时运行的脚本。默认情况下,它包含定义 shell 提示符外观的命令。请参阅“prompt”命令的描述。
键 | desc |
---|---|
/A | 必需参数 |
/F | 列表中的最后一个参数 |
/K | 关键字必须与参数一起输入 |
/M | 多个参数 |
/N | 数字 |
/S | 开关(可选) |
Addbuffers | |
---|---|
格式 | Addbuffers Drive/A Buffers/N |
目的 | 为磁盘缓冲区添加内存以提高速度。 |
参数 |
|
示例 | Addbuffers DH0: 10 |
AddDatatypes | |
---|---|
格式 | AddDataTypes files/M QUIET/S REFRESH/S LIST/S |
目的 | 激活数据类型,或者如果在启动时未检测到则添加另一个数据类型 |
参数 |
|
示例 | AddDataTypes gif.datatype REFRESH |
别名 | |
---|---|
格式 | Alias Name String/F |
目的 | 为 DOS 命令分配一个简短名称。 |
参数 |
|
示例 | Alias Del Delete |
询问 | |
---|---|
格式 | Ask Prompt/A |
目的 | 在脚本中询问问题(回复 y/n)。使用 IF WARN 测试是否为是(值为 5)。 |
参数 |
|
示例 | Ask "Are you sure? Y/n" |
分配 | |
---|---|
格式 | Assign Name Target/M LIST/S EXISTS/S DISMOUNT/S DEFER/S PATH/S ADD/S REMOVE/S |
VOLS/S DIRS/S DEVICES/S | |
目的 | 为目录路径分配名称。 |
参数 |
|
示例 | Assign Development: Extras:bin |
可用 | |
---|---|
格式 | Avail CHIP/S FAST/S TOTAL/S FLUSH/S |
目的 | 内存可用性 |
参数 |
|
示例 | Avail TOTAL |
中断 | |
---|---|
格式 | Break Process/A/N ALL/S C/S D/S E/S F/S |
目的 | 停止程序(见状态) |
参数 |
|
示例 | Break 2 C |
CD | |
---|---|
格式 | CD Dir/A |
目的 | 更改目录 |
参数 |
|
示例 | CD Text_Files |
ChangeTaskPri | |
---|---|
格式 | ChangeTaskPri Pri=Priority/A/N Process/K/N |
目的 | 更改程序的执行优先级(见状态) |
参数 |
|
示例 | ChangeTaskPri 2 1 |
Conclip | |
---|---|
格式 | Conclip Unit/N OFF/S |
目的 | 激活剪贴板设备 |
参数 |
|
示例 | Conclip 1 |
复制 | |
---|---|
格式 | Copy From/M To/A ALL/S QUIET/S BUF=BUFFER/K/N CLONE/S DATES/S NOPRO/S COM/S NOREQ/S |
目的 | 复制文件(带/不带保护位) |
参数 |
|
示例 | Copy mydoc.txt docs: Dates |
日期 | |
---|---|
格式 | Date Day Date Time To=Ver/K |
目的 | 显示/更改日期或时间 |
参数 |
|
示例 | Date To=date.txt |
删除 | |
---|---|
格式 | Delete File/M/A ALL/S QUIET/S FORCE/S |
目的 | 删除文件和/或目录。 |
参数 |
|
示例 | Delete OldFilesDir All |
目录 | |
---|---|
格式 | Dir Dir Opt/K ALL/S DIRS/S FILES/S INTER/S |
目的 | 列出目录的内容 |
参数 |
|
示例 | Dir S: Files |
Diskchange | |
---|---|
格式 | Diskchange Device/A |
目的 | 告诉 Dos 在非自动感应磁盘驱动器中已交换了磁盘。 |
参数 |
|
示例 | Diskchange DU2 |
回声 | ||
---|---|---|
格式 | Echo String/M NOLINE/S FIRST/K/N LEN/K/N TO/K | |
目的 | 在脚本中显示文本或部分文本字符串。 | |
参数 |
| |
示例 | Echo "Enter your name: " NoLine |
其他 | |
---|---|
格式 | 其他 |
目的 | 与 IF 一起使用,如果不为真,则执行这些命令 |
示例 |
|
EndCLI | |
---|---|
格式 | EndCLI |
目的 | 关闭 CLI 控制台窗口 |
示例 | EndCLI |
ENDIF | |
---|---|
格式 | ENDIF |
目的 | 结束 IF..ELSE..ENDIF 块 |
示例 | If $Age GT 65 Else Endif |
Endskip | |
---|---|
格式 | Endskip |
目的 | 停止 SKIP 分支(用于调试) |
示例 | Endskip |
评估 | |
---|---|
格式 | Eval Value1/A Op Value2/M To/K LFormat/K |
目的 | 计算简单的算术表达式 |
参数 |
|
示例 | Eval $count + 1 to env:count |
执行 | |
---|---|
格式 | Execute File/A |
目的 | 执行脚本或批处理文件 |
参数 |
|
示例 | Execute PCD |
Failat | |
---|---|
格式 | Failat RCLIM/A |
目的 | 更改脚本的失败限制(0,5,10,20) |
(0 - 正常,5 - 警告,10 - 错误,20 - 失败) | |
参数 |
|
示例 | Failat 20 |
故障 | |
---|---|
格式 | Fault Error/N/M |
目的 | 显示来自代码的错误消息 |
参数 |
|
示例 | Fault 221 |
"Fault 221: Disk is full" |
FileNote | |
---|---|
格式 | Filenote File/A Comment ALL/S QUIET/S |
目的 | 将注释附加到文件(见 LIST) |
参数 |
|
示例 | FileNote List.txt "A list of people's names" |
格式 | |
---|---|
格式 | Format Device Drive/K/A Name/K/A OFS/FFS/SFS |
DIRCACHE/S NODIRCACHE/S NOICONS/S QUICK/S | |
目的 | 初始化 AROS 磁盘(在系统抽屉中) |
参数 |
|
示例 | format drive dh0: name AROS Format Drive DH2: Name Docs SFS NOICONS QUICK |
获取 | |
---|---|
格式 | Get Name/A |
目的 | 返回本地 env 变量的内容 |
参数 |
|
示例 | Get RC |
Getenv | |
---|---|
格式 | Getenv Name/A |
目的 | 返回全局环境变量的内容 |
参数 |
|
示例 | Getenv Wanderer |
Iconx | |
---|---|
格式 | Iconx |
目的 | 使脚本可以从 Workbench 运行。该脚本必须具有一个 Project .info 文件,并且 |
默认工具设置为 c:IconX 以运行它。 | |
示例 | Iconx |
如果 | |
---|---|
格式 | If NOT/S WARN/S ERROR/S FAIL/S EQ/K GT/K GE/K VAL/S EXISTS/K |
目的 | 如果条件为真,则执行以下命令,直到遇到 ELSE 或 ENDIF。 |
参数 |
|
示例 | IF WARN, IF $count GT 10, IF EXISTS C:List |
信息 | |
---|---|
格式 | Info Device |
目的 | 显示有关磁盘的信息 |
参数 |
|
示例 | 信息 DH0 |
安装 | |
---|---|
格式 | 安装设备/A NOBOOT/S CHECK/S FFS/S |
目的 | 将启动块保存到磁盘。如果只有一个驱动器类型 INSTALL ? 并且 |
交换磁盘,然后输入 DF0: 并按 RETURN 保存启动块。 | |
参数 |
|
FFS = 使用快速文件系统。 | |
示例 | 安装 DH0 |
IPrefs | |
---|---|
格式 | IPrefs |
目的 | 启动时初始化首选项文件。 |
示例 | IPrefs |
加入 | |
---|---|
格式 | 加入文件/M/A AS=TO/K/A |
目的 | 将两个或多个文件合并在一起。 |
参数 |
|
示例 | 将 File1 File2 File3 合并为 FileFull |
标签 | |
---|---|
格式 | 标签标签 |
目的 | 在脚本中指定一个要跳过的标签 |
参数 |
|
示例 | 标签 PROC2 |
清单 | |
---|---|
格式 | 列出 Dir/M P=PAT/K KEYS/S DATES/S NODATES/S To/K Sub/K Since/K Upto/K |
QUICK/S BLOCK/S NOHEAD/S FILES/S DIRS/S LFORMAT/K ALL/S | |
目的 | 列出目录中的文件详细信息。 |
参数 |
|
示例 | 列出开发:块 日期 自=01-Jul-00 |
锁定 | |
---|---|
格式 | 锁定驱动器/A ON/S OFF/S 密码 |
目的 | 阻止设备写入。 |
参数 |
|
示例 | 锁定 DH1: 开 GHK459 |
创建目录 | |
---|---|
格式 | 创建目录 名称/M |
目的 | 创建一个或多个新目录。 |
参数 |
|
示例 | 创建目录 DH1:Docs DH1:Basic DH0:TempFiles |
创建链接 | |
---|---|
格式 | 创建链接 从/A 到/A HARD/S FORCE/S |
目的 | 在文件之间创建逻辑链接 |
参数 |
|
示例 | 创建链接 T C:Type 硬 |
挂载 | |
---|---|
格式 | 挂载 设备/M 从/K |
目的 | 加载并挂载设备 |
参数 |
|
示例 | 挂载 DEVS:CD0 |
新Shell | |
---|---|
格式 | 新Shell 窗口 从 |
目的 | 打开一个新的 Shell 控制台 (CON) 窗口 |
参数 |
|
示例 | 新Shell 从 S:Shell-Startup |
路径 | |
---|---|
格式 | 路径 路径/M ADD/S SHOW/S RESET/S REMOVE/S QUIET/S |
目的 | 设置或更改程序搜索路径 |
参数 |
|
示例 | 路径 SC:C 添加 |
提示 | |
---|---|
格式 | 提示 提示 |
目的 | 更改提示文本(代码:%R = 上次返回值, |
%S = 当前路径,%N = CLI 号码) | |
参数 |
|
示例 | 提示 "%N.%S> " |
保护 | |
---|---|
格式 | 保护 文件/A 标志 ADD/S SUB/S ALL/S QUIET/S |
目的 | 更改文件的“rwedsp”标志。(r=读,w=写,e=执行,d=删除,s=脚本,p=纯) |
参数 |
|
示例 | 保护 编辑器 rwed |
退出 | |
---|---|
格式 | 退出 RC/N |
目的 | 退出脚本,并带可选返回值 |
参数 |
|
示例 | 退出 5 |
重命名 | |
---|---|
格式 | 重命名 驱动器/A 名称/A |
目的 | 更改磁盘名称 |
参数 |
|
示例 | 重命名 DH2: Documents |
重命名 | |
---|---|
格式 | 重命名 从/A/M 到=作为/A QUIET/S |
目的 | 重命名或移动一个或多个文件 |
参数 |
|
示例 | 重命名 MyDoc 为 MyDoc.doc |
请求选择 | |
---|---|
格式 | 请求选择 标题/A 正文/A 小工具/M PubScreen/K |
目的 | 通过请求器询问输入 |
参数 |
|
示例 | 请求选择 >ENV:RT "格式" "即将格式化硬盘*n确认吗?" "继续" "绝不!" |
请求文件 | |
---|---|
格式 | 请求文件 抽屉 文件/K 模式/K 标题/K 肯定/K 否定/K 接受模式/K 拒绝模式/K |
SAVEMODE/S MULTISELECT/S DRAWERSONLY/S NOICONS/S PUBSCREEN/K | |
参数 |
|
目的 | 通过 ASL 文件请求器询问文件名 |
示例 | 请求文件 >ENV:File 标题 "选择文件" 肯定 "加载" Noicons |
驻留 | |
---|---|
格式 | 驻留 名称 文件 REMOVE/S ADD/S REPLACE/S PURE=FORCE/S SYSTEM/S |
目的 | 将 AmigaDOS 命令存储在内存中(比每次执行时从磁盘重新加载更快)。 |
要确保可以使命令驻留,请检查纯标志(参见列表)。 | |
参数 |
|
示例 | 驻留 C:Dir 纯 |
运行 | |
---|---|
格式 | 运行 命令/F |
目的 | 在后台执行程序(多任务) |
参数 |
|
示例 | 运行 DirectoryOpus > NIL |
搜索 | |
---|---|
格式 | 搜索 从/M 搜索/A ALL/S NONUM/S QUIET/S QUICK/S FILE/S PATTERN/S |
目的 | 在磁盘上的文件或文件中搜索字符串 |
参数 |
|
示例 | 搜索 SYS: "List" 文件 全部 |
设置 | |
---|---|
格式 | 设置 名称 字符串/F |
目的 | 设置或列出本地环境变量(本地于当前 shell 或当前进程) |
参数 |
|
示例 | 设置 MyName "Peter" |
设置时钟 | |
---|---|
格式 | 设置时钟 LOAD/S SAVE/S RESET/S |
目的 | 从电池供电的时钟加载或设置日期和时间 |
参数 |
|
示例 | 日期 27-Nov-00 10:00,设置时钟 保存 |
设置日期 | |
---|---|
格式 | 设置日期 文件/A 星期几 日期 时间 ALL/S |
目的 | 设置文件或目录的日期(参见列表) |
参数 |
|
示例 | 设置日期 DEVS: 星期一 10:30 |
设置环境 | |
---|---|
格式 | 设置环境 名称 字符串/F |
目的 | 更改环境变量的内容 |
参数 |
|
示例 | 设置环境 Wanderer "44" |
设置键盘 | |
---|---|
格式 | 设置键盘 键盘映射/A |
目的 | 使用 Devs:Keymaps 中的布局设置键盘布局。您可以改用输入首选项。 |
参数 |
|
示例 | 设置键盘 USA0 |
跳过 | |
---|---|
格式 | 跳过 标签 BACK/S |
目的 | 跳到脚本中的标签(参见标签)。如果标签出现在跳过命令之前,请使用后退。 |
参数 |
|
示例 | 跳过 Lab2 后退 |
排序 | |
---|---|
格式 | 排序 从/A 到/A Colstart/K CASE/S NUMERIC/S |
目的 | 对文件进行排序,并将结果输出到新文件 |
参数 |
|
| |
示例 | 排序 Figures 到 SortedFigures 数字 |
堆栈 | |
---|---|
格式 | 堆栈 大小/N |
目的 | 更改/显示以字节为单位的堆栈空间量。 |
参数 |
|
示例 | 堆栈 1000000 |
状态 | |
---|---|
格式 | 状态 进程/N FULL/S TCB/S CLI=ALL/S COM=COMMAND/K |
目的 | 显示正在运行的程序的状态。TCB 是任务控制块 |
参数 |
|
示例 | 状态 2 全部 |
类型 | |
---|---|
格式 | N/K HEX/S NUMBER/S |
目的 | 在屏幕上显示文本文件的内容,并使用十六进制显示二进制文件,并带可选行号。 |
参数 |
|
示例 | 类型 C:DIR 十六进制 |
取消设置 | |
---|---|
格式 | 取消设置 名称 |
目的 | 删除本地环境变量 |
参数 |
|
示例 | 取消设置 MyName |
取消设置环境 | |
---|---|
格式 | 取消设置环境 名称 |
目的 | 删除全局环境变量 |
参数 |
|
示例 | 取消设置环境 Wanderer |
取消别名 | |
---|---|
格式 | 取消别名 名称 |
目的 | 删除命令的简短名称 |
参数 |
|
示例 | 取消别名 MyDir |
版本 | |
---|---|
格式 | 版本 名称 版本/N 修订版/N FILE/S FULL/S 单位/N INTERNAL/S RES/S |
目的 | 显示工作台、库或设备版本信息。 |
参数 |
|
| |
示例 | 版本 kickstart 版本=39 修订版=106 |
等待 | |
---|---|
格式 | 等待 时间/N SEC=SECS/S MIN=MINS/S UNTIL/K |
目的 | 等待指定的时间段 |
参数 |
|
示例 | 等待 直到 12:00 |
哪个 | |
---|---|
格式 | 哪个 文件/A NORES/S RES/S ALL/S |
目的 | 查找文件在命令路径中的位置(参见路径),并设置警告标志。 |
参数 |
|
示例 | 哪个 Multiview |
为什么 | |
---|---|
格式 | 为什么 |
目的 | 显示之前命令失败的原因 |
示例 | 为什么 |
其他 DOS 命令
[edit | edit source]DMS Format: DMS Read file[.DMS] [FROM dev:] [TEXT filetext] [CMODE mode] [LOW lowtrack] [HIGH hightrack] [NOVAL] [NOZERO] [ENCRYPT password] DMS Write file[.DMS],,, [TO dev:] [LOW lowtrack] [HIGH hightrack] [NOVAL] [NOTEXT] [NOPAUSE [DECRYPT password] DMS Repack file[.DMS] [TO dev:] [LOW lowtrack] [HIGH hightrack] [CMODE mode] DMS View file[.DMS],,, [FULL] DMS Text file[.DMS],,, DMS Test file[.DMS],,, DMS Help Purpose: To read, write or view Disk Masher disk images of floppy disks. Example: DMS Write MyDisk.DMS FROM DF0: Installer Format: Installer [SCRIPT] filename <[APPNAME] name> <[MINIUSER] level> <[DEFUSER] default> <[LOGFILE] logname> <[LANGUAGE] language> <NOPRETEND> <NOLOG> <NOPRINT> Purpose: To install an application via a installer script. Usually provided as a default tool for script files in icon. Example: Installer SCRIPT InstallApp APPNAME MyProgram LOGFILE DH0:MyProgram.log LHA Format: LHA [-options] <command> <archive[.LZH|LHA]> [[homedir] <filespec...] [@file] [destination] Purpose: To create, modify or list LHA or LZH files Examples: LHA a pictures.lha #?.jpg (archives all jpg files into pictures.lha) LHA l pictures.lha (lists all files in pictures.lha) LHA x pictures.lha (extracts all files from pictures.lha) LZX Format: LZX [-options] <command> <archive> [<file> ...] [<destdir>] Purpose: To create, modify or list LZX archive files. Examples: LZX a documents.lzx #?.doc (archives all doc files into documents.lzx) LZX l documents.lzx (lists all files in documents.lzx) LZX x documents.lzx (extracts all files from documents.lzx)
Clear Screen Example: Echo "*E[0;0H*E[J" Purpose: Clears the screen. Uses printer commands to control text formatting in CLI, so *E is equivalent to ESC character.The command clear is normally defined using an Alias or an AmigaDOS script in S: folder. Text in Italics Example: Echo "*E[3mItalics*E[23m" Purpose: *E[3m turns on italics and *E[23m turns off italics Text in Bold Example: Echo "*E[1mBold*E[22m" Purpose: *E[1m turns on bold, and *E[22m turns off bold. Underline Text Example: Echo "*E[4mUnderline*E[24m" Purpose: *E[4m turns on underline, and *E24m turns off underline. Coloured Text Example: Echo "*E[32mRed Text*E[0m" Purpose: *E[nm where n=30-39 for foreground color or n=40-49 for background colour. *E[0m resets to normal character set.
似乎 Amiga Shell 允许转义序列以 0x9B 字符开头,或者允许使用更传统的 0x1B 字符(八进制为 033)后跟 [ 字符。为了清晰起见,我将用 C 字符串 \033[ 表示它。
AROS 不理解 \033[0m 序列,因此您需要使用另一个颜色序列来重置它(假设用户没有更改默认的 Shell 颜色)。结果是 \033[31;40m。为了安全起见,最好在它后面加上(在 AROS 中被忽略的)\033[0m 序列。
因此,我的最终高亮代码如下所示
printf("Before\033[32;43mDuring\033[31;40m\033[0mAfter\n");
或者,如果您用 E 编码(像我一样),则它就是这个
PrintF('Before\e[32;43mDuring\e[31;40m\e[0mAfter\n')
AddAudioModes | |
---|---|
格式 | |
目的 | |
参数 | Files/M Quiet/S Refresh/S Remove/S DblScan/S |
示例 |
Beep | |
---|---|
格式 | |
目的 | |
参数 | |
示例 |
CheckMem | |
---|---|
格式 | |
目的 | |
参数 | |
示例 |
Delay | |
---|---|
格式 | |
目的 | |
参数 | Time/N Tick=Ticks/S |
示例 |
DevList | |
---|---|
格式 | DevList |
目的 | 列出正在运行的设备 - 地址、版本、修订版、opencnt、标志、名称 |
参数 | |
示例 | devlist |
LibList | |
---|---|
格式 | LibList |
目的 | 给出打开的库和 mui 的地址、版本、修订版、opencnt、标志、名称 |
参数 | |
示例 | liblist |
Reboot | |
---|---|
格式 | Reboot |
目的 | 热重启机器 - 不起作用 |
参数 | |
示例 |
ResList | |
---|---|
格式 | reslist |
目的 | 列出资源 - 名称和地址 |
参数 | |
示例 | reslist |
Shutdown | |
---|---|
格式 | shutdown |
目的 | 关闭计算机 |
参数 | |
示例 | 不工作 |
TaskList | |
---|---|
格式 | tasklist |
目的 | 列出正在运行的任务 - 地址、类型、优先级、状态、cpu、时间、堆栈、使用情况、名称 |
参数 | |
示例 | tasklist |
有没有办法一次解压缩多个,比如 10 个压缩存档
list #?.zip lformat "unzip %N" >script
execute script
Resident >NIL: C:RequestChoice PURE
Resident >NIL: C:RequestFile PURE
; $VER: DMSMaker v1.0 (11.7.96) Richard Burke
lab Start
if EXISTS ENV:Choice
delete ENV:Choice >NIL:
endif
if EXISTS ENV:Tst
delete ENV:Tst >NIL:
endif
if EXISTS ENV:V
delete ENV:V >NIL:
endif
if EXISTS ENV:Re
delete ENV:Re >NIL:
endif
if EXISTS ENV:DMS
delete ENV:DMS >NIL:
endif
if EXISTS ENV:De
delete ENV:De >NIL:
endif
if EXISTS ENV:DeDev
delete ENV:DeVol >NIL:
endif
if EXISTS ENV:Cr
delete ENV:Cr >NIL:
endif
if EXISTS ENV:CrSv
delete ENV:CrSv >NIL:
endif
if EXISTS ENV:Mode
delete ENV:Mode >NIL:
endif
if EXISTS ENV:Mode1
delete ENV:Mode1 >NIL:
endif
which DMS all >ENV:DMS
RequestChoice >ENV:Choice "Welcome!" "Welcome to the DMSMaker! Choose an action" "Crunch" "Decrunch" "Repack" "View" "Test" "Quit"
if $Choice EQ 1
lab Dev
RequestFile >ENV:Cr DRAWERSONLY TITLE "Choose DEVICE to crunch" POSITIVE "Crunch" NEGATIVE "Return to menu"
if WARN
skip Start BACK
endif
if NOT EXISTS $Cr
echo "DEVICE does not exist! Choose again!"
skip Dev BACK
endif
RequestChoice >ENV:Mode1 "Crunch Mode" "Choose degree of crunching" "Best" "None" "Heavy1" "Heavy2" "Return to menu"
if WARN
skip Start BACK
endif
if $Mode1 EQ 1
echo "BEST" >ENV:Mode
endif
if $Mode1 EQ 2
echo "NONE" >ENV:Mode
endif
if $Mode1 EQ 3
echo "HEAVY1" >ENV:Mode
endif
if $Mode1 EQ 4
echo "HEAVY2" >ENV:Mode
endif
RequestFile >ENV:CrSv TITLE "Save crunched file as..." ACCEPTPATTERN "#?.dms" FILE ".dms" POSITIVE "Save" NEGATIVE "Return to menu"
if WARN
skip Start BACK
endif
$DMS read $CrSv FROM $Cr CMODE $Mode
echo "File crunched!"
endif
if $Choice EQ 2
lab Dec
RequestFile >ENV:De TITLE "Choose FILE to decrunch" ACCEPTPATTERN "#?.dms" POSITIVE "Decrunch" NEGATIVE "Return to menu"
if WARN
skip Start BACK
endif
if NOT EXISTS $De
echo "FILE does not exist! Choose again!"
skip Dec BACK
endif
lab DecDev
RequestFile >ENV:DeDev TITLE "Choose DEVICE to decrunch TO" DRAWERSONLY POSITIVE "Write" NEGATIVE "Return to menu"
if WARN
skip Start BACK
endif
if NOT EXISTS $DeDev
echo "DEVICE does not exist! Choose again!"
skip DecDev BACK
endif
$DMS write $De TO $DeDev
echo "File decrunched!"
endif
if $Choice EQ 3
lab Rep
RequestFile >ENV:Re TITLE "Choose FILE to repack" ACCEPTPATTERN "#?.dms" POSITIVE "Repack" NEGATIVE "Return to menu" FILE ".dms"
if WARN
skip Start BACK
endif
if NOT EXISTS $Re
echo "File does not exist! Choose again!"
skip Rep BACK
endif
RequestChoice >ENV:Mode1 "Crunch Mode" "Choose degree of crunching" "Best" "None" "Heavy1" "Heavy2" "Return to menu"
if WARN
skip Start BACK
endif
if $Mode1 EQ 1
echo "BEST" >ENV:Mode
endif
if $Mode1 EQ 2
echo "NONE" >ENV:Mode
endif
if $Mode1 EQ 3
echo "HEAVY1" >ENV:Mode
endif
if $Mode1 EQ 4
echo "HEAVY2" >ENV:Mode
endif
RequestFile >ENV:CrSv TITLE "Save repacked file as..." ACCEPTPATTERN "#?.dms" FILE ".dms" POSITIVE "Save" NEGATIVE "Return to menu"
if WARN
skip Start BACK
endif
$DMS repack $Re TO $CrSv CMODE $Mode
echo "File repacked!"
endif
if $Choice EQ 4
lab View
RequestFile >ENV:V TITLE "Choose DMS FILE to view" POSITIVE "View" NEGATIVE "Return to menu" ACCEPTPATTERN "#?.dms" FILE ".dms"
if WARN
skip Start BACK
endif
if NOT EXISTS $V
echo "FILE does not exist! Choose again!"
skip View BACK
endif
$DMS view $V
endif
if $Choice EQ 5
lab Test
RequestFile >ENV:Tst TITLE "Choose FILE to test" ACCEPTPATTERN "#?.DMS" POSITIVE "Test" NEGATIVE "Return to menu" FILE ".dms"
if WARN
skip Start BACK
endif
if NOT EXISTS $Tst
echo "FILE does not exist! Choose again!"
skip Test BACK
endif
$DMS test $Tst
endif
if $Choice EQ 0
skip End
endif
skip Start BACK
lab End
quit
resident >nil: c:search PURE
resident >nil: c:requestfile PURE
resident >nil: c:requestchoice PURE
resident >nil: c:echo PURE
resident >nil: c:copy PURE
resident >nil: c:type PURE
; $VER: HappySearch v1.0 (25.4.97) Richard Burke
requestchoice >env:int "HappySearch" "HappySearch searches the specified device/drawer*nto see if any files have been infected with the*n'Happy New Year 96!' virus, and informs of any*ninfected files it finds. Such files will have the*nvirus name printed below them in the scanned file*nlisting." "Okay" "Quit"
if $int EQ 0
quit
endif
lab beg
if exists env:mo
delete >nil: env:mo
endif
if exists env:disp
delete >nil: env:disp
endif
if exists env:dev
delete >nil: env:dev
endif
if exists env:hap
delete >nil: env:hap
endif
if exists env:sav1
delete >nil: env:sav1
endif
if exists env:rec
delete >nil: env:rec
endif
if exists env:sav
delete >nil: env:sav
endif
if exists env:int
delete >nil: env:int
endif
requestfile >env:dev TITLE "Choose drawer to search:" POSITIVE Search DRAWERSONLY
if warn
quit
endif
requestchoice >env:disp "Save?" "Results will be printed to screen.*nSave results to file too?*n(This is recommended)" "Yes" "No"
if $disp EQ 1
requestfile >env:sav TITLE "Location:" POSITIVE Save DRAWER RAM: FILE Happy.tmp
echo $sav >env:sav1
endif
requestchoice >env:rec "Recurse?" "Search sub-directories recursively?" "Yes" "No"
if $rec EQ 1
echo "Scanning files . . ."
search $dev "Happy New Year 96!" ALL >env:hap
else
echo "Scanning files . . ."
search $dev "Happy New Year 96!" >env:hap
endif
echo "Files scanned:"
type env:hap
if $disp EQ 0
delete >nil: env:hap
else
copy >nil: env:hap $sav1
echo "File listing saved as *e[33m$sav1*e[0m"
endif
requestchoice >env:mo "More?" "Scan another drawer?" "Yes" "No"
if $mo EQ 1
skip beg back
endif
if exists env:mo
delete >nil: env:mo
endif
if exists env:disp
delete >nil: env:disp
endif
if exists env:dev
delete >nil: env:dev
endif
if exists env:hap
delete >nil: env:hap
endif
if exists env:sav1
delete >nil: env:sav1
endif
if exists env:rec
delete >nil: env:rec
endif
if exists env:sav
delete >nil: env:sav
endif
if exists env:int
delete >nil: env:int
endif
quit