您当前的位置:首页 > 电脑百科 > 软件技术 > 操作系统 > linux百科

Java开发掌握这些Linux命令就够了

时间:2022-08-06 10:50:40  来源:  作者:传智教育官方账号

一、导学

掌握linux命令是高级JAVA工程师必备的技能之一,但并不是每个人都能完全掌握,绝大部分Java初中级工程师只知道少数的cd/ls/mkdir/rm等非常简单的命令,但是只会这些命令是完全不够的,如果想要提升技术壁垒,晋升成为大牛程序员,掌握最实用的Linux命令是不可或缺的。文本作者结合多年企业开发经验,将最实用的Linux命令进行了清晰的分类,逐条罗列,对照反复练习即可快速掌握。熟练使用文本提到的命令能有效提升运维技能并帮助各位提高工作效率。

提示:

  • 操作系统:centos
  • 适合对象:使用过Linux的人群
  • 本文命令:多以示例命令为主,要学会举一反三

 

二、安装服务命令

在日常开发和部署的工作中,安装服务是非常常见的操作,一般来说当我们执行某个命令提示不存在命令时,都需要进行服务安装,一般安装命令有2种:在线安装和离线安装。对比来说,如果网速还不错的话,推荐使用在线安装更加方便。

1.在线安装

yum install -y vim

示例含义:在线安装vim服务

注意:如果要加速yum在线下载需要修改yum源为国内源

2.离线安装

rpm -ivh  Tomcat.rpm

示例含义:离线安装tomcat服务

注意:rpm文件安装包需要上传到服务器上,再执行安装命令

三、文件操作命令

文件操作命令是Linux中使用最为频繁的命令,众多命令中还包含非常出名的Linux三剑客grep、awk、sed,在文中也有介绍。

1.创建文件

创建方式1:touch命令直接创建

  • yacas touch abc.txt

创建方式2:vi命令修改后保存

  • yacas vi abc.txt
  • 然后保存

创建方式3:echo命令输出写入文件

  • yacas echo hello > abc.txt

2.编辑文件

  • yacas vi abc.txt
  • yacas vim abc.txt

3.vi或vim内查找关键词

用法:vi或vim打开文件后(不要进入到编辑模式)输入英文的?或/,后面跟上要搜索的关键词即可

  • yacas ?hello
  • 然后按住n健查找下一个,按N健查找上一个
  • yacas /hello
  • 然后按住n健查找下一个,按N健查找上一个

4.命令光标的移动

这个命令非常实用,有时候当我们输入一段比较长的命令时,光标已经到最后了,但发现前面的命令写错了,一般的做法是按照向左箭头按键一直往左移动光标,改完由按向右监听按键一直向右移动光标,这个效率太慢了,以下快捷键能快速解决这个问题,能直接达到命令最前面和最后面。

  • 移动到命令最前:按住快捷键 ctrl +a
  • 移动到命令最后:按住快捷键 ctrl+e

5.vi或vim设置或取消行号

vi或vim打开文件后,根据要求分别输入如下命令(不要进入到编辑模式)

  • 设置行号

shell :set nu

  • 取消行号

shell :set nonu

6.vi或vim 调到末行及首行

vi编辑文件时,如果内容太长,想要快速将光标跳转到文件头部或尾部,使用下面按键

  • 跳转末行 ,按住 G健
  • 跳转首行 ,按住 g健

7.vim或vim删除行

不进入编辑模式,在要删除的行敲击 dd

8.vi或vim复制行

不进入编辑模式,在要删除的行敲击 4 yy,标识从当前行开始复制4行,再移动光标到指定位置按p键粘贴

9.不编辑查看文件全部内容

cat abc.txt

10.不编辑查找文件内容

  • 方式1

shell grep "heima" abc.txt

  • 方式2

shell cat abc.txt |grep "heima"

这里用到了Linux三剑客之一的筛选命令grep,主要用于筛选文本

10. 统计某个关键字在文件中出现的次数

  • 方式1

shell grep "heima" abc.txt |wc -l

  • 方式2

shell grep "heima" abc.txt |wc -l

11.查看文件首行或尾行

  • 查看前3行

shell head -3 abc.txt

  • 查看尾3行

shell tAIl -3 abc.txt

  • 查看尾实时输出的3行日志

shell tail -3f abc.txt

12.替换文件内某个关键字

sed作为Linux三剑客之一,是使用的最流行的替换命令,主要用于替换本文中的内容

sed -i s/heima/itcast/g abc.txt

示例含义:替换abc.txt文件内所有heima为itcast

13.重命名文件

  • 方式1

shell mv abc.txt bcd.txt

  • 方式2

shell rename abc bcd abc.txt

