查询相关

find

按规则查找某个文件或文件夹,包括子目录

  • find . -name '*.sh' -- 以.sh结尾的文件
  • find . -name '*channel*' -- 包含channel字符的文件
  • find . -name 'build*' -- 以build开头的文件
  • find . -name 'abc??' -- abc后面有两个字符的文件

grep

查找内容包含指定的范本样式的文件,Global Regular Expression Print

  • grep -n pattern files -- 规则 -n表示显示行号
  • grep -n 'PostsActivity' AndroidManifest.xml
  • grep -n '\d' AndroidManifest.xml
  • grep 'aapt' build-channel.xml -- 文件中包含字符串的所有地方
  • grep -n 'aapt' build-channel.xml -- 文件中包含字符串的所有地方,并显示行号
  • ps -e | grep java -- 所有java进程
  • ps -e | grep -i qq --所有qq进程,不区分大小写
  • find . -name '*channel.xml' | xargs grep -n 'aapt' -- 在以channel.xml结尾的文件中查找包含‘aapt’关键字的地方
  • ls | grep 'channel' -- 包含channel关键字的文件

which

在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果

  • which zip
  • which grep

查看命令

tail

tail [-f] [-c Number | -n Number | -m Number | -b Number | -k Number] [File]

从指定点开始将文件写到标准输出。使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不断刷新,使你看到最新的文件内容。

  • tail -f test.log,循环查看文件内容,Ctrl+c来终止
  • tail -n 5 test.log,显示文件最后5行内容
  • tail -n +5 test.log,从第5行开始显示文件

more

more [-dlfpcsu] [-num] [+/ pattern] [+linenum] [file...]

more命令和cat的功能一样都是查看文件里的内容,但有所不同的是more可以按页来查看文件的内容,还支持直接跳转行等功能。

  • more +3 test.log,显示文件中从第3行起的内容
  • more -5 test.log,设定每屏显示行数
  • ls -l | more -5,每页显示5个文件信息
  • more +/day3 test.log,查找第一个出现"day3"字符串的行,并从该处前两行开始显示输出

less

less [options] [file...]

与more命令一样,less命令也用来分屏显示文件的内容。但是二者存在差别:less命令允许用户向前或向后浏览文件,而more命令只能向前浏览。用less命令显示文件时,用PageUp键向上翻页,用PageDown键向下翻页。要退出less程序,应按Q键。

  • less test.log,查看文件
  • ps -ef | less,查看进程信息并通过less分页显示
  • history | less,查看命令历史使用记录并通过less分页显示
  • less test1.log test2.log,浏览多个文件,n和p切换文件

watch

watch [options] command

每隔一段时间重复运行一个命令,默认间隔时间是2秒。要运行的命令直接传给shell(注意引用和转义特殊字符)。结果会展示为全屏模式,这样你可以很方便的观察改变

  • watch -n 60 date,执行date命令每分钟一次,输入^C 退出
  • watch -d ls -l,查看目录变化
  • watch -d ’ls -l | fgrep joe’,想找joe用户的文件
  • watch -d 'ls -l|grep scf',监测当前目录中 scf' 的文件的变化
  • watch -n 10 'cat /proc/loadavg',10秒一次输出系统的平均负载
  • watch -n 1 -d netstat -ant,每隔一秒高亮显示网络链接数的变化
  • watch -n 1 -d 'pstree | grep http',每隔一秒高亮显示http链接数的变化

文件相关

vi

vi file

  • 按i键,进入编辑模式
  • 按esc键,进入命令模式

    :w   保存文件但不退出vi
    :w file 将修改另外保存到file中,不退出vi
    :w! 强制保存,不推出vi
    :wq 保存文件并退出vi
    :wq! 强制保存文件,并退出vi
    q: 不保存文件,退出vi
    :q! 不保存文件,强制退出vi
    :e! 放弃所有修改,从上次保存文件开始再编辑

chmod

change mode,变更文件或目录的读、写、运行权限

chmod [-cfvR] [--help] [--version] mode file...

  • mode:权限设定字串,格式如下 : [ugoa...][[+-=][rwxX]...][,...]
  • u 表示该档案的拥有者,g 表示与该档案的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是
  • + 表示增加权限、- 表示取消权限、= 表示唯一设定权限。
  • r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行。
  • chmod也可以用数字来表示权限,语法为:chmod abc file,如chmod 777 file
  • 其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。 r=4,w=2,x=1
  • chmod 777 file,等同于 chmod a=rwx file
  • chmod ug=rwx,o=x file,等同于 chmod 771 file
  • chmod 4755 filename,可使此程序具有root的权限
  • ls -l 可以查看列出当前用户的文件权限

