本文整理了开发人员日常用到的linux相关命令,供参考。

文件相关

cd # 进入某个目录,不接参数进入当前用户目录(等同于cd ~)如/home/devuser,可接绝对路径或相对路径(../..表示上上级目录),也可以接 “-” 回到上次所在目录

pwd # 显示当前所在目录

ls -la # 列出当前目录所有对象,-a表示包含以.开头的隐藏文件或目录ll -h # ll 等同于 ls -l, -h表示按K M G 显示文件大小

df -h # 显示系统各盘符的空间使用情况du -h --max-depth=1 # 显示当前目录下各文件大小,–max-depth=1只列出当前目录下的文件或目录,不会列出子目录下的文件

mv test.log /home/devuser/ # 移动文件(夹) 或重命名

cp [-r] test test.bak # 复制文件,如果是文件夹则加 -r,表示复制文件夹下所有子文件夹内容rm -[r]f /home/devuser/ # 删除文件,如果删除文件夹则加 -r

find / -name test.log # 在根目录下查找文件名为test.log的文件find /var/log/ -size +50M -exec rm -f {} \; # 在/var/log/目录下查找大于50M的文件并删除,建议先将rm改为ls确认find /var/log/ -type f -atime +10 # 搜索在过去10天内未被使用过的文件find /var/log/ -type f -mtime -10 # 搜索在10天内被创建或者修改过的文件find /var/log/ -type f -atime +10|xargs rm -f # |xargs 作用与 -exec类似find ./ -name "*.log" -exec 'cat' {} \; > test.log # 将当前目录下所有.log文件内容合并到一个文件test.log

which java # 在系统PATH路径下查找java可执行文件whereis java # 查找二进制、源文件、man文件,从文件索引中查找,而不仅仅从PATH路径下查找

zip test.zip test.log test2.log # 创建一个zip格式的压缩包,可以接多个文件或文件夹zip -r file.zip file1 file2 dir1 # 将几个文件和目录同时压缩成一个zip格式的压缩包unzip test.zip # 解压一个zip格式压缩包

tar -zcvf test.tar.gz 要被压缩的文件名或目录 # 以gzip进行压缩 -z 按gzip,-c 压缩,-v 显示内容 -f 指定文件名tar -zxvf test.tar.gz -C 解压缩到的目录 # 解压到指定目录 -x 解压tar -ztvf test.tar.gz # 不解压,只查看内容

tar -jcvf test.tar.bz2 要被压缩的文件名或目录 # 以bzip2进行压缩tar -jxvf test.tar.bz2 -C 解压缩到的目录 # 解压到指定目录

文本相关

touch test.log # 创建空文件echo -e 'abc\ncba'> test.log # 覆盖的形式往文件写入内容 -e 解析转移字符,不然当成字符串echo 'aaa' >> test.log # 追加的形式往文件写入内容

cat [-n] test.log |grep [-v] abc # 过滤文件中包含 abc 的行, 加-v表示不包含, -n表示打印行号cat test.log |grep abc|wc -l # 计算文件中包含 abc 的行数

head -n 2 test.log # 查看一个文件的前两行tail -n 2 test.log # 查看一个文件的最后两行tail -n +1000 test.log # 从1000行开始显示,显示1000行以后的cat test.log | head -n 2000 | tail -n +1000 # 显示1000行到2000行的cat test.log | tail -n +1000 | head -n 1000 # 从第1000行开始,显示1000行

more test.log # 一页一页地查看文件内容,空格键往后一页,B键往前一页,不能通过上下键控制翻滚,会一次加载整个文件less test.log # 一页一页地显示文件内容,可以通过上下键控制往前往后翻,可以向上向下搜,不需一次加载整个文件,所以速度比more快,“less is more”, less比more更强大

tail -200f test.log # 查看最后200行,根据文件描述符进行追踪,当文件改名或被删除,追踪停止tail -F test.log # 查看最后10行,只要对应文件名存在,就保持监视,即使文件被删除或改名后,如果再次创建相同的文件名,也会继续追踪

grep abc test.log # 在文件中查找关键词”abc”,类似于 cat test.log|grep abcgrep ^abc test.log # 在文件中查找以”abc”开始的词汇grep [0-9] test.log # 选择文件中所有包含数字的行grep abc -R /var/log/* # 在目录 ‘/var/log’ 及随后的目录中搜索字符串”abc”