14.输出格式固定的文件中第几行第几列数据

awk作为Linux三剑客之一,主要用于输出固定格式文件的内容

假设文本文件内每行数据的格式如: 姓名,年龄,城市,注意分隔符是逗号

  • 输出每一行

shell awk '{print;}' aaa.txt

  • 输出第三列所有值

shell awk -F ',' '{print $3}' aaa.txt

-F后紧跟的是每行内容的分割符号

  • 输出倒数第2列的值

shell awk -F ',' '{print $(NF-1)}' aaa.txt

  • 输出前2行的第2列的值

shell awk -F ',' '{print $2}' aaa.txt|head -2

15.根据名称查找某目录下的文件

find test/ -name abc*

示例含义:查找test目录下,所以文件名包含abc的文件

16.查找文件并删除

find test/ -name "abc*" | xargs rm -rf

示例含义:查找test目录下,所以文件名包含abc的文件并执行删除操作

17.查找30天前创建的文件并删除

find test/ -mtime +30 -type f | xargs rm -rf

示例含义:查找test目录下,所有创建时间超过30天的文件并执行删除操作

18.下载文件

  • 单线程下载

shell wget https://archive.Apache.org/dist/tomcat/tomcat-8/v8.5.9/bin/apache-tomcat-8.5.9.tar.gz

  • 多线程下载

shell axel -n 10 https://archive.apache.org/dist/tomcat/tomcat-8/v8.5.9/bin/apache-tomcat-8.5.9.tar.gz

示例含义:开启10个线程一起下载一个文件,注意这种下载效率会比单线程快很多

  • 将本地文件上传到服务器或从服务器下载
  • 上传
    rz
    执行命令后会弹出窗口,选择本地的文件,确认后会执行上传
  • 下载
    sz 文件命名
    默认会下载到本地操作系统downloads目录下说明:以上两个命令执行的前提是已经安装了lrzsz,可通过在线命令yum install -y lrzsz安装

四、压缩解压命令

压缩解压命令在开发中比较常见,一般开发部署遇到的压缩包主要以zip和tar包为主,掌握这2种压缩文件的压缩和解压命令就足够了。

1.zip

  • 压缩

shell zip -r xxxx.zip xxxx

实例含义:将xxx的全部内容压缩为xxx.zip

  • 解压

shell unzip -d xxxx xxxx.zip

2.tar.gz

  • 压缩

shell tar -zcvf test.tar.gz test/

  • 解压

shell tar -zxvf test.tar.gz test

五、系统命令

系统命令是我们日常排查服务器问题及进行系统设置时使用比较多的命令,这些命令要求熟记于心

1.查看网卡信息

ip addrifconfig

2.修改密码

修改当前用户密码:

passwd

修改其他用户密码:

password deploy

3.重启系统

reboot

4.重启网卡

service.NETwork restart

5.关闭防火墙

systemctl stop firewalldsystemctl disable firewalld

6.查看内存大小

  • 查看还剩多少m

shell free -m

  • 查看还剩多少g

free -g

7.查看磁盘空间

  • 查看总共剩下多少空间

shell df -h /

  • 查看某个目录占用空间

shell du -sh test/

  • 查看某个文件占用空间

shell du -sh abc.txt

8.查看cpu使用情况

top

9.跨服务器传输文件

  • 将本服务器文件传输到其他服务器
    shell scp aaa.zip root@192.168.200.130:/usr/local/
  • 将本服务器目录传输到其他服务器
    shell scp -r aaa root@192.168.200.130:/usr/local/
  • 将其他服务器文件传输到本服务器
    shell scp root@192.168.200.130:/usr/local/bbb.zip aaa.zip
  • 将其他服务器目录传输到本服务器
    shell scp -r root@192.168.200.130:/usr/local/bbb /mnt

 

六、文件权限命令

1.为文件添加权限

比如我们在任意目录下执行ls -al,将看到文件或目录最前面显示效果如下

444 r--r--r--600 rw-------644 rw-r--r--666 rw-rw-rw-700 rwx------744 rwxr--r--755 rwxr-xr-x777 rwxrwxrwx

解读下这个展示效果的含义,其实都是文件系统权限相关内容:

从左至右,先是3个数字,代表文件权限然后是9个字母(或者连字符),其中 1-3位数字代表文件所有者权限,4-6位数字代表同组用户的权限,7-9数字代表其他用户的权限,而具体的权限是由数字来表示的。

  • 读取的权限等于4,用r表示
  • 写入的权限等于2,用w表示
  • 执行的权限等于1,用x表示

通过4、2、1的组合,得到以下几种权限:

  • 0(没有权限)
  • 4(读取权限)
  • 5(4+1 | 读取+执行)
  • 6(4+2 | 读取+写入)
  • 7(4+2+1 | 读取+写入+执行)

