Linux命令小结
Posted 波特富有车
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux命令小结相关的知识,希望对你有一定的参考价值。
Linux系统分类
linux系统,主要分debian系和redhat系
debian系主要有Debian,Ubuntu等
redhat系主要有RedHat,Fedora,CentOs等
主要使用的为debian系的Ubuntu和redhat系的CentOs
重点关注两类的包安装工具及包管理工具
Ubuntu: 包安装工具 dpkg
包管理工具 apt
CentOs: 包安装工具 rpm
包管理工具 yum
例如:Ubutu下安装mysql8
1.下载最新MySQL APT存储库
wget https://dev.mysql.com/get/mysql-apt-config_0.8.12-1_all.deb
2.安装下载的发行包
sudo dpkg -i mysql-apt-config_0.8.12-1_all.deb
3.更新包信息
sudo apt-get update
4.使用APT安装MySQL
sudo apt-get install mysql-server
常用命令
-
ls 列举出当前工作目录的内容(文件或文件夹)
mkdir 新建一个新目录
pwd 显示当前工作目录
cd 切换文件路径
cd ~ 切换到当前用户的家目录
cd / 回到整个系统的根文件系统目录
rmdir 删除给定的目录
rm 删除给定的文件
cp 对文件进行复制
mv 对文件或文件夹进行移动(也可重命名)
cat 在标准输出(监控器或屏幕)上查看文件内容
tail 在标准输出上显示给定文件的最后10行内容(-n N 指定N行)
less 按页或按窗口打印文件内容(查看包含大量文本数据的大文件时是非常有用和高效的)
grep 在给定的文件中搜寻指定的字符串(根据文件的内容进行查找)
-i 忽略大小写
-r 递归搜寻指定的字符串
-l 查询多文件时只输出包含匹配字符的文件名
如
grep -r ‘something’ 在当前目录下递归查找包含‘something’的文件
find 根据文件的属性进行查找(文件名,是否为空,访问时间,修改时间)
如
find / -name httpd.conf 在根目录下查找文件httpd.conf
find / -amin -10 查找在系统中最后10分钟访问的文件(access time)
find / -mmin -5 查找在系统中最后5分钟里修改过的文件(modify time)
tar 创建、查看和提取tar压缩文件
创建 tar -cvf
查看 tar -tvf
提取 tar -xvf
对于tar包,可以再用gz,zip等压缩算法再次压缩
tar -zxvf java.tar.gz -C /usr/java (解压到指定的文件夹,-z是否需用gzip压缩)
gzip 创建和提取gzip(.gz)压缩文件(不能保存原文件,不能压缩文件夹)
创建 gzip abc.tar 得到abc.tar.gz
提取 gzip -d abc.tar.gz 得到abc.tar
zip 创建和提取zip(.zip)压缩文件(可以保留原文件,可以压缩文件夹)
创建 zip
提取 unzip
whatis 解释当前命令
who 列出当前登录的用户名
su 切换不同的用户
uname 显示出关于系统的重要信息,如内核名称、主机名、内核版本、处理机类型等
uname -a 查看所有信息
df(Disk space Free) 查看文件系统中磁盘的使用情况
df -h 以人类可读的方式显示
ps 显示系统的运行进程
top 默认按照CPU的占用情况,显示占用量较大的进程
top -u root 查看root用户的CPU使用排名情况
shutdown 关闭计算机
shutdown -r 重启计算机
查看内网IP ifconfig -a
查看外网IP curl cip.cc
文件权限
Linux下权限的粒度有 拥有者、群组、其它组 三种。每个文件都可以针对三个粒度,设置不同的rwx(读写执行)权限
举例 -rwxr-xr-x
第一位 | 用户 |
组用户 | 其他用户 |
-(文件) d(目录) |
rwx(读写执行) | r-x(读、执行) |
r-x(读、执行) |
如果我们将具有权限(r、w、x)表示为1,无权限表示为0,
那么对应二进制如下,r - - = 100、- w - = 010、- - x = 001、
再转换成10进制,那么读=4、写=2、可执行=1,则
rwx对应4+2+1=7 r-x对应4+1=5
如
设置所有人可以读写及执行
chmod 777 file
等价于 chmod u=rwx,g=rwx,o=rwx file 或 chmod a=rwx file
设置拥有者可读写,其他人不可读写执行
chmod 600 file
等价于 chmod u=rw,g=---,o=--- file 或 chmod u=rw,go-rwx file
5. 高效率命令操作
在长命令中
Ctrl + A 回到命令的最开始
Ctrl + E 回到命令的末尾
Ctrl + U 是清空当前命令
前进一个单词
Option+⬅️ 后退一个单词
在vim中
命令模式下:
j 向下移动一行
3j向下移动三行
k 向上移动一行
h 向左移动一个字符
l 向右移动一个字符
向上移动一屏
Ctrl+f 向下移动一屏
insert模式下:
u 撤销操作
Control+r 恢复撤销
status网络状态]
指明显示TCP端口
指明显示UDP端口
显示所有连接和侦听端口
-n 不进行DNS轮询,显示IP[n是numeric的首字母,以数字形式显示地址和端口]
显示进程标识符和程序名称[每一个套接字/端口都属于一个程序,p是program的首字母]
仅显示监听套接字[l是listening的首字母]
例如
netstat -anp|grep 3344 查看3344端口是否被监听
3344 查看3344端口是否被占用 :
ps(显示当前进程的状态)
-aux 显示所有包含其他使用者的行程
例如
ps -ef|grep nginx 查看nginx进程相关信息
-aux|grep nginx 查看nginx进程相关信息
6. screen的使用
使用场景:
1.做一些关于数据的操作(备份、传输、压缩等)或是要在后台持续的运行一些程序,
由于,工作的数据量很大或者工作要持续很长的时间,我们就必须保证这个终端的启动
2.Screen中有会话的概念,用户可以在一个screen会话中创建多个screen窗口,
在每一个screen窗口中就像操作一个真实的telnet/SSH连接窗口那样
安装:
CentOS执行:yum install screen
使用:
1. 创建Screen会话
screen -S test (创建一个名字为test的会话)
2. 暂时离开,保留screen会话中的任务或程序
Ctrl+a d (先按Ctrl+a,放开后按d)
3. 列出当前存在的会话列表
screen -ls
如:(pid.sessionname)
4. 恢复screen会话
screen -r test (sessionname)
screen -r 29098 (pid)
5. 在会话中创建若干个窗口
ctrl+a c (先按Ctrl+a,放开后按c)
6. 在当前会话中查看窗口情况
ctrl+a w
7. 切换窗口
下一个:ctrl+a n 或 ctrl+a 空格
上一个:ctrl+a p
指定: ctrl+a 数字 (ctrl+a 0,就是切换到0窗口)
8. 改screen的名字
1) screen -S old_session_name -X sessionname new_session_name
如 screen -S test -X sessionname newtest (test->newtest)
或者
2) ctrl+a : (先按Ctrl+a,放开后按:)
此时下方会出现一个黑框,然后输入 sessionname newtest
9. 关闭当前窗口(kill)
ctrl+a k
10. 彻底杀死某个screen
kill PID
以上是关于Linux命令小结的主要内容,如果未能解决你的问题,请参考以下文章