sed 's/abc/ccc/g' test.log # 将test.log文件中的 “abc” 替换成 “ccc”并打印,不改变原有文件sed '/^$/d' test.log # 从文件中删除所有空白行并打印,不改变原有文件

paste test.log test2.log # 按两列合并两个文件每行的内容并打印,test.log在左边,test2.log在右边paste -d '+' file1 file2 # 合并两个文件每行的内容并打印,中间用”+”拼接

sort test.log # 对文件内容进行排序,每行首字母排序sort test.log test2.log # 排序两个文件的内容sort test.log test2.log | uniq # 取出两个文件的并集(重复的行只保留一份)sort test.log test2.log | uniq -u # 删除交集,留下其他的行sort test.log test2.log | uniq -d # 取出两个文件的交集(同时存在于两个文件中的行)

# comm 类似于集合的差集运算,需要两个文件都是排序的comm -1 test.log test2.log # 比较两个文件的内容只删除test.log所包含的内容comm -2 test.log test2.log # 比较两个文件的内容只删除test2.log所包含的内容comm -3 test.log test2.log # 比较两个文件的内容删除两个文件共有的内容

权限相关

chmod +x test.sh # 为一个文件增加可执行权限chmod ugo+rwx test.sh # 设置文件的所有者(u)、群组(g)以及其他人(o)读(r,4 )、写(w,2)和执行(x,1)的权限,+ 改为 - 即删除权限chmod 755 test.sh # 对文件所有者,群组,其他人分别设置7(rwx=4+2+1),5(rx=4+1),5(rx=4+1)的权限

chown [-R] 用户名:群组名 test.log #改变一个文件的所有者和群组,如果是作用于文件夹下所有文件或目录,则加 -Rchgrp 群组名 test.log # 改变文件的群组

进程相关

top # 实时显示系统中各个进程的资源占用状况top -H -p 进程号 # 列出进程的所有线程,按1键根据CPU占有率排序ps -ef|grep 进程名称 # 查看某个进程,一般用于找进程IDkill -9 进程ID # 停止某个进程jps # 查看所有java进程

网络相关

ifconfig # 查看系统各网卡信息(IP,mac地址,子网掩码等)ss -s # 查看当前系统tcp、udp连接数

netstat -ano|grep 端口号 # 查看某个端口是否起来lsof -i:端口号 # 查看某个端口对应的进程信息,lsof可能需要额外安装 (sudo yum install lsof)

ssh devuser@192.168.40.206 # 远程连接另一台linux主机

curl http://www.baidu.com # get方式请求某个地址curl -i -X POST -H "Content-type:application/json" -d '{"a":"x","b":["y"]}' http://xxx# POST方式请求某个接口

wget http://xxx.zip # 下载文件

scp test.log devuser@192.168.40.206:/home/devuser/# 传输文件到另一台主机的目录下,如果是文件夹则加 -r# nc 传输,可用于文件传输(scp需要密码,nc不需要密码),需要安装 sudo yum install ncnc -l 1234 > test.log # 接收方,监听1234端口,将接收内容存于test.lognc 192.168.40.205 1234 < test.log # 发送方,向接收方(ip为192.168.40.205)发送test.log的内容

系统相关

top # 查看CPU、内存使用情况,即各进程使用情况free -g # 查看内存使用情况date # 查看系统当前时间uptime # 查看当前CPU使用负载情况,及系统已运行时间,相当于top的第一行su # 切换到root用户su devuser # 切换到devuser用户

