嵌入式开发常用的linux命令
Posted 七章啊
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了嵌入式开发常用的linux命令相关的知识,希望对你有一定的参考价值。
基本的cd、pwd、ls、cp、mv之类的就不写了
1.grep命令
在指定目录下查找包含某个字段的文件
grep “name” XXX -R
在目录XXX里面查找包含“name”字段的文件,-R是递归查找目录。
grep “name” * -R
在当前目录下的所有文件目录里面查找包含"name"字段的文件。
2.find命令
find XXX -name “*xx”
在XXX目录下查找包含“name”字段的文件
PS:grep会查找文件/文本里面的内容是否包含所需字段,而find只会查找文件名。
3.tar命令
tar命令可以用来打包、解包、压缩和解压缩四种功能,打包和压缩基本一样,但是压缩可以自己单独压缩,解包和解压也是基本一样。
常用的压缩、解压方式有两种,gzip和bzip2,一般来说以“.gz”、“.z”结尾的文件是用gzip方式进行压缩的,以“.bz2”结尾的文件是用bzip2的方式压缩的。
tar命令有5个常用的选项:
-c
|
创建,用来生成文件包。
|
-x
|
提取,从文件包中提取文件。
|
-z
|
使用gzip的方式进行处理,与“c”结合表示压缩,与“x”结合表示解压。
|
-j
|
使用bzip2的方式进行处理,与“c”结合表示压缩,与“x”结合表示解压。
|
-f
|
表示文件,后面接着文件名。
|
4.diff命令和patch命令
diff命令经常用来比较目录、文件,也可以用来制作补丁文件。
diff命令的5个常用选项:
-u
|
表示在比较结果输出上下文中一下相同的行,有利于人工定位。
|
-r
|
表示递归比较各个子目录下的文件。
|
-N
|
将不存在的文件当做空文件。
|
-w
|
忽略对空格的比较。
|
-B
|
忽略对空格的比较。
|
例如:A1是A的最新版本,要进行打补丁的话,卸载A并且安装新的A1显然不方便,就可以用diff命令来生成补丁,相对于安装包来说,补丁文件通常很小。
diff A A1 > A.diff
patch命令是用来打补丁的,根据补丁文件来修改原始文件。将原始文件和补丁文件放在同一个目录下面,执行以下命令就可以了。
cd A
patch -pl < ../A.diff
5.basename命令
用来返回文件或者目录的基本名称,就是把前面的路径删掉。
basename /xxx/cccc/aaaa
会输出aaaa(我不知道着命令有什么用,文件名不是可以直接拷贝吗)
6.dirname命令
与basename命令相反,用来获取该文件的路径。
dirname /xxx/ccc/aaa
结果会输出/xxx/ccc(老实说我也不知道这个命令的实际用处,直接用pwd然后拷贝不好吗)
7.rev命令
将文件里面的每行的内容反向输出,就是该行的第一个与最后一个交换,以此类推,但是所在的具体行是不变的。
rev xxx
8.head命令
head -n 5 file
输出file文件的前五行。
9.tail命令
与head命令相反,用来查看某个文件的最后几行
tail -n 5 file
查看file文件的最后五行。
tail -f file
循环显示file文件的全部内容,这个命令会一直开启,只要file文件有新的内容写入,就会读取并输出。
10.echo命令
将string或$variable的值输出到屏幕上。
11.wc命令
用来统计指定文件中的字节数等数据并输出。
-c
|
统计字节数。
|
-l
|
统计行数。
|
-m
|
统计字符数,这个标志不能与-c标志一起使用。
|
-w
|
统计字数,一个字被定义为由空白、挑个或者换行符分隔的字符。
|
12.chown命令
改变文件的拥有者和群组。
-c
|
显示更改的部分信息。
|
-f
|
忽略错误信息。
|
-R
|
递归处理指定的目录及其子目录下的所有文件。
|
13.chmod命令
字母设定法:
权限范围:
u
|
目录或者文件的当前用户
|
g
|
目录或者文件的当前群组
|
o
|
除了目录或者文件的当前用户或群组之外的用户或者群组。
|
a
|
所有的用户以及群组。
|
权限代号:
r
|
读权限,用数字4表示。
|
w
|
写权限,用数字2表示。
|
x
|
执行权限,用数字1表示。
|
-
|
删除权限,用数字0表示。
|
s
|
特殊权限
|
chmod u+x file
chmod 777 file
14.chgrp命令
采用群组名称或者群组识别码的方式改变文件或者目录的所属群组。
-c
|
当发生改变时输出调试信息。
|
-f
|
不显示错误信息。
|
-R
|
处理指定目录以及其子目录下的所有文件。
|
-v
|
运行时显示详细的处理信息。
|
chgrp -R group dieName
便利修改dirName文件夹所有子目录以及其文件所属群组位group。
15.gzip命令
压缩,命令执行完生成.gz的文件。
-c
|
把压缩后的文件输出到标准输出设备。
|
-d
|
解开压缩文件。
|
-f
|
强行压缩文件。
|
-l
|
列出压缩文件的相关信息。
|
-r
|
递归处理。
|
-t
|
测试压缩文件是否正确无误。
|
16.zcat命令
查看压缩文件的内容。
-c
|
将压缩的资料输出到屏幕上。
|
-t
|
减压压缩文档的一致性,查看压缩文件是否有错误。
|
-n
|
n位压缩登记,-1~-9,速度逐渐增快。
|
17.gunzip命令
解压“.gz”文件
-c
|
输出解压后的文件。
|
-d
|
解开压缩文件。
|
-f
|
强制解开压缩文件。
|
-l
|
列出压缩文件的相关信息。
|
-r
|
递归处理。
|
-t
|
测试压缩文件是否正确。
|
18.ifconfig命令
查看和配置网络设备。
ifconfig eth0 192.168.120.56 netmask 255.255.255.0 #给eth0网卡配置IP地址,并加上子网掩码255.255.255.0
ifconfig eth0 arp #开启网卡eth0的arp协议。
ifconfig eth0 -arp #关闭网卡eth0的arp协议。
ifconfig eth0 up #启动网卡eth0
19.ping命令
确定网络和外部主机的状态等。
ping op ip
-f
|
极限检测,短时间发大量包给机器。
|
-i
|
设定发送网络封包的间隔。
|
-t
|
存活数值。
|
20.telnet命令
确认某个ip地址的某个端口是否开启。
telnet www.baidu.com 88 #确认百度的88端口是否开启。
检验本机端口的连接情况。
netstat op
-a
|
显示连线中的所有socket。
|
-e
|
显示网络其他相关信息。
|
-t
|
显示tcp协议的连接情况。
|
-u
|
显示udp协议的连接情况。
|
22.wget命令
wget op xxx
23.history命令
清除历史。
history -c:清除所有的命令历史。
24.top命令
与ctrl+alt+del一样
top op
-i
|
设置间隔时间
|
-u
|
指定用户名
|
-p
|
指定进程
|
-n
|
循环次数
|
25.who命令
显示目前登入的用户信息。
who op
-h
|
显示各栏的标题信息。
|
-q
|
显示登入系统的账号名称和总人数。
|
26.ps命令
显示当前进程的状态。
-aux
|
显示比较详细的信息。
|
27.kill命令
终止进程。
kill sig pid
kill -9 8871 #种植pid号为8871的进程。
28.killall命令
杀死所有同名进程。
killall op pname。
以上是关于嵌入式开发常用的linux命令的主要内容,如果未能解决你的问题,请参考以下文章
0002 嵌入式开发带你从小白到大佬系列之——Linux文件系统常用文件操作命令及用户权限
嵌入式Linux第二部分 - 裸机开发/系统移植/驱动开发/内核开发