Linux系统常用指令合集


linux能运行主要的unix工具软件、应用程序和网络协议。服务器中常用linux,通常LAMP(Linux+Apache+MySQL+PHP)或者(Linux+Nginx+MySQL+PHP)组合。Linux中万事万物皆文件!

查看命令类型: type 命令
打开命令帮助文档:
help [命令] #内置命令
man[命令] #外置命令
whereis 查询命令文件的位置
file 查看文件的类型
who 查看当前在线的用户
whoami 我是谁
pwd 我在哪
uname -a 查看内核信息
echo 类似于sout syso,打印语句
history查看历史

关机指令:shutdown
sync #将数据由内存同步到硬盘中(关机重启都需要sync)
shutdown #关机指令
-h 10 #计算机将在10分钟后关闭
-h now #立即关机
-h 20:00 #计算机将在20:00关机
-r now #系统立马重启
-r +10 #系统十分钟后重启
reboot #重启
halt #关闭系统,等同于shutdown -h now 和poweroff
系统目录结构

可操作的目录:/etc /home /opt /root /usr /tmp /var
在这里插入图片描述

/www:存放服务器网站相关的资源,环境,网站的项目
一般创建的目录都是三级目录

文件目录

目录管理:绝对路径、相对路径
cd #切换目录
cd … #返回上一级目录
./ #当前目录
cd / #返回根目录
cd ~ #回到当前目录
ls (列出目录)
-a #all,查看全部文件,包括被隐藏的文件
-l #列出所有的文件,包含文件的属性和权限,没有隐藏文件
所有Linux的命令都可以组合使用

linux中以" . “开头的文件都属于隐藏文件

cd 命令(切换目录)
cd 目录名(绝对路径都是以/开头的)

pwd(显示当前用户所在目录)

mkdir (创建一个目录)
#mkdir /test1/test2/ 创建多级目录

rmdir (删除目录)#仅能删除空的目录,如果下面存在文件,需要先删除文件
-p #递归删除多个目录

cp (复制文件或者目录) #如果文件是可见的,输入首字母后按Tab可以自动补全
#cp 原来的地方 新的地方

rm (移除文件)
-f #忽略不存在的文件,不会出现警告,强制删除
-r #递归删除目录
-i #互动,删除前询问
rm -rf / #强制删除系统中的所有文件,且不会询问!

mv (移动文件或者目录) #如果移动的是两个文件夹,则会重命名
-f #强制移动
-u #只替换已经更新过的文件

文件基本属性

linux系统是一个典型的多用户系统,不同用户处于不同地位。root是最高权限。

Linux中使用ll,ls -l 命令来显示一个文件的属性已经文件所属的用户和组

[d]表示目录、[-]表示文件,若是[l]表示链接文档(link file),l开头的文件都指明了其链接的文件路径
[r] 可读 、[w]可写、[x]可执行
主用户为root用户
每个文件或目录都有一组共9个权限位,每三位被分为一组。

修改文件属性
chgrp (更改文件属性)
chgrp [-R] 属组名 文件名
-R:递归更改文件属组,就是在更改某个目录文件的属组时,如果加上-R参数,那么该目录下的所有文件的属组都会更改。

