核心系统信息与状态命令
这些命令用于查看系统基本信息、运行状态和资源使用情况。

| 命令 | 功能描述 | 常用选项/示例 |
|---|---|---|
pidin |
最重要的命令之一,显示系统中所有进程的详细信息,类似于 Linux 的 ps 命令。 |
pidin:显示所有进程及其 ID、父 ID、状态、优先级等。pidin <pid>:显示指定 PID 的详细信息。pidin -p <pid>:同上。pidin -f:以更详细的格式显示。pidin -F:持续刷新,类似 top 的简化版。 |
slay |
终止(杀死)一个或多个进程,类似于 Linux 的 kill 或 pkill。 |
slay <pid>:杀死指定 PID 的进程。slay <process_name>:杀死所有名为 process_name 的进程(慎用)。 |
load |
显示系统当前的负载情况(CPU、内存、I/O 等)。 | load:显示实时负载信息。 |
| *`devb-`** | 管理块设备(如硬盘、U盘),设备名通常是 devb-<driver>-<unit>。 |
devb-um-a:挂载所有 USB 存储设备。umount /dev/hd0:卸载设备。 |
mount / umount |
挂载和卸载文件系统。 | mount -t <fs_type> <device> <mount_point>:挂载文件系统。umount <mount_point>:卸载文件系统。 |
sysinfo |
显示系统核心信息,如 CPU 类型、内存大小、启动时间等。 | sysinfo:显示核心系统信息。 |
文件与目录管理
这些命令与 Unix/Linux 非常相似,用于操作文件和目录。
| 命令 | 功能描述 | 常用选项/示例 |
|---|---|---|
ls |
列出目录内容。 | ls:列出文件和目录。ls -l:以长格式显示(权限、所有者、大小、日期)。ls -a:显示所有文件,包括隐藏文件。 |
cd |
切换当前工作目录。 | cd /:切换到根目录。cd /home:切换到 home 目录。cd ..:切换到上级目录。 |
pwd |
显示当前工作目录的完整路径。 | pwd |
cp |
复制文件或目录。 | cp source_file destination_file:复制文件。cp -r source_dir destination_dir:递归复制目录。 |
mv |
移动文件/目录,或重命名。 | mv old_name new_name:重命名。mv /path/to/file /new/path/:移动文件。 |
rm |
删除文件或目录。 | rm file:删除文件。rm -r directory:递归删除目录。rm -f file:强制删除,不提示。 |
mkdir |
创建新目录。 | mkdir new_dir:创建目录。mkdir -p parent/child:创建多级目录。 |
rmdir |
删除空目录。 | rmdir empty_dir |
cat |
查看文件内容。 | cat file.txt:显示整个文件内容。 |
less / more |
分页查看文件内容。 | less file.txt:交互式分页查看,支持上下翻页、搜索等。 |
touch |
创建一个空文件或更新文件的时间戳。 | touch new_file.txt |
find |
在目录树中搜索文件。 | find / -name "*.c":在整个根目录下查找所有 .c 文件。 |
网络配置与管理
QNX 的网络管理非常灵活,通常通过命令行进行配置。
| 命令 | 功能描述 | 常用选项/示例 |
|---|---|---|
ifconfig |
配置和显示网络接口信息。 | ifconfig:显示所有网络接口状态。ifconfig up:启用指定接口。ifconfig down:禁用指定接口。ifconfig <interface> <ip_address> netmask <mask>:设置 IP 地址和子网掩码。 |
route |
显示和操作 IP 路由表。 | route add default gw <gateway_ip>:添加默认网关。route delete default:删除默认路由。 |
netstat |
显示网络连接、路由表、接口统计等。 | netstat -an:显示所有网络连接,不解析域名。netstat -i:显示网络接口统计信息。 |
ping |
测试网络连通性。 | ping <hostname_or_ip> |
telnet |
远程登录工具,常用于测试端口是否可达。 | telnet <hostname> <port> |
ssh |
安全的远程登录工具。 | ssh <username>@<hostname> |
arp |
查看/操作 ARP 缓存。 | arp -a:显示所有接口的 ARP 缓存。 |
开发与调试命令
这些是 QNX 开发者最常用的命令,用于构建、调试和分析程序。
| 命令 | 功能描述 | 常用选项/示例 |
|---|---|---|
ntox86 |
将 QNX 可执行文件转换为可在 x86 PC 上运行的格式,用于交叉开发调试。 | ntox86 my_qnx_app:生成 my_qnx_app.x86。 |
gdb |
GNU 调试器,用于调试 C/C++ 等程序。 | gdb <executable_file>:启动调试器。gdb -x <command_file>:执行命令文件。target remote <hostname>:<port>:连接到远程目标进行调试。 |
strace |
跟踪程序的系统调用和信号。 | strace my_app:运行 my_app 并打印其所有系统调用。 |
dumper |
转储进程的内存映像(core dump),用于事后分析。 | dumper <pid> <output_file>:将指定进程的内存转储到文件。 |
ntoarm-objdump |
显示目标文件(ELF 格式)的信息,如反汇编代码、符号表等。 | ntoarm-objdump -d <executable_file>:反汇编代码段。 |
ntoarm-nm |
列出目标文件中的符号。 | ntoarm-nm <executable_file>:查看函数和变量名。 |
高级与系统管理命令
这些命令通常由系统管理员使用,用于系统维护和高级操作。

