Android

个人Android学习总结


3、Linux常用命令

<ul> <li> <h1>Linux常用命令</h1> </li> <li> <h2>1.基本命令</h2> </li> <li><strong>pwd</strong>:查看当前工作目录</li> <li><strong>mkdir</strong> 路径:创建目录</li> <li>-p 递归路径:递归创建目录</li> <li> <p>-m 权限 路径:直接为目录加权限</p> </li> <li><strong>rm</strong> 路径:删除</li> <li>rm -r 路径:删除目录中所有文件,会询问</li> <li>rm -rf 路径:删除目录中所有文件,不会询问</li> <li> <p>rm -i *后缀:删除所有这个后缀的文件</p> </li> <li><strong>rmdir</strong> -p 路径:删除空目录</li> <li><strong>mv</strong> :移动或改名</li> <li>mv a文件名 b文件文件名:a文件改名为b文件</li> <li>-i 询问是否覆盖,-f 不询问</li> <li>mv 文件 目录:将文件移动到目录</li> <li> <p>mv * ../:移动所有当前目录文件到上一级</p> </li> <li><strong>cp</strong>:拷贝</li> <li>cp 源文件 目标文件:拷贝源文件到目标文件</li> <li> <p>-a:拷贝全部</p> </li> <li> <hr /> </li> <li> <h2>2.文件查找命令</h2> </li> <li><strong>which</strong> 可执行文件名:查找这个可执行文件位置</li> <li><strong>locate</strong> 相关字段:查找所有和这个字段相关的文件并返回路径</li> <li><strong>whereis</strong> 命令是定位可执行文件、源代码文件、帮助文件在文件系统中的位置。这些文件的属性应属于原始代码,二进制文件,或是帮助文件。</li> <li> <p><strong>find</strong> 用于在文件树种查找文件,并作出相应的处理</p> </li> <li> <h4>Find</h4> </li> <li> <h5>命令参数:</h5> </li> <li><strong>pathname</strong>: find命令所查找的目录路径。例如用.来表示当前目录,用/来表示系统根目录。 </li> <li><strong>-print</strong>: find命令将匹配的文件输出到标准输出。 </li> <li><strong>-exec</strong>: find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为'command' { } \;,注意{ }和\;之间的空格。</li> <li> <p><strong>-ok</strong>: 和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。</p> </li> <li> <h5>命令选项:</h5> </li> <li><strong>-prune</strong> 使用这一选项可以使find命令不在当前指定的目录中查找,如果同时使用-depth选项,那么-prune将被find命令忽略。</li> <li><strong>-user</strong> 按照文件属主来查找文件。</li> <li><strong>-group</strong> 按照文件所属的组来查找文件。</li> <li><strong>-mtime -n +n</strong> 按照文件的更改时间来查找文件, - n表示文件更改时间距现在n天以内,+ n表示文件更改时间距现在n天以前。find命令还有-atime和-ctime 选项,但它们都和-m time选项。</li> <li><strong>-nogroup</strong> 查找无有效所属组的文件,即该文件所属的组在/etc/groups中不存在。</li> <li><strong>-nouser </strong> 查找无有效属主的文件,即该文件的属主在/etc/passwd中不存在。</li> <li><strong>-newer file1 ! file2</strong> 查找更改时间比文件file1新但比文件file2旧的文件。</li> <li><strong>-type</strong> 查找某一类型的文件,诸如:</li> <li><strong>-perm</strong> 按照文件权限来查找文件。</li> <li><strong>b</strong> - 块设备文件。</li> <li><strong>d</strong> - 目录。</li> <li><strong>c</strong> - 字符设备文件。</li> <li><strong>p</strong> - 管道文件。</li> <li><strong>l </strong>- 符号链接文件。</li> <li><strong>f </strong>- 普通文件。</li> <li><strong>-name</strong> 按照文件名查找文件。</li> <li><strong>-size n</strong>:[c] 查找文件长度为n块的文件,带有c时表示文件长度以字节计。-depth:在查找文件时,首先查找当前目录中的文件,然后再在其子目录中查找。</li> <li><strong>-fstype</strong>:查找位于某一类型文件系统中的文件,这些文件系统类型通常可以在配置文件/etc/fstab中找到,该配置文件中包含了本系统中有关文件系统的信息。</li> <li><strong>-mount</strong>:在查找文件时不跨越文件系统mount点。</li> <li><strong>-follow</strong>:如果find命令遇到符号链接文件,就跟踪至链接所指向的文件。</li> <li><strong>-cpio</strong>:对匹配的文件使用cpio命令,将这些文件备份到磁带设备中。</li> <li>另外,下面三个的区别:</li> <li><strong>-amin n</strong> 查找系统中最后N分钟访问的文件</li> <li><strong>-atime n</strong> 查找系统中最后n*24小时访问的文件</li> <li><strong>-cmin n</strong> 查找系统中最后N分钟被改变文件状态的文件</li> <li><strong>-ctime n</strong> 查找系统中最后n*24小时被改变文件状态的文件</li> <li><strong>-mmin n </strong> 查找系统中最后N分钟被改变文件数据的文件</li> <li> <p><strong>-mtime n</strong> 查找系统中最后n*24小时被改变文件数据的文件</p> </li> <li> <h5>简单操作</h5> </li> <li><strong>find -atime -2</strong> : 寻找两天内修改的文件</li> <li><strong>find -name adapter </strong>: 寻找全部adapter的目录</li> <li>*<em>find -type f -name </em>.java **: 寻找全部类型是普通文件的后缀是java的文件</li> <li><strong>find后可以加路径缩小搜索范围,加.为当前目录,加/为根目录</strong></li> <li> <p><strong>find . -size +1000c -print</strong>:查找当前目录大于1K的文件</p> </li> <li> <hr /> </li> <li> <h5>Find之exec</h5> </li> <li><strong>exec指执行,也就是对find到的文件执行操作</strong></li> <li>首先我们找到需要的文件</li> <li><strong>find 指定路径 -type f -exec ls -l {} \;</strong>:显示</li> <li>我们可以对找到的文件进行操作</li> <li>*<em>find 指定路径 -name &quot;</em>.txt&quot; -ok rm {} \;**:删除</li> <li> <p>*<em>find 指定路径 -name &quot;</em>.txt&quot; -exec cp {} 目标路径 \;**:复制</p> </li> <li> <hr /> </li> <li> <h5>Find之xargs</h5> </li> <li><strong>xargs:参数代换;是将参数列表转换成小块分段传递给其他命令,以避免参数列表过长的问题</strong></li> <li><strong>find 指定路径 搜索条件 | xargs -i -p mv {} 目标路径</strong>: 同样可以移动</li> <li> <p><strong>find 指定路径 搜索条件 | xargs grep 关键字</strong>:搜索符合条件的文件里面带有关键字的行</p> </li> <li> <hr /> </li> <li> <h2>3.Linux系统命令</h2> </li> <li>文件权限</li> <li><strong>chmod</strong>:加权限,常用为777最高权限</li> <li>-R 为所有子目录加权限</li> <li><strong>chown</strong>将指定文件的拥有者改为指定的用户或组</li> <li>压缩解压</li> <li><strong>tar -cvf</strong> 目标文件及类型 源文件:仅打包,不压缩</li> <li><strong>tar -zcvf</strong> 目标文件及类型 源文件:打包后,以 gzip 压缩</li> <li>网络命令</li> <li><strong>ifconfig</strong>: 查看当前网络</li> <li><strong>ifconfig eth0 up</strong>:启动指定网卡</li> <li><strong>ifconfig eth0 down</strong> :关闭指定网卡</li> <li><strong>ifconfig eth0 192.168.120.56 netmask 255.255.255.0 broadcast 192.168.120.255</strong></li> <li>/给eth0网卡配置IP地址:192.168.120.56,加上子掩码:255.255.255.0,加上个广播地址: 192.168.120.255</li> <li> <p><strong>ping</strong> 查看连接性</p> </li> <li> <hr /> </li> <li> <h2>4.其他命令</h2> </li> <li><strong>top</strong>:性能分析工具</li> <li>运行top时,按数字键1:查看每个cpu状态</li> <li>x:加亮cpu占用行</li> <li>第一行为进程id,top -p id:显示指定ip信息</li> <li>kill id:杀死进程</li> <li>top -d 时间:设置更新周期</li> <li><strong>free</strong>:可以显示Linux系统中空闲的、已用的物理内存及swap内存,及被内核使用的buffer</li> <li>-b;-k;-m;-g:以b,kb,mb,gb,形式显示</li> <li><strong>total</strong>:总计物理内存的大小。</li> <li><strong>used</strong>:已使用多大。</li> <li><strong>free</strong>:可用有多少。</li> <li><strong>Shared</strong>:多个进程共享的内存总额。</li> <li><strong>Buffers/cached</strong>:磁盘缓存的大小。</li> <li><strong>iostat</strong>:对系统的磁盘操作活动进行监视</li> <li><strong>shell中运行dumpsys</strong>:查看所有运行的services</li> <li>在后面加上运行的service名字,可以查看指定service的详细信息</li> <li> <p>-h可以查看帮助信息</p> </li> <li> <hr /> </li> <li> <h2>5.Monkey一些简单指令</h2> </li> <li><strong>-v</strong>:指定打印信息的详细级别,一个 -v增加一个级别 , 默认级别为 0 。</li> <li><strong>-p</strong>:指定有效的package(如不指定,则对系统中所有package有效),一个-p 对应一个有效packag</li> <li><strong>--dbg-no-events</strong>:初始化启动的activity,但是不产生任何事件。</li> <li><strong>--hprof</strong>:指定该项后在事件序列发送前后会立即生成分析报告 。</li> <li><strong>--ignore-crashes</strong>:忽略崩溃</li> <li><strong>--ignore-timeouts</strong>:忽略超时</li> <li><strong>--ignore-security-exceptions</strong>:忽略安全异常</li> <li><strong>--kill-process-after-error</strong>:发生错误后直接杀掉进程</li> <li><strong>--monitor-native-crashes</strong>:跟踪本地方法的崩溃问题</li> <li><strong>--wait-dbg</strong>:知道连接了调试器才执行monkey测试。</li> <li> <h5>下面来一串简单的指令下面来一串简单的指令</h5> </li> <li><strong>adb shell monkey -p com.spt.carengine -s 1000 --ignore-crashes --ignore-timeouts --monitor-native-crashes -v -v 50 &gt; /home/lz/qwq.txt</strong></li> <li>啥意思呢:就是对我们车机主程序进行测试,每隔1秒点击一次,忽略程序崩溃 、 忽略超时 、 监视本地程序崩溃 、 详细信息级别为2 , 产生 50个事件,日志输出到qwq文件</li> </ul>

页面列表

ITEM_HTML