【Linux-Linux常用命令】Linux常用命令总结
1)文件管理1.1.目录操作1.2.vim操作1.3.打包压缩相关命令1.4.Linux管道 2)文件权限管理2.1.三种基本权限2.2.更改权限 3)运行程序3.1.命令行运行3.2.后台运行3.3.服务方式运行 4)系统相关4.1.系统管理命令4.2.防火墙4.3.关机和重启4.4.网络配置 5)用户管理 6)安装软件6.1.下载rpm安装包方式6.2.yum方式6.3.下载压缩文件方式无论你是编程小白还是职场老手,都建议你收藏这份常用 Linux 命令手册。
无论是后端程序员还是前端程序员,一定避免不了和Linux系统打交道。可能是自己在学习的时候搭建虚拟机环境,也可能是在公司测试环境进行服务的维护,甚至可能去线上服务器进行生产问题的排查。
这就要求我们要熟练使用Linux命令行,相关的常用命令很可能不经常使用就忘了,这里我收集了一些常用命令以便需要时查看,欢迎作补充。(这里的提到操作都默认以CentOS系统为基础)
如果你还没有安装 Linux 虚拟机,可以参考这篇文章:
开发攻城狮必备的Linux虚拟机搭建指南
1)文件管理
1.1.目录操作
切换目录cd
查看目录ls
-l
列出文件详细信息 或者直接ll
-a
列出当前目录下所有文件及目录,包括隐藏的a(all)
创建目录mkdir
-p 创建目录,若无父目录,则创建p(parent)
输出信息echo
打印文件到命令行(查看文件)cat
改变文件所属用户chown
改变文件所属组chgrp
下载文件wget
在文本文件中查找某个字符串grep
统计文本中行数、字数、字符数wc
部分显示more/less
查找文件find / -name 'f'
创建空文件touch
复制文件cp
移动或重命名mv
删除文件rm
-r 递归删除,可删除子目录及文件-f 强制删除
删除空目录rmdir
树形结构显示目录,需要安装tree包tree
显示当前目录pwd
创建链接文件ln
分页显示文本文件内容more、less
显示文件头、尾内容head、tail
1.2.vim操作
进入编辑器vi/vim
,vim三种模式:命令模式、插入模式、编辑模式。使用ESC或i或:来切换模式。
进入编辑模式插入i
退出编辑模式esc
保存:后面输入w
退出:后面输入q
不保存退出:后面输入q!
显示行号set number
查找关键字/xxxx
按n跳到下一个,shift+n上一个复制光标所在行,并粘贴yyp
h(左移一个字符←)、j(下一行↓)、k(上一行↑)、l(右移一个字符→)
1.3.打包压缩相关命令
打包压缩tar\gzip\bzip2
-c
归档文件-x
压缩文件-z
gzip压缩文件-j
bzip2压缩文件-v
显示压缩或解压缩过程 v(view)-f
使用档名
例如:
只打包,不压缩:tar -cvf /home/abc.tar /home/abc
打包,并用gzip压缩:tar -zcvf /home/abc.tar.gz /home/abc
打包,并用bzip2压缩:tar -jcvf /home/abc.tar.bz2 /home/abc
如果想解压缩,就直接替换上面的命令tar -cvf / tar -zcvf / tar -jcvf
中的“c” 换成“x” 就可以了。
1.4.Linux管道
将一个命令的标准输出作为另一个命令的标准输入。也就是把几个命令组合起来使用,后一个命令除以前一个命令的结果。
例如:
grep -r “close” /home/* | more 在home目录下所有文件中查找,包括close的文件,并分页输出。
2)文件权限管理
2.1.三种基本权限
R:读,数值表示为 4
W:写,数值表示为 2
X:可执行,数值表示为1
[root@VM-16-2-centos ~]# lltotal 597952-rw------- 1 root root 12387614 Aug 29 apache-zookeeper-3.7.0-bin.tar.gz-rw-r--r-- 1 root root 113304268 May 3 12:22 jdk-8u281-linux-x64.rpm
如上所示,jdk-8u281-linux-x64.rpm
文件的权限为-rw-r--r--
,一共十个字符,分成四段。
第一个字符“-”表示普通文件;这个位置还可能会出现l
链接;d
表示目录第二三四个字符rw-
表示当前所属用户的权限,所以用数值表示为 4+2=6第五六七个字符r--
表示当前所属组的权限,所以用数值表示为 4第八九十个字符r--
表示其他用户权限,所以用数值表示为 4
所以操作此文件的权限用数值表示为 644
2.2.更改权限
更改权限:sudo chmod
[u所属用户 g所属组 o其他用户 a所有用户] [+增加权限 -减少权限] [r w x] 目录名
例如:有一个文件 filename,权限为-rw-r----x
,将权限值改为-rwxrw-r-x
,用数值表示为765
sudo chmod u+x g+w o+r filename` 也可以用数值表示 `sudo chmod 765 filename
3)运行程序
3.1.命令行运行
运行./filename
退出ctrl+c
3.2.后台运行
后台运行jarnohup java -jar xxx.jar 2>&1 &
运行nohup command >out.file 2>&1 &
退出ps -ef |grep 关键字 |awk '{print $2}'|xarg kill -9
3.3.服务方式运行
设置开机启动systemctl enable
启动systemctl start
关闭systemctl stop
4)系统相关
4.1.系统管理命令
查看端口占用情况netstat -tunlp | grep 端口号
查看cpu使用情况lscpu
或者cat /proc/cpuinfo
指定行数查看日志信息tail -f xx
显示指定文件的详细信息,比ls更详细stat
显示在线登陆用户who
显示当前操作用户whoami
显示主机名hostname
显示系统信息uname
动态显示当前耗费资源最多进程信息top
显示瞬间进程状态ps \ ps -aux
查看目录大小du -h /home
(带有单位显示目录信息)
查看磁盘大小df -h
(带有单位显示磁盘信息)
查看内存top
查看磁盘IO读写情况iotop
(需要安装一下:yum install iotop
)
直接查看输出比较高的磁盘读写程序iotop -o
查看网络情况ifconfig
测试网络连通ping
显示网络状态信息netstat
命令不会用了,看文档 如:man grep
[root@VM-16-2-centos ~]# man grepGREP(1)General Commands Manual GREP(1)NAMEgrep, egrep, fgrep - print lines matching a patternSYNOPSISgrep [OPTIONS] PATTERN [FILE...]grep [OPTIONS] [-e PATTERN | -f FILE] [FILE...]……
清屏clear
对命令重命名alias
,如:alias showmeit="ps -aux"
,解除使用unaliax showmeit
杀死进程kill
,可以先用ps
或top
命令查看进程的id,然后再用kill命令杀死进程。kill -9
强制删除
查看进程ps aux
查看端口号占用情况nestat -tunlp | grep
远程传输scp -r /dir/xx root@ip:/dir
4.2.防火墙
查看防火墙状态firewall-cmd --state
停止防火墙systemctl stop firewalld.service
禁止firewall开机启动systemctl disable firewalld.service
4.3.关机和重启
关机shutdown -h now
-r 关机重启-h 关机不重启now 立刻关机
重启reboot
关机halt
4.4.网络配置
查看网卡信息ifconfig
网络配置/etc/sysconfig/network-script/ifcfg-eth0
配置网卡/etc/udev/rules.d/70-persistent-net.rules
5)用户管理
创建用户useradd
设置密码passwd
存储组账号/etc/group
系统用户配置文件/etc/passwd
存储用户账号的密码/etc/shadow
存储用户组账号的密码/etc/gshadow
用户名useradd
用户名userdel
用户名adduser
组名groupadd
组名groupdel
给root设置密码passwd root
su rootsu - root
系统环境变量/etc/profile
用户环境变量bash_profile
用户环境变量.bashrc
su user
切换用户,加载配置文件.bashrc
su - user
切换用户,加载配置文件/etc/profile ,加载bash_profile
更改文件的用户及用户组
sudo chown [-R] owner[:group] {File|Directory}-rw-r--r-- 1 root root 113304268 May 3 12:22 jdk-8u281-linux-x64.rpm
例如:
还以jdk-8u281-linux-x64.rpm
为例。属于用户root,组root
要想切换此文件所属的用户及组。可以使用命令。
sudo chown daley:java jdk-8u281-linux-x64.rpm
6)安装软件
6.1.下载rpm安装包方式
安装rpm -i jdk-XXX_linux-x64_bin.rpm
查找rpm -qa | grep jdk
列表rpm -qa | more
ubuntu dpkg 方式
查找dpkg -I | grep jdk
列表dpkg -I | more
安装dpkg -i jdk-XXX_linux-x64_bin.deb
6.2.yum方式
搜索yum search jdk
安装yum install java-11-openjdk.x86_64
删除yum erase java-11 -openjdk.x86 64
配置文件/etc/yum.repos.d/CentOS-Base.repo
ubuntu apt-get 方式
搜索 apt・cache search jdk
安装apt-get install openjdk-9-jdk
删除apt-get purge openjdk-9-jdk
配置文件/etc/apt/sources. Iist
6.3.下载压缩文件方式
编辑 .bashrc
环境变量配置
打开环境变量文件vi /etc/profile
配置环境变量export JAVA_HOME=/root/j d k-XXX_lin ux-x64
export PATH=$JAVA HOME/bin:$PATH
刷新配置source /etc/profile