chown (更改文件属主,也可以同时更改文件属组
chown [-R] 属主名 文件名
chown [-R] 属主名:属组名 文件名

chmod (更改文件的9个属性)
chmod [-R] xyz 文件或目录

Linux文件的权限字符为 【-rwxrwxrwx】其中每三个为一组,可以使用数字来代表各个权限,各个权限的数字为: r:4 w:2 x:1
如可读可写可执行 rwx 7 可读可写不可执行 rw- 6

文件内容查看

cat #由第一行开始显示文件内容
tac #由最后一行开始显示,是cat 倒着写
nl #显示的时候加上行号
more #一页一页地显示文件内容(空格代表翻页,enter代表向下看一行,:f可以看到当前行号)
less #与more类似,比more更好的是他可以往前翻页(空格翻页,上下键代表翻动页面,退出 q 命令,查找字符串 /要查询的字符串(向下查询) ?查询的字符串(向上查询) n继续搜寻下一个 N向上搜寻 )
head #只看头几行 (通过 -n 参数来控制显示几行)
tail #只看尾巴几行 (-n 参数来控制看几行)
#可使用man [命令]查看各个命令的帮助文档

网络相关命令

ifconfig #查看网络配置(需要先安装yum install net-tools -y)
netstat
查看当前的网络状态信息
一个机器默认有65536个端口号
这是一个逻辑的概念,将来我们需要使用程序来监听指定的端口,等待别人的访问
一个端口只能被一个程序监听,端口已经被占用
netstat -anp #查看到端口已经被监听的情况
netstat -r #查看核心路由表
ping
查看与目标IP地址是否能够连通
telnet
查看与目标IP的指定端口是否能够连通
yum install telnet -y
telnet 192.168.31.45 22
curl
restful 我们所有的资源在网络上都有唯一的定位
我们可以通过这个唯一定位标识访问指定的资源
curl -X GET http://www.baidu.com

Linux链接的概念

Linux链接分两种:硬链接和软链接
硬链接:A-B 假设B是A的硬链接,那么他们两个指向了同一个文件,允许一个文件拥有多个路径,用户可以通过这种机制建立硬链接到一些重要的文件上,防止误删。
软连接:类似windows下的快捷方式,删除源文件,快捷方式也访问不了。

ln(创建硬链接)
-s #创建一个软链接

touch (创建文件)
echo (输入字符串)>> 文件名
stat (查看文件状态信息)

VIM编辑器

从vi发展出来的一个文本编辑器,代码补全、编译及错误跳转等方便编程的功能。
三种使用模式:命令模式、输入模式、底线命令模式

命令模式:vim/vi 文件名
i #切换到输入模式,以输入字符串
x #删除当前光标所在处的字符
: #切换到底线命令模式,以在最底一行输入命令,如果是编辑模式,需要先退
输入模式:

:set nu #设置行号
数字 #横向移动光标
数字 #纵向移动光标
/word #搜索字符串

u #重复前一个动作(撤销)
ctrl +r #重做上一个动作(重做)

i #输入模式
Esc #退出编辑模式
:wq #保存退出

Linux账号管理

一般在公司中,用的都不是root账户

useradd 命令(添加用户) 创建的用户默认路径 /etc/passwd
-m #自动创建这个用户的主目录 /home/charky
-c #comment 指定一段注释性描述。
-d #目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
-g # 用户组 指定用户所属的用户组。
-G #用户组,用户组 指定用户所属的附加组。
-m #使用者目录如不存在则自动建立。
-s #Shell文件 指定用户的登录Shell。
-u #用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。

userdel 命令(删除用户)
-r #删除用户的时候把他的目录也一并删掉
usermod (修改用户)
#usermod 对应修改的内容 修改哪个用户
修改完毕后查看 /etc/passwd 配置文件即可
切换用户
root用户 #表示root账户 $表示普通用户
1.切换用户的命令为:su username 【username是你的用户名哦】
2.从普通用户切换到root用户,还可以使用命令:sudo su
3.在终端输入exit或logout或使用快捷方式ctrl+d,可以退回到原来用户,其实ctrl+d也是执行的exit命令
4.在切换用户时,如果想在切换用户之后使用新用户的工作环境,可以在su和username之间加-,例如:【su - root】

$表示普通用户
#表示超级用户,也就是root用户

用户密码设置 #可通过普通用户的账户密码登陆系统
一般通过root创建用户的时候,要配置密码
passwd username

锁定账号
passwd -l 用户名 #锁定后这个用户便不能登陆了
passwd -d 用户名 #没有密码也不能登陆

用户组管理

属主,属组
每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理(开发、测试、运维、root),不同的linux系统对用户组的规定有所不同,如linux下的用户属于与他同名的用户组,这个用户组在创建的用户时同时创建。
用户组的管理涉及用户组的添加、删除和更改。组的增加,删除和修改实际上就是对/etc/group文件的更新。

groupadd 用户组名 #创建一个用户组
-g #自定义用户id,若不指定就是自增1
groupdel 用户组 #删除用户组
groupmod #修改用户组的权限信息和名字
-g #修改用户组id
-n #修改名字
查看用户组信息:cat /etc/group

扩展:文件的查看
/etc/passwd
用户名:口令(登陆密码):用户标识号:组标识号:注释性描述:主目录:登陆shell
这个文件中的每一行都代表这一个用户,我们可以从这里看出这个用户的主目录在哪里,可以看到属于哪个组
登陆口令:把真正的加密后的用户口令存放到/etc/shadow文件中,保证了我们密码的安全性

磁盘管理

df (列出文件系统整体的磁盘使用量)
-h #以多少兆的形式列出
du(检查磁盘空间使用量)

du -sm /* #检查根目录下每个目录所占用的容量
mount 外部设备 本机目录/mnt/xxxx #将外部设备挂在到linux的/mnt/xxxx目录下
umount -f [挂载位置] 强制卸载
重定向
改变数据输出的位置,方向
0 in 1 out 2 err
ls /1>lucky 标准输出
ls />lucky 标准输出
ls abcd 2>lucky 错误输出

替换 >>追加
ls /1>>lucky 在lucky中追加/文件夹下的信息
ls /1>lucky 覆盖掉lucky中原有的内容
结合使用
ls /etc/abc >lucky 2>&1
ls /etc/abc >>lucky 2>&1
信息黑洞
ls /etc/abc >> /dev/null 2>&1 #/dev/null为黑洞,写进去的数据拿不出来

进程管理

基本概念
在Linux中,每一个程序都有一个自己的进程,每一个进程都有一个id号
每一个进程都会有一个父进程
进程可以有两种存在方式:前台、后台
一般的话服务都是后台运行的、基本的程序都是前台运行的

ps(查看当前系统中正在执行的各种进程的信息)
-a #显示当前终端运行的所有进程的信息
-u #以用户的信息显示进程
-x #显示后台运行的进程的参数
ps -aux #查看所有的进程
| #在Linux中叫管道符 A|B表示将前面命令的结果作为参数传递给后面的命令
grep #查找文件中符合条件的字符串

ps -aux|grep #ps -aux |grep mysql 查看所有mysql相关的进程
ps -ef #可以查看父进程的信息 ps -ef|grep mysql 查看mysql的父进程
ps -aux --sort -pcpu
看父进程我们一般可以通过目录树结构来查看

后台进程
只需要在命令的后面添加一个&符号,进程便转入后台运行
jobs -l
可以查看当前的后台进程,但是只有当前用户界面可以获取到
nohup 可以防止后台进程被挂起
nohup ping www.baidu.com >>baidu 2>&1 &
进程树

pstree
-p #显示父id
-u #显示当前用户组

结束进程:
kill -9 进程的id #强制结束进程

top命令经常用来监控linux的系统状况,能够实时显示系统中各个进程的资源占用情况
top
-d n #n代表秒数,表示top命令显示的页面更新一次的间隔。默认是5秒。
-b:以批次的方式执行top。
-n:与-b配合使用,表示需要进行几次top命令的输出结果。
-p:指定特定的pid进程号进行观察
q退出

free 是监控 Linux 内存使用状况最常用的命令之一
free -m
vmstat

LinuxSystemctl是一个系统管理守护进程、工具和库的集合,用于取代System V、service和chkconfig命令,初始进程主要负责控制systemd系统和服务管理器。通过Systemctl –help可以看到该命令主要分为:查询或发送控制命令给systemd服务,管理单元服务的命令,服务文件的相关命令,任务、环境、快照相关命令,systemd服务的配置重载,系统开机关机相关的命令。
systemctl stop #停止服务

特殊字符

如果文件的开始是 . 说明此文件是一个隐藏文件
. 指向当前目录
…指向当前目录的上一级目录
$
说明这是一个变量
*
通配符(代表任意字符)
~
当前用户的home目录
每个用户的home目录是不同的
root用户的home目录在系统根目录下
其他用户的home目录在/home/用户名 为home目录
空格
linux的命令与参数用空格隔开
/
整个Linux的文件根目录
命令的参数
如果是单词一般加 –
如果是字母或缩写一般加 -

echo $$ #查看当前进程编号

计算机间的数据传输
Windows-Linux
xftp进行传输
较为通用的文件传输方式
lrzsz
需要手动安装
yum install lrzsz -y
rz
将文件从Windows上传到Linux
sz
将文件从Linux传输到Windows
Linux与Linux数据传输
scp 源数据地址(source) 目标数据地址(target)
scp dataset root@sjic:/opt
scp -r dataset root@sjic:/opt (传输文件夹时需要加 -r

文件压缩
主要针对的文件是lucky.tar.gz
解压缩
tar -zx(解压 )v(过程)f(文件) lucky.tar.gz
tar -zxf tomcat.tar.gz -C /opt/
-C指定解压缩的文件目录
压缩
tar -zc(压缩)f(文件)tomcat.tar.gz(解压后的名字) apache-tomcat-7.0.98(源文件)

zip和unzip
安装 yum install zip unzip -y
压缩
zip -r tomcat.zip apache-tomcat-7.0.61
解压缩
unzip tomcat.zip

修改主机域名
vi /etc/hosts

防火墙

查看防火墙状态
systemctl status firewalld.service
关闭防火墙
本次开机状态下防火墙关闭
systemctl stop firewalld.service(本次服务内关闭防火墙)
服务器重启后关闭防火墙
systemctl disable firewalld.service(禁用防火墙服务)
firewall-cmd --status
–reload #重新载入配置
–get-zones #防火墙范围
–get-services #列出支持的服务
–query-services ftp #查看是否支持ftp
–add-service=ftp #临时开放ftp服务
–add-port=80/tcp --permanent #永久添加80端口
开启一个端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
删除一个端口
firewall-cmd --zone=public --remove-port=80/tcp --permanent

RPM安装
Redhat Package Manager,属于红帽的包管理方式
通过RPM命令安装软件
rpm -ivh xxxxx.rpm
可以查询软件
rpm -qa | grep jdk
rpm -q jdk
卸载
rpm -e xxxxxxx
需要手动配置java环境变量
vim /etc/profile
重新加载配置文件
source /etc/profile

linux三剑客
cut
用指定的规则来切分文本
cut -d ‘:’ -f1,2,3 password #以分号拆分文件password并获取1,2,3列
sort
对文本中的行进行排序
sort -t ': ’ -k2 lucky
对每一行的数据以:进行拆分,按照第二列进行排序
sort -t ‘: ’ -k2 -r lucky
逆序
sort -t ’ :’ -k2 -n lucky
按照数值大小进行排序,如果有字母,则字母在前
wc
统计单词数量
wc lucky
-l #line
-w #word 以空格来划分单词
-c #char
grep
可以对文本进行搜索
同时搜索多个文件
从文档中查询指定的数据
grep adm password
grep school password lucky
显示匹配的行号
grep -n school password
显示不匹配的忽略大小写
grep -nvi root password --color =auto #在password文件中查找root,同受忽略大小写
使用正则表达式匹配
grep -E “[1-9]+” passwd --color=auto
sed
srteam editor缩写,简称流编辑器
sed软件从文件或管道中读取一行,处理一行,输出一行,以此重复

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值