实施需要掌握的linux命令,开发人员需要掌握的日常Linux命令集相关推荐

  1. python 测试linux dev文件,Linux测试开发人员要掌握的Linux命令有哪些?

    今天小编要跟大家分享的文章是关于Linux测试开发人员要掌握的学习Linux和 一.文件和目录相关 文件和目录相关 1.进入目录--cd cd /usr/local //进入/usr/local这个目 ...

  2. 万字整理,肝翻Linux内存管理所有知识点【Linux内核开发人员必学】都是精髓

    Linux的内存管理可谓是学好Linux的必经之路,也是Linux的关键知识点,有人说打通了内存管理的知识,也就打通了Linux的任督二脉,这一点不夸张.有人问网上有很多Linux内存管理的内容,为什 ...

  3. 写给Android App开发人员看的Android底层知识合集(1-8)

    写给Android App开发人员看的Android底层知识合集(1-8) 转自包老师:http://www.cnblogs.com/Jax/p/6864103.html 写给Android App开 ...

  4. Linux内核开发人员考虑剔除对更多老旧平台的处理器支持

    随着 Linux 5.10 走入长期支持(LTS),内核开发人员也对未来五年的平台支持展开了探讨,比如剔除干线内核项目中的大量旧款 CPU 的支持. Phoronix 援引 Arnd Bergmann ...

  5. Docker入门命令:开发人员版

    作为开发人员,Docker很多时候,只是用来测试,知道是什么,能够简单使用... 脑图+HTML5交互图:https://github.com/crazyweeds/Docker-Basic-Comm ...

  6. 开发人员常用的Oracle导入/导出命令

    作为我们开发人员经常使用exp导出某一个用户下的所有对象从某一个数据库, 然后导入.通常导入的时候总是会遇到一些意想不到的问题,其中一个问题就是数据库中已经存在同名对象, 同时也为那些比较复杂的参数而 ...

  7. linux服务器开发人员必须要彻底理解的关于【Linux】IO的线程模型

    关于IO模型参考:[Linux]五种IO模型 reactor模型应用视频讲解:epoll原理剖析以及reactor模型应用 c/c++linux服务器开发高级架构师免费学习视频点击:C/C++Linu ...

  8. Linux后台开发系列之「05.解析 Linux 命令机制」

    版权声明:本文为 cdeveloper 原创文章,可以随意转载,但必须在明确位置注明出处! 为何要了解 Linux 命令机制? 如果你每天都在使用 Linux 命令,那么你了解命令的基本原理吗?你学习 ...

  9. Linux应用开发【第四章】Linux进程间通信应用开发

    文章目录 4 Linux进程间通信应用开发 4.1 初识进程 4.1.1 进程的概念 4.1.1.1 程序 4.1.1.2 进程 4.1.1.3 进程和程序的联系 4.1.1.4 进程和程序的区别 4 ...

最新文章

  1. css中的margin和padding
  2. 业界 | 复杂出行场景下,滴滴如何将AI融入地图系统
  3. Memcache 安装和常见命令
  4. MySQL三大范式详解(小白也能懂哦)
  5. uploadhandler.php,多个WordPress主题’upload-handler.php’任意文件上传漏洞
  6. 从nginx的编译安装,了解编译安装原理
  7. 帆软报表嵌入python程序_在线报表FineReport中如何进行嵌入式部署
  8. Java8 方法引用
  9. 刘汝佳算法竞赛入门经典 第二单元习题答案自编
  10. C# 网页自动填表自动登录 .
  11. 下载Spring framework源码
  12. wsimport命令生成webService java客户端代码
  13. html两列合并一列,如何将excel中两列数据合并到一列呢
  14. Redis-事务(集成SpringBoot工程)
  15. 如何破解红蜘蛛(控屏软件)
  16. css解决transform 方法字体抖动
  17. 深度学习论文-DAnetExFuseDFN
  18. 阿里云云服务器ECS介绍
  19. thermal啥意思_thermal是什么意思?
  20. Unity中游戏存档方式

热门文章

  1. hc-sr04程序c语言,常用模块原理程序秘技——超声波模块HC-SR04(1)
  2. 如何有效封堵各种P2P下载软件
  3. 【L】小米随身WiFi,Linux下AP热点驱动(开源)
  4. ZZULIoj 2174: 小XX的QQ号 ( DFS
  5. 护眼灯到底有没有用?盘点护眼灯的用处
  6. Vuforia 系列讲解 – 02 环境搭建
  7. iPhone 计算机 桌面,仿苹果电脑桌面软件 仿苹果桌面软件
  8. CDA数据分析——AARRR增长模型的介绍、使用
  9. 什么是登录什么是计算机注册,什么叫电子邮箱 该怎么注册邮箱
  10. 2021 年 3 月程序员工资统计新出炉