前言

做后端开发的同学,一般都会接触到服务器,而我们现在的系统用的比较多的服务器系统就是linux了,平时多多少少也会接触到一些linux下的shell命令。我们来介绍下linux一些常用的命令和使用场景。

pwd,请告诉我,当前在哪个目录?

pwd命令以绝对路径的方式显示用户当前工作目录。命令将当前目录的全路径名称(从根目录)写入标准输出。全部目录使用/分隔。第一个/表示根目录,最后一个目录是当前目录。执行pwd命令可立刻得知您目前所在的工作目录的绝对路径名称。

实例

[root@localhost ~]# pwd/root

whoami,告诉我,当前是哪个用户登录的

whoami命令用于打印当前有效的用户名称

实例

[root@localhost ~]# whoamiroot

场景

平时我们写一些shell脚本,想指定某些用户才能执行到,一般会先用whoami命令查出当前用户,判断是否为合法用户执行脚本。

ls 看看当前目录下有啥

ls命令用来显示目标列表,在Linux中是使用率较高的命令。ls命令的输出信息可以进行彩色加亮显示,以分区不同类型的文件。

语法

ls(选项)(参数)

参数一般是目录:指定要显示列表的目录,也可以是具体的文件。

常用搭配

ls -a:显示所有档案及目录(ls内定将档案名或目录名称为“.”的视为影藏,不会列出);ls -A:显示除影藏文件“.”和“..”以外的所有文件列表;ls -C:多列显示输出结果。这是默认选项;ls -l:与“-C”选项功能相反,所有输出信息用单列格式输出,不输出为多列;

实例

[root@localhost ~]# ls -a.bash_logout   .bashrc  install.log  .mysql_history  satools  .tcshrc   .vimrc[root@localhost ~]# ls -1anaconda-ks.cfginstall.loginstall.log.syslogsatools

man,呼叫 help~

man,取 manual 之意。通常也称 man page。

man命令是Linux下的帮助指令,通过man指令可以查看Linux中的指令帮助、配置文件帮助和编程帮助等信息。

实例

我们输入man ls,它会在最左上角显示“LS(1)”,在这里,“LS”表示手册名称,而“(1)”表示该手册位于第一节章,同样,我们输man ifconfig它会在最左上角显示“IFCONFIG(8)”。也可以这样输入命令:“man [章节号] 手册名称”。

(manpage 其实就是整个 Linux/BSD/Mac 系统中 shell命令、系统API、Driver 等等各种文档的大集合。如果 shell命令 和 系统API 有重名咋办。这就涉及到不同的 section 了。上面的章节号就是不同的section)

# 用 j, k 或者 上/下箭头,上下翻滚页面内容$ man write

cat,看看文件中有啥内容

cat命令连接文件并打印到标准输出设备上,cat经常用来显示文件的内容

注意:当文件较大时,文本在屏幕上迅速闪过(滚屏),用户往往看不清所显示的内容。因此,一般用more等命令分屏显示。为了控制滚屏,可以按Ctrl+S键,停止滚屏;按Ctrl+Q键可以恢复滚屏。按Ctrl+C(中断)键可以终止该命令的执行,并且返回Shell提示符状态。

实例

$ cat con.txtaaabbb

常用搭配

-n或-number:有1开始对所有输出的行数编号;-b或--number-nonblank:和-n相似,只不过对于空白行不编号;cat -n con.txt cat -b con.txt

tail命令用于输入文件中的尾部内容。

实例

tail -f con.txt 实时监控con.txt的变化,当有新内容写入到con.txt时,会马上输出到终端上。tail -n 100 con.txt 表示输出con.txt最后100行数据拓展head -n 100 con.txt 表示输出con.txt前100行数据

场景

这是最最最常用的命令之一。一般我们监控日记输出需要用到这个命令,实时监控日志变化,有助于我们分析程序bug。比如有个文件叫 foo.txt,有个程序会不停地给 foo.txt 中写 log,tail -f 可以一直看到最新的 log

ps, 看进程列表

ps命令用于报告当前系统的进程状态。可以搭配kill指令随时中断、删除不必要的程序。

ps命令是最基本同时也是非常强大的进程查看命令,使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等,总之大部分信息都是可以通过执行该命令得到的。

实例场景

这个命令参数很多,建议查看手册使用,或者记忆几种常用的参数来使用。经常是配合grep来查看某个进程是否在运行。

ps -aux | grep 'php' 表示查看php名字的进程

grep

