目錄

  1. 系统服务管理
  2. 文件管理
  3. 查看日志
  4. 压缩与解压
  5. 磁盘和网络管理
  6. 防火墙
  7. ftp操作
  8. 软件的安装与管理
  9. 其他

系统服务管理

systemctl

输出系统中各个服务的状态:

systemctl list-units --type=service

查看服务的运行状态:

systemctl status firewalld

关闭服务:

systemctl stop firewalld

启动服务:

systemctl start firewalld

重新启动服务(不管当前服务是启动还是关闭):

systemctl restart firewalld

重新载入配置信息而不中断服务:

systemctl reload firewalld

禁止服务开机自启动:

systemctl disable firewalld

设置服务开机自启动:

systemctl enable firewalld

文件管理

查找文件
(根据名称查找/目录下的filename.txt文件)

find / -name filename.txt

查看文件,包含隐藏文件

ls -al

列出当前目录(/)下的所有文件:
ls

ls -l /

获取目前所在工作目录的绝对路径

pwd

改变当前工作目录:cd

cd /usr/local

显示或修改系统时间与日期;date

date '+%Y-%m-%d %H:%M:%S'

用于设置用户密码:passwd

passwd root

改变用户身份(切换到超级用户):su

su -username

用于清除屏幕信息

clear

显示指定命令的帮助信息:man

man ls

查询系统处于什么运行级别:who

who -r

显示目前登录到系统的用户:

who -buT

显示系统内存状态(单位MB):free

free -m

显示系统进程运行动态:ps

ps -ef

查看sshd进程的运行动态:

ps -ef | grep sshd

查看即时活跃的进程,类似Windows的任务管理器

top

创建目录

mkdir

复制文件包括其子文件到自定目录

cp -r sourceFolder targetFolder

删除目录(此目录是空目录)

rmdir deleteEmptyFolder

删除文件包括其子文件

rm -rf deleteFile

删除文件:rm

rm text.txt

移动文件

mv /temp/movefile /targetFolder

移动或覆盖文件:mv

mv oldNameFile.md newNameFile.md

修改文件权限(file.java的权限-rwxrwxrwx,r表示读、w表示写、x表示可执行)

chmod 777 file.java

用于文件过长时分页查看文件内容:more
每页10行查看boot.log文件

more -c -10 /var/log/boot.log

查看Linux启动日志文件文件,并标明行号:cat

cat -Ab /var/log/boot.log

创建text.txt文件:touch

touch text.txt

启动Vi编辑器

vi filename

1)进入编辑模式

shift+i

2)退出编辑模式

esc-->shift+:

3)保存退出

wq

4)强制退出

q

查看日志

查看文件头10行

head -n 10 example.txt

查看文件尾10行

tail -n 10 example.txt

查看日志文件(这个命令会自动显示新增内容,屏幕只显示10行内容的(可设置))

tail -f exmaple.log

在日志中搜索关键字

less server.log

1)如果想从日志第一行开始搜索

less server.log-->/搜索关键字-->n查找下一个-->N查找上一个

2)如果想从日志最后一行开始搜索

less server.log-->shitf+g-->?搜索关键字-->n查找上一个-->N查找下一个

压缩与解压

解压

unzip FileName.zip
压缩:
zip -r FileName.zip DirName

将/etc文件夹中的文件归档到文件etc.tar(并不会进行压缩):tar

tar -cvf /mydata/etc.tar /etc

用gzip压缩文件夹/etc中的文件到文件etc.tar.gz:

tar -zcvf /mydata/etc.tar.gz /etc

用bzip2压缩文件夹/etc到文件/etc.tar.bz2:

tar -jcvf /mydata/etc.tar.bz2 /etc

分页查看压缩包中内容(gzip):

tar -ztvf /mydata/etc.tar.gz |more -c -10

解压文件到当前目录(gzip):

tar -zxvf /mydata/etc.tar.gz

磁盘和网络管理

查看磁盘使用

df -h

查看磁盘使用
free

查看磁盘空间占用情况:

df -hT

dh
查看当前目录下的文件及文件夹所占大小:

