嵌入式Linux应用程序开发详解-笔记1

来源:互联网 发布:淘宝宝贝重复铺货 编辑:程序博客网 时间:2024/05/16 13:52

1.Linux 常见用户管理命令

命 令 命 令 含 义 格 式useradd 添加用户账号 useradd [选项]用户名usermod 设置用户账号属性 usermod [选项]属性值userdel 删除对应用户账号 userdel [选项]用户名groupadd 添加组账号 groupadd [选项]组账号groupmod 设置组账号属性 groupmod [选项]属性值groupdel 删除对应组账号 groupdel [选项]组账号passwd 设置账号密码 passwd [对应账号]id 显示用户 ID、组ID 和用户所属的组列表 id [用户名]groups 显示用户所属的组 groups [组账号]who 显示登录到系统的所有用户 who
useradd 必须用 root的权限。而且 useradd 指令所建立的账号,实际上是保存在“/etc/passwd”文本文件中,文件中每一行包含一个账号信息。


2.Linux 常见系统管理命令
命 令 命 令 含 义 格 式ps 显示当前系统中由该用户运行的进程列表 ps [选项]top 动态显示系统中运行的程序(一般为每隔 5stopkill 输出特定的信号给指定 PID(进程号)的进程kill [选项]进程号(PIDuname 显示系统的信息(可加选项-auname [选项]setup 系统图形化界面配置 setupcrontab 循环执行例行性命令 crontab [选项]shutdown 关闭或重启 Linux系统 shutdown [选项] [时间]uptime 显示系统已经运行了多长时间 uptimeclear 清除屏幕上的信息 clear

例:ps -aux   查看所有进程及其 PID(进程号)、系统时间、命令详细目录、执行者等   显示 CPU 及内存占用率、进程状态


3.磁盘相关命令fdisk
Linux 常见系统管理命令
选 项 参 数 含 义 格 式free 查看当前系统内存的使用情况 free [选项]df 查看文件系统的磁盘空间占用情况 df [选项]du 统计目录(或文件)所占磁盘空间的大小 du [选项]fdisk 查看硬盘分区情况及对硬盘进行分区管理 fdisk [-l]例:
du -h module_test.c
fdisk -l
查看/var/log/messages 文件,可以找到 Linux 系统已辨认出来的设备代号。


4.磁盘挂载命令mount
挂载文件系统,它的使用权限是超级用户或/etc/fstab中允许的使用者。
格式
mount [选项] [类型]设备文件名 挂载点目录
其中的类型是指设备文件的类型。
3)常见参数
mount 命令选项常见参数列表
选 项 参 数 含 义-a 依照/etc/fstab的内容装载所有相关的硬盘-l 列出当前已挂载的设备、文件系统名称和挂载点-t 类型将后面的设备以指定类型的文件格式装载到挂载点上。常见的类型有前面介绍过的几
种:
vfatext3ext2iso9660nfs-f 通常用于除错。它会使 mount 不执行实际挂上的动作,而是模拟整个挂上的过程,通常
会和
-v 一起使用
例:mount -t vfat /dev/hda1 /mnt/c 
umount /mnt/c卸载

5.其他常见命令
ls 命令常见参数列表
选 项 参 数 含 义-1--format=single-column一行输出一个文件(单列输出)-a-all列出目录中所有文件,包括以“.”开头的文件-d 将目录名和其他文件一样列出,而不是列出目录的内容-l,--format=long,
--format=verbose
除每个文件名外,增加显示文件类型、权限、硬链接数、所有者名、组
名、大小(
Byte)及时间信息(如未指明是其他时间即指修改时间)-f 不排序目录内容,按它们在磁盘上存储的顺序列出
mkdir 命令常见参数列表
选 项 参 数 含 义-m 对新建目录设置存取权限,也可以用 chmod命令(在本节后会有详细说明)设置-p可以是一个路径名称。此时若此路径中的某些目录尚不存在,在加上此选项后,系统将自动
建立好那些尚不存在的目录,即一次可以建立多个目录


cat 命令常见参数列表
选 项 参 数 含 义-n 由第一行开始对所有输出的行数编号-b -n 相似,只不过对于空白行不编号
cp 命令常见参数列表
选 项 参 数 含 义-a 保留链接、文件属性,并复制其子目录,其作用等于 dpr选项的组合-d 拷贝时保留链接-f 删除已经存在的目标文件而不提示-i 在覆盖目标文件之前将给出提示要求用户确认。回答 y时目标文件将被覆盖,而且是交互式拷贝-p 此时 cp 除复制源文件的内容外,还将把其修改时间和访问权限也复制到新文件中-r若给出的源文件是一目录文件,此时 cp将递归复制该目录下所有的子目录和文件。此时目
标文件必须为一个目录名


mv 命令常见参数列表
选 项 参 数 含 义-i mv 操作将导致对已存在的目标文件的覆盖,此时系统询问是否重写,并要求用户回答 y
n,这样可以避免误覆盖文件-f 禁止交互操作。在 mv操作要覆盖某已有的目标文件时不给任何指示,在指定此选项后,i
选项将不再起作用

chown:修改文件所有者和组别。
chgrp:改变文件的组所有权。
chown chgrp命令常见参数列表
选 项 参 数 含 义-c-changes详尽地描述每个 file实际改变了哪些所有权-f--silent,--quiet不打印文件所有权就不能修改的报错信息

chmod 可使用符号标记进行更改和八进制数指定更改两种方式,因此它的格式也有两种
不同的形式。
① 符号标记:chmod [选项]…符号权限[符号权限]…文件
其中的符号权限可以指定为多个,也就是说,可以指定多个用户级别的权限,但它们中
间要用逗号分开表示,若没有显示指出则表示不作更改。
② 八进制数:chmod [选项] …八进制权限 文件…

chmod 命令常见参数列表
选 项 参 数 含 义-c 若该文件权限确实已经更改,才显示其更改动作-f 若该文件权限无法被更改也不要显示错误信息-v 显示权限变更的详细资料转化后 8 进制数、2进制及对应权限的关系
转换后 8 进制数 2 进 制 对 应 权 限 转换后 8 进制数 2 进 制 对 应 权 限0 000 没有任何权限 1 001 只能执行2 010 只写 3 011 只写和执行4 100 只读 5 101 只读和执行6 110 读和写 7 111 读,写和执行


grep [选项]格式 [文件及路径]
其中的格式是指要搜索的内容格式,若缺省“文件及路径”则默认表示在当前目录下搜索。
grep 命令常见参数列表
选 项 参 数 含 义-c 只输出匹配行的计数-I 不区分大小写(只适用于单字符)-h 查询多文件时不显示文件名-l 查询多文件时只输出包含匹配字符的文件名-n 显示匹配行及行号-s 不显示不存在或无匹配文本的错误信息-v 显示不包含匹配文本的所有行
grep 特殊用法:
grep pattern1|pattern2 files:显示匹配pattern1 pattern2 的行;
grep pattern1 files|grep pattern2:显示既匹配pattern1 又匹配 pattern2 的行;
使用通配符“*”代表任意字符类似

find [路径][选项][描述]
其中的路径为文件搜索路径,系统开始沿着此目录树向下查找文件。它是一个路径列表,
相互用空格分离。若缺省路径,那么默认为当前目录


find 选项常见参数列表
选 项 参 数 含 义-depth 使用深度级别的查找过程方式,在某层指定目录中优先查找文件内容-mount 不在其他文件系统(如 MsdosVfat等)的目录和文件中查找
find 描述常见参数列表
选 项 参 数 含 义-name 支持通配符*?-user 用户名:搜索文件属主为用户名(ID或名称)的文件-print 输出搜索结果,并且打印
/etc 目录中查找大于500000 字节,并且在 24 小时内修改的某个文件 如“find /etc -size +500000c -and -mtime +1



locate 用于查找文件。其方法是先建立一个包括系统内所有文件名称及路径的数据库,之后当
寻找时就只需查询这个数据库,而不必实际深入档案系统之中了。因此其速度比
find 快很多。
locate 命令常见参数列表
选 项 参 数 含 义-u 从根目录开始建立数据库-U 指定开始的位置建立数据库-f 将特定的文件系统排除在数据库外,例如 proc文件系统中的文件-r 使用正则运算式做寻找的条件-o 指定数据库存的名称
locate issue -U ./
updatedb
locate -r issue*
在当前目录下建立了一个数据库,并且在更新了数据库之后进行正则匹配查找。





例:
mkdir -p ./hello/my
mkdir -m 777 ./why
cat -n hello1.c hello2.c
cp -a ./my/why/ ./
mv -i ./my/why/ ./
rm –r -i ./why
chown root uClinux-dist.tar
chmod a+rx,u+w uClinux20031103.tgz
chmod 765 genromfs-0.5.1.tar.gz
grep "hello" / -r

find ./ -name qiong*.c