| 命令 | 功能描述 | 常用选项/示例 |
|---|---|---|
io-a |
I/O 查看器,显示系统中所有进程的 I/O 统计信息,是诊断 I/O 瓶颈的利器。 | io-a:显示所有进程的 I/O 统计。 |
io-pipe |
显示命名管道的使用情况。 | io-pipe |
io-net |
显示网络 I/O 的统计信息。 | io-net |
sync |
将内存中的缓冲区数据写入磁盘,确保数据持久化。 | sync |
shutdown |
关闭或重启系统。 | shutdown -h now:立即关机。shutdown -r now:立即重启。 |
chmod |
修改文件或目录的权限。 | chmod 755 my_script:设置所有者可读写执行,其他用户可读执行。 |
chown |
修改文件或目录的所有者。 | chown <user>:<group> file:更改文件所有者和所属组。 |
实用工具
| 命令 | 功能描述 | 常用选项/示例 |
|---|---|---|
grep |
文本搜索工具。 | grep "pattern" file:在文件中搜索模式。grep -r "pattern" dir:在目录中递归搜索。 |
echo |
输出文本到终端。 | echo $PATH:打印环境变量 PATH 的值。 |
export |
设置或显示环境变量。 | export PATH=$PATH:/new/path:将新路径添加到 PATH。 |
env |
显示所有环境变量。 | env |
date |
显示或设置系统日期和时间。 | date:显示当前日期时间。date "2025-10-27 10:00:00":设置系统时间。 |
awk / sed |
强大的文本流处理工具。 | awk '{print $1}' file:打印每行的第一列。sed 's/old/new/g' file:全局替换文件中的 old 为 new。 |
QNX Neutrino 特有的概念与命令
QNX 的一个核心特点是资源管理器,与传统的 Unix/Linux 不同,QNX 的设备、进程、内存等都是作为“资源”存在的,可以通过 io-ctl 等方式进行精细控制。
-
io-ctl: 这是与设备驱动程序进行通信的核心命令,它允许你向设备发送特定的控制命令,控制串口的波特率、数据位等。# 示例:设置串口 /dev/ser1 的波特率为 115200 io-ctl /dev/ser1 termios-set-baud 115200
-
procnto: 这是 QNX 的核心进程,类似于 Linux 的init和内核的结合体,它负责启动其他所有进程,你不能直接slay procnto,否则系统会崩溃。 -
开机启动: QNX 的启动脚本通常位于
/etc/system/目录下,文件名为system.info,你可以通过编辑这个文件来配置开机自启动的服务。
(图片来源网络,侵删)
实战小技巧
-
查看某个进程打开了哪些文件? QNX 没有完全等同于
lsof的命令,但你可以通过结合pidin和/proc文件系统来查看。# 假设进程ID是 123 pidin 123 | grep -E "fd|file" # 或者查看 /proc/123/fd 目录下的符号链接 ls -l /proc/123/fd
-
如何持续监控 CPU 使用率? 使用
pidin -F可以持续刷新进程列表,观察哪个进程占用了最多的 CPU。pidin -F
-
如何查找某个驱动模块是否已加载? 使用
pidin -m可以列出所有已加载的内核模块。pidin -m | grep <driver_name>
希望这份详细的 QNX 命令列表对您有帮助!对于初学者,建议从 pidin, ls, cd, cat, ifconfig 等基础命令开始,逐步深入到 slay, io-a, gdb 等高级命令。