(global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。

实例

在文件中搜索一个单词,命令会返回一个包含“match_pattern”的文本行:

grep match_pattern file_namegrep "match_pattern" file_name

在多个文件中查找:

grep "match_pattern" file_1 file_2 file_3 ...

输出除之外的所有行 -v 选项:

grep -v "match_pattern" file_name

标记匹配颜色 --color=auto 选项:

grep "match_pattern" file_name --color=auto

find,找文件呀、找文件

实例

# 目录结构# ./bar.c# ./foo/foo.c$ find . -name "*.c"./foo/foo.c./bar.c

还有其他常用的

kill,干掉某个进程top, 监控当前CPU占用情况du, 查看文件大小df, 查看磁盘空余大小ifconfig, 看看本机IPrm, 删文件、目录mkdir, 创建目录cd, 跳转目录

最后

上面就列了一些常用的命令,但是还有很多很实用的命令我们没有介绍到,这个还是需要平时多去练习和积累。

工作中常用的Linux命令介绍与实践的更多相关文章

  1. 工作中常用的Linux命令:mkdir命令

    本文链接:http://www.cnblogs.com/MartinChentf/p/6076075.html (转载请注明出处) 在Linux系统中,mkdir命令用来创建一个目录或一个级联目录. ...

  2. 工作中常用的Linux命令:crontab命令

    本文链接:http://www.cnblogs.com/MartinChentf/p/6060252.html (转载请注明出处) crontab是一个用来设置.删除或显示供守护进程cron执行的定时 ...

  3. 工作中常用的Linux命令:ipcs/ipcrm命令

    本文链接:http://www.cnblogs.com/MartinChentf/p/6057100.html (转载请注明出处) ipcs 1. 命令格式 ipcs [resource-option ...

  4. 工作中常用的Linux命令:find命令

    本文链接:http://www.cnblogs.com/MartinChentf/p/6056571.html (转载请注明出处) 1.命令格式 find [-H] [-L] [-P] [-D deb ...

  5. 【基础】工作中常用的linux命令,经常会被面试官问到

    前言 面试经常会问到一些Linux操作命令,下面就工作中常用的和面试问的频率较高的命令做详细描述. 常用命令 修改密码:passwd 用户名 切换用户名:su 用户名 查看当前路径:pwd 调整路径: ...

  6. 在工作中常用的Linux命令

    前言 只有光头才能变强. 文本已收录至我的GitHub仓库,欢迎Star:https://github.com/ZhongFuCheng3y/3y 之前写过一篇 < 在公司做的项目和自己在学校做 ...

  7. 工作中常用的Linux命令:目录

    工作两三年,每天都和Linux打交道,但每每使用Linux命令的时候却会像提笔忘字般不知如何使用,常常查手册或到网上找资料.此系列文章主要是为了方便自己在使用命令时随时可查阅.鄙人才疏学浅,文中若有任 ...

  8. 工作中常用的 Linux 命令

    awk 示例: env变量值如下,需要获得pkg_url的链接值: {"name": "michael", "sex": "mal ...

  9. 工作中常用的Linux命令(不断更新中)

    最近工作中用到linux命令,简单总结如下: 1. pwd 查看当前所在的文件路径 2. cd 切换目录 cd .. 切换到上一级目录 3. ls 列出当前文件路径下的所有文件和文件夹 4. ll 是 ...

随机推荐

  1. 超详细Pycharm部署项目视频教程

    在实际的工作中,不管你是开发.测试还是运维人员,都应该掌握的一项技能就是部署项目,简单说就是把项目放到服务器中,使其正常运行.今天猪哥就以咱们的微信机器人项目为例子,带大家来部署一下项目.本文将会详细 ...

  2. Window权限维持(六):BITS Jobs

    Windows操作系统包含各种实用程序,系统管理员可以使用它们来执行各种任务.这些实用程序之一是后台智能传输服务(BITS),它可以促进文件到Web服务器(HTTP)和共享文件夹(SMB)的传输能力. ...

  3. Struts2框架简单介绍

    如需,了解Struts2详情,请点击,传送门 工作原理 在Struts2 框架中的处理大概分为以下步骤: 1.客户端初始化一个指向servlet容器(例如Tomcat)的请求. 2.这个请求经过一系列 ...

  4. 解决FastCGI 进程超过了配置的活动超时时限的问题

    近日,需要满足测试需求,进行大数据并发测试时,报出[HTTP 错误 500.0 - Internal Server Error E:\PHP\php-cgi.exe - FastCGI 进程超过了配置 ...

  5. mp4文件格式解析二

    目前MP4的概念被炒得很火,也很乱.最开始MP4指的是音频(MP3的升级版),即MPEG-2 AAC标准.随后MP4概念被转移到视频上,对应的是MPEG-4标准.而现在我们流行的叫法,多半是指能播放M ...

  6. Scrum 冲刺第三篇

    是我们是这次稳了队,队员分别是温治乾.莫少政.黄思扬.余泽端.江海灵 一.会议 1.1  27号站立式会议照片: 1.2  昨天已完成的事情 团队成员 今天计划完成的任务 黄思扬 活动平台首页(前端) ...

  7. java8新特性—四大内置核心接口

    java8新特性-四大内置核心接口 四大内置核心接口 //消费型接口 Consumer<T>:: vode accept(T t); //供给型接口 Supplier<T>:: ...

  8. spark2.4.2 源码编译

    基于Maven的构建是Apache Spark的参考构建.使用Maven构建Spark需要Maven 3.5.4和Java 8.请注意,从Spark 2.2.0开始,对Java 7的支持已被删除. 包 ...

  9. Java垃圾回收。

    一:如何确定哪些对象应该被回收.  1.引用记数法.在对象中添加一个引用计数器,每当有一个地方引用它时,计数器加一,引用失效时,计数器减一,当计数器为0时,该对象是不可用的.   i:缺陷:会产生循环 ...

  10. netcore2.2以及netcore3.0下的swagger使用

    自从core3.0发布后,中间有很多东西跟以往用到的2.2版本相差特别多,今天主要来说一下swagger不同版本下的使用. swagger就是一个可视化接口工具,为了方便让调用者能够很好的了解接口以及 ...