程序员在Android开发中常用会用到的Linux命令集合

来源:互联网 发布:运用大数据的案例分析 编辑:程序博客网 时间:2024/05/23 01:11


   Android开发中的linux命令,安卓下面有个软件叫终端模拟器,其实就是Linux下的命令行,使用这些命令能有效处理问题。更多内容,进入扣丁iOS开发培训技术分享模块阅读。
基本知识


“/”,这个英文字母斜杠指的是根目录,类似Windows的C:\,但是Linux下只有一个根目录,所有的文件系统、设备都会挂载在这个目录或者它的子目录之下。


“~”,这个符号指的是当前用户的家目录,比如root用户的家目录是“/root”,而一般用户的家目录是“/home/用户名”。


命令行头部有个标记是“$”或者“#”,前者表示普通用户,后者表示root用户,这就是为什么输入“su”得到最高权限之后命令行头会变成“#”,其实就是以root用户登录,如果某个程序获得最高权限,就是指这个程序是以root帐户启动的。


“|”,被称作管道,比如“cat /proc/cpuinfo | more”,即将前面命令的输出作为第二个命令的输入。


“/”目录下会有很多目录,这些目录其实是通用的,在各个版本的Linux下都有一样的名称,Android有部分文件夹有区别。每个文件夹都有特殊用途,以下是常见例子:


“/bin”里面放了很多应用程序,这些应用程序就是下面列举的众多命令,因为这些命令本质上就是一个一个的应用程序。


“/sbin”和/bin目录类似,两者区别要视具体情况。


“/etc”是Linux系统的配置文件,安卓社区里最常用的例子莫过修改“/etc/hosts”,这是etc目录下的一个文件名叫hosts,是一个简单的DNS。你可以用命令“vi”或者“vim”来修改(vi /etc/hosts)


“/root”是root用户的家目录,root用户会将自己的文件放在这里。


“/sdcard”是安卓(Android)特有的一个目录,它会将SD卡挂载在这个目录下,即SD卡的所有内容都在这个目录里。


”/tmp“是临时目录,给程序临时使用的。


“/proc”也是每个Linux系统都有的目录,但是作用我说不清楚,里面有两个文件需要注意:“/proc/cpuinfo”和“/proc/meminfo”,前者保存了CPU特性和参数,后者保存内存当前状态,可以用命令“cat /proc/cpuinfo”查看。


文件相关命令


ls (当前目录的文件及文件夹列表,ls -l 是详细列举资料,包括权限,ls -i 查看文件的inode信息)


cd (切换至目录,比如cd ~ 是切换到当前用户的家目录比如/root,/home/username,cd /etc )


pwd (显示命令行当前所在目录)


mkdir (创建文件夹,mkdir temp:创建temp文件夹)


rm (删除文件或者文件夹,用法:rm 文件名,rm -f是强制删除,不提示,rm -r 是以recursive的方式删除,就是删除文件夹及文件夹里所有的文件及所有子文件及目录,比如“rm -f -r /”——你就彻底Happy了,因为这个命令可以把整个文件系统都给删了)


cp (复制)


mv (移动或者改名)


ln (创建符号链接,即快捷方式)


touch (这个命令比较特殊,有两个作用,一个是创建一个文件,touch 文件路径,前提是这个文件不存在,如果存在,即第二个作用,更新文件,更新修改日期等等,不更改文件内容)


cat (文件内容查看)


more (分页显示)


less (也是分页显示)


head (显示文件的头10行内容)


tail (显示文件的最后10行内容,tail -f 是显示最后10行内容外还持续显示当前新添加的内容,前提是文件被别的程序以append方式添加进去)


stat (显示文件的inode信息,关于inode请参考本文最后的文献)


find (搜索文件,比如“find -maxdepth=1 -size 0 -exec rm {} \;”,这个是搜索当前文件夹,不包含子文件夹 (深度为1),文件大小为0字节,把搜索到的文件列表作为参数逐条执行删除操作,“{}”指代搜索到的文件,“\;”其实就是“;”,命令行下需要转义(不明白不要紧))


进程管理


ps (显示当前活动的进程)


top (查看进程,类似任务管理器的进程页,以CPU消耗排序,通常由于位置不够,显示不全,这里面有很多重要信息,以后补全说明)


kill (杀死进程)


killall (杀死进程,比如killall firefox,杀死以“firefox”为名字的进程)


bg (列表被暂停的进程)


fg (继续执行被Ctrl+Z按钮暂停掉的进程)


文件权限


chmod (修改权限,比如“chmod 777 -R /sdcard”,对sdcard文件夹及其包含的所有文件及文件夹赋予所有权限)


ssh (连接远程服务器命令行)


grep


locate


系统信息


date (显示当前日期)


cal (打印日历)


uptime (显示开机多久了)


w


whoami


finger (“finger root”,显示root用户的相关信息,该命令作用不大)


uname -a (显示Linux版本)


cat (在命令行打印文件内容,比如“cat /etc/hosts”)


man (man是Linux一个特殊命令,用以显示命令的参考资料,“man 命令”,比如“man cat”,就是显示cat命令的用法和资料,类似的还有“命令 --help”,比如“cat --help”)


df (显示文件系统用了多少空间,还剩多少空间,还有存储设备的挂载情况)


du (查询文件和文件夹大小,比如“du -h --max-depth=1 /”,显示根目录下各个目录的大小)


free (内存使用情况)


压缩


tar cf file.tar files (简单介绍下,c是create(创建),x是extract(取出,解包),f是file(文件),z是zip(以zip方式压缩),j是以Bzip2方式压缩)


tar xf file.tar


tar czf file.tar.gz files


tar xzf file.tar.gz


tar cjf file.tar.gz2


tar xjf file.tar.gz2


gzip file


gzip -d file.gz (d是decompress,即解压缩)


网络


ping (测试连接到远程服务器的耗时和连通性,比如ping zydroid.com,100ms以内属于正常,美国到中国的耗时大概是150-250ms,国内都在100ms以内,全国范围电信内部访问一般少于50ms,电信和网通间大概在300-500ms,严重的时候上1000ms,相当于饶了地球一两圈。局域网内访问一般都在1-3ms,ping自己电脑都是0.000几ms)


whois


dig


wget (下载程序,wget URL,比如wget http://www.zydroid.com)


安装


./configure (配置)


make (编译)


make install (安装)


快捷键


Ctrl+C (终止当前命令的执行)


Ctrl+Z (暂停当前命令行的执行(将进程转入停止的状态),可以使用fg恢复继续执行。)


Ctrl+D (退出命令行,退出当前登录)


Ctrl+W (删除命令行当前输入的一个单词)


Ctrl+U (删除用户输入的一整行文字)


Ctrl+R (搜索最近执行的命令)


!! (重复上一条命令)


exit (退出命令行和Ctrl+Z类似)


其它


reboot (重启系统)


shutdown -h 0 (立即关机)
0 0