2.为某个目录添加执行权限

chmod a+x -R test

3.以root身份执行命令

su chmod a+x  -R test

七、进程命令

服务部署时使用比较多的命令就是进程命令,这些命主要是围绕着查看进程、确认进程存活情况及杀掉进程等操作

1.查看进程

ps -ef|grep java

示例含义:查看所有运行中的进程信息中包含java的进程

2.查看端口是否占用

lsof -i:8080

示例含义:确认8080端口是否被占用,如果命令执行完有响应数据列表,则表示已占用

3.确认端口是否开启*

telnet 192.168.200.130 8080

​ 示例含义:确认192.168.200.130的8080端口是否能连通,能连通就会进入黑窗口有光标,否则会卡主到超时

4.杀掉进程

kill -9 1011

八、结束语

好了,这么多命令你终于都练习完毕了,有很多命令是不是让你感觉很Nice,令你眼前一亮呢?还记得这些命令分为哪些种类吗,如果忘记了就回顾多敲几遍,熟能生巧! 最后别忘了,除了文中总结的命令以外,我们Java开发中还涉及到基础命令还有jdk命令、maven命令、git命令,这些也都要求必须掌握的。有关于服务部署命令,更高级的命令还有Docker容器相关命令,感兴趣可以在本文基础之上进一步自学docker。