zip

zip -r filename.zip filesdir

  • zip -r test.zip ./*,把当前所有文件压缩到test.zip
  • zip -r test.zip test,把test文件所有文件及目录,要是到test.zip
  • zip -d test.zip test.txt,删除压缩文件中test.txt文件
  • zip -m test.zip ./test.txt,向压缩文件中test.zip中添加test.txt文件
  • zip -r test.zip file1 file2 file3 filesdir,处理多个文件和目录,空格隔开

unzip

  • unzip zip-file,解压到当前目录
  • unzip -d dst-dir zip-file,解压到指定的目录,-d后为指定目录
  • unzip -n zip-file,不覆盖已经存在的文件,-n为不要覆盖原有的文件
  • unzip -n -d dst-dir zip-file,解压到指定的目录,不覆盖已经原有的文件
  • unzip -o -d dst-dir zip-file,-o不必先询问用户覆盖原有文件
  • unzip -l zip-file,仅查看压缩文件内所包含的文件

tar

  • tar cvf test.tar test,把test下所有文件和目录做备份
  • tar czvf test.tar.gz test,把test下所有文件和目录做备份并进行压缩
  • tar xzvf test.tar.gz,把这个备份文件还原解压缩
  • tar tvf test.tar | more查看备份文件的内容,并以分屏方式显示在显示器上
  • tar czvf test.tar.gz test --exclude=test/svn备份压缩排除目录

touch

内存相关

ps

显示瞬间行程(process)的动态,ps [options] [--help]

  • ps -A,列出所有的进程
  • ps -w,显示加宽可以显示较多的资讯
  • ps -au,显示较详细的资讯
  • ps -aux,显示所有(包含其他用户)的进程
  • ps命令详解
  • ps命令介绍

linux上进程有5种状态:

  1. 运行(正在运行或在运行队列中等待)
  2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号)
  3. 不可中断(收到信号不唤醒和不可运行, 进程必须等待直到有中断发生)
  4. 僵死(进程已终止, 但进程描述符存在, 直到父进程调用wait4()系统调用后释放)
  5. 停止(进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后停止运行运行)

top

动态观察程序的变化,top [-d] | top [-bnp]

  • top -d 2,每两秒钟更新一次
  • top -b -n 2 > /tmp/top.txt,将top的信息进行2次,然后将结果输出到/tmp/top.txt
  • top -d 2 -pid 10604,仅观察PID=10604的程序
  • top命令介绍

free

free [options]

free命令可以显示Linux系统中空闲的、已用的物理内存及swap内存,及被内核使用的buffer。在Linux系统监控的工具中,free命令是最经常使用的命令之一

  • free -m,以MB为单位显示内存使用情况
  • free -g,以GB为单位显示内存使用情况
  • free -s 10,周期性的查询内存使用信息

kill

kill [-s signal_name] pid...

发送指定的信号到相应进程,The kill utility sends a signal to the processes specified by the pid operand(s)

  • kill -l,列出所有信号名称
  • kill -l SIGKILL,得到指定信号的数值,SIGKILL=9
  • kill -9 pid,强行中止进程,强大和危险的命令迫使进程在运行时突然终止,进程在结束后不能自我清理。危害是导致系统资源无法正常释放,一般不推荐使用,除非其他办法都无效。
  • kill -HUP PID,停止和重启进程,该命令让Linux和缓的执行进程关闭,然后立即重启。在配置应用程序的时候,这个命令很方便,在对配置文件修改后需要重启进程时就可以执行此命令。
  • kill -l PID,以优雅的方式结束进程,-l选项告诉kill命令用好像启动进程的用户已注销的方式结束进程。当使用该选项时,kill命令也试图杀死所留下的子进程。但这个命令也不是总能成功--或许仍然需要先手工杀死子进程,然后再杀死父进程。
  • ps -ef | grep vim,查找进程

网络相关

ping

ping [参数] [主机名或IP地址]

确定网络和各外部主机的状态;跟踪和隔离硬件和软件问题;测试、评估和管理网络。

  • ping -b 192.168.1.1,ping网关
  • ping -c 10 192.168.1.2,ping指定次数
  • ping -c 10 -i 0.5 192.168.1.2,时间间隔和次数限制的ping
  • ping -c 5 www.baidu.com,通过域名ping公网上的站点

netstat

netstat [-acCeFghilMnNoprstuvVwx][-A<网络类型>][--ip]

用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。

  • netstat -a,列出所有端口
  • netstat -nu,显示当前UDP连接状况
  • netstat -apu,显示UDP端口号的使用情况
  • netstat -i,显示网卡列表
  • netstat -g,显示组播组的关系
  • netstat -s,显示网络统计信息
  • netstat -l,显示监听的套接口
  • netstat -n,显示所有已建立的有效连接
  • netstat -e,显示关于以太网的统计数据
  • netstat -r,显示关于路由表的信息
  • netstat -at,列出所有 tcp 端口
  • netstat -ap | grep ssh,找出程序运行的端口
  • netstat -pt,在 netstat 输出中显示 PID 和进程名称
  • netstat -anpt | grep ':16064',找出运行在指定端口的进程

telnet

telnet[参数][主机]

执行telnet指令开启终端机阶段作业,并登入远端主机。

  • telnet 192.168.120.206
  • service xinetd restart,启动telnet服务

ifconfig

ifconfig [网络设备] [参数]

ifconfig 命令用来查看和配置网络设备。当网络环境发生改变时可通过此命令对网络进行相应的配置。

  • ifconfig -a 显示全部接口信息
  • ifconfig -s 显示摘要信息(类似于 netstat -i)

工具命令

svn

  • svn co path --username name --password password
  • svn co -path -dirname
  • svn add file
  • svn update -r m path
  • svn update -r 200 test.php,更新到某个版本

cvs

  • cvs history -ca | grep username | grep 01-01
  • cvs history -ca | grep username | grep kp | grep 2012-10-'[1 2][0-9]'

ant

Ant -arguments [target1,target2,target3,target4......]

Ant构建文件能够将项目编译,打包,测试。若没有指定任何参数, Ant会在当前目录下检索build.xml文件,如果找到了就运行该文件,如果没有找到了会,会提示没有找到相关的build.xml文件。

  • ant -h,表示提供ant命令参数任务
  • ant -projecthelp | -p,显示当前build.xml的主要任务,例如显示clean、release
  • ant -version,显示当前ant版本
  • ant -diagnostics,诊断当前ant的所有的配置
  • ant -debug | -d,检索当前构建文件配置情况
  • ant -quiet | -q,显示当前构建文件无依赖任务
  • ant -emacs | -e,调用编辑当前构建文件编辑器
  • ant -lib [path],调用当前项目中jar,class文件
  • ant -logfile |-l,调用运行当前项目中*.log文件
  • ant -buildfile |- f | -file,调用运行类似build.xml的文件
  • ant -propertyfile [name],调用运行指定的属性文件
  • ant -find | -s file,检索运行指定的构建文件
  • ant -autoproxy,使用系统自动代理构建文件
  • ant-main class,设置系统类库文件中主要类
  • ant -nice number,设置主类线程允许的线程数

maven

  • mvn archetype:create,创建 Maven 项目
  • mvn compile,编译源代码
  • mvn test-compile,编译测试代码
  • mvn test,运行应用程序中的单元测试
  • mvn site,生成项目相关信息的网站
  • mvn clean,清除目标目录中的生成结果
  • mvn package,依据项目生成 jar 文件
  • mvn install,在本地 Repository 中安装 jar
  • mvn eclipse:eclipse,生成 Eclipse 项目文件
  • mvn -Dmaven.test.skip=true,忽略测试文档编译

adb

  • adb kill-server
  • adb start-server
  • adb devices
  • adb uninstall file
  • adb uninstall -k file,-k 参数,为卸载软件但是保留配置和缓存文件
  • adb push <本地路径> <远程路径>,可以把本机电脑上的文件或者文件夹复制到设备(手机)
  • adb pull <远程路径> <本地路径>,可以把设备(手机)上的文件或者文件夹复制到本机电脑
  • adb reboot,重启adb

[原]那些年整理的Linux常用命令,简单明了的更多相关文章

  1. linux常用命令简单介绍(netstat,awk,top,tail,head,less,more,cat,nl)

    1.netstat netstat -tnl | grep 443 (查看443端口是否被占用) root用户,用netstat -pnl | grep 443 (还可显示出占用本机443端口的进程P ...

  2. Linux常用命令简单总结

    Liunx常用命令 1. 文件及目录管理 1.1. ls:显示目录 参数及说明 空:补显示隐含文件 -a:显示所有文件 -l:显示详细列表 1.2. chgrp:设置文件组(root权限) 用法示例 ...

  3. 我自己整理的 Linux 常用命令

    1.查看文件安装路径: 由于软件安装的地方不止一个地方,所有先说查看文件安装的所有路径(地址). 这里以 xsp 为例.比如说我安装了xsp,但是不知道文件都安装在哪些地方.放在哪些文件夹里,可以用下 ...

  4. 整理了Linux常用命令变量

    查看信息命令 ls 查看当前目录下面的所有文件 -a 显示所有文件(包括隐藏文件) -l 显示所有文件(包括文件的详细信息) 格式: ls 参数 目录路径(绝对/相对) cd 切换目录 格式: cd ...

  5. 爆肝整理:Linux常用命令,建议收藏!

    目录管理命令:mkdir.rmdir mkdir命令 rmdir命令 文件管理命令:cp.mv.rm cp命令 mv命令 rm命令 文件查看命令:cat.tac.head.tail.more.less ...

  6. linux 常用命令--------雪松整理

    linux 常用命令--------雪松整理 博客: http://hi.baidu.com/quanzhou722/blog错误在所难免,还望指正!========================= ...

  7. Linux常用命令整理 - imsoft.cnblogs

    su 用户名 在不退出登陆的情况下,切换到另外一个人的身份如果用户名缺省,则切换到root状态会提示输入密码,密码不回显的. 在用su命令切换root用户时,使用“-”选项,这样可以将root的环境变 ...

  8. NO9 Linux快捷键整理及最常用命令

    Linux快捷键整理及最常用命令 常用快捷键: Ctrl + u            删除光标之前到行首的字符 Ctrl + k            删除光标之前到行尾的字符 Ctrl + c   ...

  9. Linux常用命令和快捷键整理:(2)常用快捷键

    前言: Linux常用快捷键和基本命令整理,先上思维导图: linux常用命令请见:https://www.cnblogs.com/yinzuopu/p/15516499.html 基本快捷键的使用 ...

随机推荐

  1. table中设置border的问题

    今天在修改table样式的时,想给tr加个border-bottom,一开始用的颜色比较浅,我还以为看电脑太久眼花,结果换了比较深的颜色后,border-bottom真的没有出来.   忽然想起在ht ...

  2. python征程2.0(python基础)

    1.python中有一些基本规则的特殊字符. (1)#表示这后的字符为python注释. (2)\n标准的行分隔符. (3)\继续上一行.(也就是过长的语句可以使用反斜杠(\)分解成几行) ) and ...

  3. Lind.DDD.ILogicDeleteBehavor~逻辑删除的实现

    回到目录 关于逻辑删除 对于逻辑删除之前的做法是在实体类中加个字段,一般是status,其中一种状态是删除,当然也有其它做法,如加个bool的字段IsDeleted,这些其实都过于武断,即它在基类里加 ...

  4. MongoDB安全和认证

    1.每个MongoDB实例中的数据库都可以有许多用户.如果开启了安全性检查,则只有数据库认证用户才能执行读或者写操作. 在认证的上下文中,MongoDB会将普通的数据作为admin数据库处理.admi ...

  5. IE8,IE10下载的临时文件到哪里去了???

    操作攻略: 打开IE浏览器=>工具=>Internet选项=>常规选项卡中,找到"浏览历史记录"=>设置,然后就可看到"当前位置"所列出 ...

  6. jquery右键菜单

    点击这里体验效果 如果要屏蔽页面原来的右键菜单,请设置disable_native_context_menu:true 以下是源代码: <!DOCTYPE html> <html&g ...

  7. 几个常用的adb命令

    adb全程为Android Debug Bridge,字面意思就是安卓调试桥接.就是android系统提供的一套 工具帮我们建议一个连接android设备的通道,然后在电脑上发送一些指令,完成工作. ...

  8. OC NSFileHandle(文件内容操作)

    OC NSFileHandle(文件内容操作) 初始化 [NSFileHandle fileHandleForUpdatingAtPath:@"data.txt"]; //file ...

  9. 全新的membership框架Asp.net Identity(2)——绕不过的Claims

    本来想直接就开始介绍Identity的部分,奈何自己挖坑太深,高举高打的方法不行.只能自己默默下载了Katana的源代码研究了好一段时间.发现要想能够理解好用好Identity, Claims是一个绕 ...

  10. break、continue、return

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...