du -h --max-depth=1 ./*

显示当前网络接口状态

ifconfig

查看当前路由信息:netstat

netstat -rn

查看所有有效TCP连接:

netstat -an

查看系统中启动的监听服务:

netstat -tulnp

查看系统中某个端口监听服务:

netstat -ntlp|grep 8080

查看处于连接状态的系统资源信息:

netstat -atunp

查看是否存在某一个进程

ps -ef|grep java/pid

从网络上下载文件

wget

防火墙

Linux中有两种防火墙软件,ConterOS7.0以上使用的是firewall,ConterOS7.0以下使用的是iptables,本文将分别介绍两种防火墙软件的使用。

Firewall

开启防火墙:

systemctl start firewalld

关闭防火墙:

systemctl stop firewalld

查看防火墙状态:

systemctl status firewalld

设置开机启动:

systemctl enable firewalld

禁用开机启动:

systemctl disable firewalld

重启防火墙:

firewall-cmd --reload

开放端口(修改后需要重启防火墙方可生效):

firewall-cmd --zone=public --add-port=8080/tcp --permanent

查看开放的端口:

firewall-cmd --list-ports

关闭端口:

firewall-cmd --zone=public --remove-port=8080/tcp --permanent

Iptables

安装
由于CenterOS7.0以上版本并没有预装Iptables,我们需要自行安装。
安装前先关闭firewall防火墙

安装iptables:

yum install iptables

安装iptables-services:

yum install iptables-services

开启防火墙:

systemctl start iptables.service

关闭防火墙:

systemctl stop iptables.service

查看防火墙状态:

systemctl status iptables.service

设置开机启动:

systemctl enable iptables.service

禁用开机启动:

systemctl disable iptables.service

查看filter表的几条链规则(INPUT链可以看出开放了哪些端口):

iptables -L -n

查看NAT表的链规则:

iptables -t nat -L -n

清除防火墙所有规则:

iptables -F
iptables -X
iptables -Z

给INPUT链添加规则(开放8080端口):

iptables -I INPUT -p tcp --dport 8080 -j ACCEPT

查找规则所在行号:

iptables -L INPUT --line-numbers -n

根据行号删除过滤规则(关闭8080端口):

iptables -D INPUT 1

ftp操作

ftp ip
输入密码密码;
bin将文件转换成二进制
get 获取文件名

软件的安装与管理

rpm

安装软件包:

rpm -ivh nginx-1.12.2-2.el7.x86_64.rpm

模糊搜索软件包:

rpm -qa | grep nginx

精确查找软件包:

rpm -qa nginx

查询软件包的安装路径:

rpm -ql nginx-1.12.2-2.el7.x86_64

查看软件包的概要信息:

rpm -qi nginx-1.12.2-2.el7.x86_64

验证软件包内容和安装文件是否一致:

rpm -V nginx-1.12.2-2.el7.x86_64

更新软件包:

rpm -Uvh nginx-1.12.2-2.el7.x86_64

删除软件包:

rpm -e nginx-1.12.2-2.el7.x86_64

yum

安装软件包:

yum install nginx

检查可以更新的软件包:

yum check-update

更新指定的软件包:

yum update nginx

在资源库中查找软件包信息:

yum info nginx*

列出已经安装的所有软件包:

yum info installed

列出软件包名称:

yum list nginx*

模糊搜索软件包:

yum search nginx

其他

终止线程(终止线程号位19979的线程)

kill -9 19979

查看线程个数(方便查看程序是否有误)

ps -Lf 端口号|wc -l

查看网络的连通性

ping ip

查看ip端口的连通性检测(防火墙的连通性)

telnet ip 端口-->退出模式 shift+]-->quit

查看本地的ip

ifconfig

查看调度器

crontab -l

编辑调度器

crontab -e

想了解更多面经和开发小技能,欢迎扫描下方的二维码,持续关注!

Java程序员必会常用Linux速查手册的更多相关文章

  1. 后端程序员必会常用Linux命令总结

    1. 调整终端窗口大小: ctrl + '-'  缩小, ctrl + shift + '='  放大. 2. command --help 查询命令详细 或者 man command 3.ls命令, ...

  2. web 开发:CSS3 常用属性——速查手册!

    web 开发:CSS3 常用属性——速查手册! CSS3 简介:http://www.runoob.com/css3/css3-intro.html 1.目录 http://caniuse.com/ ...

  3. 实用掌中宝--HTML&CSS常用标签速查手册 PDF扫描版

    实用掌中宝--HTML&CSS常用标签速查手册 内容推荐: 本书第一篇以语法和实例相结合的形式,详细讲解了HTML语言中各个元素及其属性的作用.语法和显示效果:第二篇从CSS基本概念开始,分别 ...

  4. Docker常用命令速查手册(华贵铂金版)

    原创声明:作者:Arnold.zhao  博客园地址:https://www.cnblogs.com/zh94 Docker常用命令速查手册 搜索仓库镜像 docker search nginx 获取 ...

  5. 找工作的程序员必懂的Linux

    一.为什么要学习Linux 首先,我想先说一下:“为什么要学习Linux”?Linux 是什么,它是一款操作系统,是一个支持多用户.多任务.支持多线程和多CPU的操作系统:32位和64位的硬件可以在L ...

  6. JAVA程序员必看的15本书-JAVA自学书籍推荐

    作为Java程序员来说,最痛苦的事情莫过于可以选择的范围太广,可以读的书太多,往往容易无所适从.我想就我自己读过的技术书籍中挑选出来一些,按照学习的先后顺序,推荐给大家,特别是那些想不断提高自己技术水 ...

  7. Java程序员必学知识点

    JVM无论什么级别的Java从业者,JVM都是进阶时必须迈过的坎.不管是工作还是面试中,JVM都是必考题.如果不懂JVM的话,薪酬会非常吃亏(近70%的面试者挂在JVM上了) 详细介绍了JVM有关于线 ...

  8. Java程序员必会Synchronized底层原理剖析

    synchronized作为Java程序员最常用同步工具,很多人却对它的用法和实现原理一知半解,以至于还有不少人认为synchronized是重量级锁,性能较差,尽量少用. 但不可否认的是synchr ...

  9. 【转】java架构师之路:JAVA程序员必看的15本书的电子版下载地址

    作为Java程序员来说,最痛苦的事情莫过于可以选择的范围太广,可以读的书太多,往往容易无所适从.我想就我自己读过的技术书籍中挑选出来一些,按照学习的先后顺序,推荐给大家,特别是那些想不断提高自己技术水 ...

随机推荐

  1. 搭建vue-cli

    https://www.cnblogs.com/wisewrong/p/8570309.html https://www.jianshu.com/p/1ee1c410dc67

  2. Windows下的apache tomcat安装与配置

    在官网http://tomcat.apache.org下载apache tomcat,我下载的是7可以自行选择版本: 解压缩,把解压文件放入C盘根目录下 配置环境变量,变量名位CATLINA_HOME ...

  3. xposed代码示例

    package com.example.xposedhook; import android.util.Log; import de.robv.android.xposed.IXposedHookLo ...

  4. Leetcode题目437:路径总和III(递归-简单)

    题目描述: 给定一个二叉树,它的每个结点都存放着一个整数值. 找出路径和等于给定数值的路径总数. 路径不需要从根节点开始,也不需要在叶子节点结束,但是路径方向必须是向下的(只能从父节点到子节点). 二 ...

  5. new HttpClient().PostAsync封装参数

    var data = Encoding.UTF8.GetBytes("{ \"y\": 5, \"x\": 3}"); var conten ...

  6. Messagebox自定义计时关闭

    Messagebox自定义计时关闭 新建Winform项目WindowsFormsAppTESTMessageBoxAutoClose 主窗体代码 using System;using System. ...

  7. Random Projection

    Random Projection在k-means的应用   1. 随机投影 (Random Projection) 首先,这是一种降维方法.之前已经介绍过相对普遍的PCA的降维方法,这里介绍另一种降 ...

  8. Ubuntu18.04修改主机名和网卡地址

    date: 2019-06-26 09:56:04 author :headsen chen notice :个人原创 1,Ubuntu18.04 设置固定IP: 2,Ubuntu 18.04 设置主 ...

  9. ISO/IEC 9899:2011 条款5——5.2.3 信号与中断

    5.2.3 信号与中断 1.函数应该被设计为它们可以被一个信号在任一时刻打断,或是被一个信号处理所调用,或是两者都发生,对于初期不发生改变,但仍然处于活动状态,调用的控制流(在中断之后),函数返回值, ...

  10. 数据库连接池Flask-SQLAlchemy中多线程安全的问题

    使用flask-sqlalchemy写代码码到一半,突然想到,Session是否是线程安全的?于是上官方文档,答案是否! 那问题来了,怎么破?因为它会牵涉到多线程情况下,调用rollback导致的不可 ...