Tags:Linux命令   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除。
▌相关推荐
如何使用PHP SSH2模块执行远程Linux命令
PHP SSH2扩展是用于在PHP程序中使用SSH(安全壳协议)的一种扩展。它允许建立加密连接和执行远程命令、上传和下载文件等操作,十分方便实用。下面我将为大家详细介绍一下该扩展的...【详细内容】
2024-01-26  Search: Linux命令  点击:(115)  评论:(0)  加入收藏
linux命令查看机器的配置
在 Linux 系统中,你可以使用多个命令来查看当前机器的配置信息,包括 CPU、内存、磁盘和操作系统等信息。以下是一些常用的命令:1. 查看 CPU 信息 lscpu:显示 CPU 架构信息,如型号...【详细内容】
2024-01-16  Search: Linux命令  点击:(77)  评论:(0)  加入收藏
使用Linux命令行传递环境变量给Docker容器
在Linux命令行中,可以使用-e选项来传递环境变量给Docker容器。这样,我们可以在运行容器的同时设置特定的环境变量,以满足应用程序的需求。下面将详细介绍如何使用Linux命令行传...【详细内容】
2023-12-12  Search: Linux命令  点击:(172)  评论:(0)  加入收藏
4种使用Linux命令查询MySQL的高效方法
在Linux中执行MySQL查询是后端或DevOps开发人员的必备技能。本文总结在bash脚本或Linux命令行界面中运行MySQL查询的四种方法,以便开发人员能够更好地处理MySQL数据库。同时...【详细内容】
2023-11-04  Search: Linux命令  点击:(97)  评论:(0)  加入收藏
Linux命令行组合:grep和wc命令的强大用法
Linux grep (global regular expression) 命令用于查找文件里符合条件的字符串或正则表达式。grep 指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指...【详细内容】
2023-09-07  Search: Linux命令  点击:(271)  评论:(0)  加入收藏
防止误删除文件/目录:深入探索Linux命令chattr
在Linux系统中,文件和目录的管理是日常操作中的一个重要部分。然而,误删除文件或目录可能会导致严重的数据丧失和系统问题。为了防止这种情况的发生,Linux系统提供了一系列的方...【详细内容】
2023-08-30  Search: Linux命令  点击:(369)  评论:(0)  加入收藏
你也应该知道的10个Linux命令
Linux当中有很多比较有趣的命令,可以动手看看,很简单的。1、rev命令一行接一行地颠倒所输入的字符串。运行:$rev如输入:shiyanloushiyanlou2、asciiview命令1)先安装aview$sudo...【详细内容】
2023-08-30  Search: Linux命令  点击:(361)  评论:(0)  加入收藏
Linux命令行之top命令详解
概述top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,其作用类似于windows系统中的任务管理器。 top命令可以动态显示系统的负载情况,本文将详...【详细内容】
2023-07-25  Search: Linux命令  点击:(225)  评论:(0)  加入收藏
Linux命令中特殊符号
在shell中常用的特殊符号罗列如下:# ; ;; . , / \ 'string' | ! $ ${} $? $$ $* "string" * ** ? : ^ $# $@ `command` {} [] [[]] () (()) || && {xx,yy,zz,...}~ ~...【详细内容】
2022-09-28  Search: Linux命令  点击:(567)  评论:(0)  加入收藏
十大可以摧毁你的linux命令
1、rm -rf /*它将开始递归地删除根目录下的所有文件,在一段时间后,你的系统会冻结,并显示“删除文件错误”。一旦重新启动,你将被送到 grub-rescue 提示符下。2、echo “hello”...【详细内容】
2022-09-27  Search: Linux命令  点击:(489)  评论:(0)  加入收藏
▌简易百科推荐
微软 Win11 Linux 子系统(WSL)发布 2.2.2 版本
IT之家 4 月 8 日消息,微软近日更新 Windows Subsystem for Linux(WSL),最新 2.2.2 版本中带来了诸多改进,重点更新了 nft 规则,可以让 IPv6 流量通过 Linux 容器。图源: dev.to,AI...【详细内容】
2024-04-08    IT之家  Tags:Linux   点击:(10)  评论:(0)  加入收藏
从原理到实践:深入探索Linux安全机制
Linux 是一种开源的类Unix操作系统内核,由Linus Torvalds在1991年首次发布,其后又衍生出许多不同的发行版(如Ubuntu、Debian、CentOS等)。前言本文将从用户和权限管理、文件系统...【详细内容】
2024-03-27  凡夫编程  微信公众号  Tags:Linux安全   点击:(26)  评论:(0)  加入收藏
在Linux系统中,如何处理内存管理和优化的问题?
本文对 Linux 内存管理和优化的一些高级技巧的详细介绍,通过高级的内存管理技巧,可以帮助系统管理员和开发人员更好地优化 Linux 系统的内存使用情况,提高系统性能和稳定性。在...【详细内容】
2024-03-26  编程技术汇  微信公众号  Tags:Linux   点击:(18)  评论:(0)  加入收藏
Linux 6.9-rc1 内核发布:AMD P-State 首选核心、BH 工作队列
IT之家 3 月 25 日消息,Linus Torvalds 宣布,Linux 6.9 内核的首个 RC(候选发布)版 Linux 6.9-rc1 发布。▲ Linux 6.9-rc1Linus 表示,Linux 内核 6.9 看起来是一个“相当正常”...【详细内容】
2024-03-25    IT之家  Tags:Linux   点击:(16)  评论:(0)  加入收藏
轻松实现Centos系统的软件包安装管理:yum指令实战详解
yum 是一种用于在 CentOS、Red Hat Enterprise Linux (RHEL) 等基于 RPM 的 Linux 发行版上安装、更新和管理软件包的命令行工具。它可以自动解决软件包依赖关系,自动下载并...【详细内容】
2024-02-27  凡夫贬夫  微信公众号  Tags:Centos   点击:(61)  评论:(0)  加入收藏
Win + Ubuntu 缝合怪:第三方开发者推出“Wubuntu”Linux 发行版
IT之家 2 月 26 日消息,一位第三方开发者推出了一款名为“Wubuntu”的缝合怪 Linux 发行版,系统本身基于 Ubuntu,但界面为微软 Windows 11 风格,甚至存在微软 Windows 徽标。据...【详细内容】
2024-02-27    IT之家  Tags:Ubuntu   点击:(55)  评论:(0)  加入收藏
Linux中磁盘和文件系统工作原理解析
在Linux系统中,一切皆文件的概念意味着所有的资源,包括普通文件、目录以及设备文件等,都以文件的形式存在。这种统一的文件系统管理方式使得Linux系统具有高度的灵活性和可扩展...【详细内容】
2024-02-20  王建立    Tags:Linux   点击:(61)  评论:(0)  加入收藏
Linux子系统概览
inux操作系统是一个模块化的系统,由多个子系统组成。这些子系统协同工作,使Linux能够执行各种任务。了解Linux的子系统有助于更好地理解整个操作系统的运作机制。以下是Linux...【详细内容】
2024-02-01    简易百科  Tags:Linux   点击:(89)  评论:(0)  加入收藏
Linux内核:系统之魂与交互之源
内核,作为任何基于Linux的操作系统的心脏,扮演着至关重要的角色。它不仅是计算机系统软件与硬件之间的桥梁,更是确保系统稳定、高效运行的关键。内核提供了一系列核心功能,为上...【详细内容】
2024-02-01  松鼠宝贝    Tags:Linux内核   点击:(74)  评论:(0)  加入收藏
如何确保Linux进程稳定与持久
在Linux系统中,进程的稳定性与持久性对于维持系统的持续运行至关重要。然而,由于各种原因,进程可能会面临崩溃或系统重启的情况。为了确保关键进程能够持续运行,我们必须采取一...【详细内容】
2024-01-19  松鼠宝贝    Tags:Linux进程   点击:(94)  评论:(0)  加入收藏
站内最新
站内热门
站内头条