Linux基础命令

文档目录操作命令:

(ls、cd、cat、more、tail、mkdir、rm)

常用命令

命令作用对应英文
ls [目录名]查看当前目录下的内容list
pwd查看当前所在目录print work directory
cd [目录名]切换目录change directory
touch [文件名]如果文件不存在,创建文件touch
mkdir [目录名]创建目录make directory
rm [文件名]删除指定文件remove

文件操作

ls -al                      查看目录(隐藏文件+权限)
cat -n 文件路径      只读方式看一下文件的内容
more  文件路径      分页看(回车一行, 空格是一页  b是上一页  Ctrl+c  退出)
tail -f  文件路径      霸屏展示文件后面的内容
mkdir -p 文件夹     创建文件夹
rm -rf 文件或者文件夹   删除文件或者文件夹

cp -r 文件夹 文件夹   copy文件
mv 文件或者文件夹   目的地              剪切或者改名

cat -n 文件路径 | grep 字符串   从某个文件中查找具体的某个字符串

timedatectl set-timezone ‘Asia/Shanghai’   虚拟机时区矫正

rm -f /var/run/yum.pid  强制杀死yum占用程序


ls

作用:显示指定目录下的内容
语法:ls [-al] [dir]
说明:
-a 显示所有文件及目录 (. 开头的隐藏文件也会列出)
-l 除文件名称外,同时将文件型态(d表示目录,-表示文件)、权限、拥有者、文件大小等信息详细列出
注意:
由于我们使用ls命令时经常需要加入-l选项,所以Linux为ls -l命令提供了一种简写方式,即ll

**常见用法: **
ls -al 查看当前目录的所有文件及目录详细信息
ls -al /etc 查看/etc目录下所有文件及目录详细信息
ll 查看当前目录文件及目录的详细信息


cd

作用:用于切换当前工作目录,即进入指定目录
语法:cd [dirName]

特殊说明:
~表示用户的home目录
. 表示目前所在的目录
… 表示目前目录位置的上级目录

举例:
cd … 切换到当前目录的上级目录
cd ~ 切换到用户的home目录
cd /usr/local 切换到/usr/local目录


cat

作用:用于显示文件内容
语法:** cat [-n] fileName**
说明:
-n :由1开始对所有输出的行数编号

举例:
lcat /etc/profile 查看/etc目录下的profile文件内容


more

作用:以分页的形式显示文件内容
语法: more fileName
操作说明:
回车键 向下滚动一行
空格键 向下滚动一屏
b 返回上一屏
q或者Ctrl+C 退出more

举例:
more /etc/profile 以分页方式显示/etc目录下的profile文件内容


tail

作用:查看文件末尾的内容
语法:tail[-f] fileName
说明:
-f :动态读取文件末尾内容并显示,通常用于日志文件的内容输出

举例:
tail /etc/profile 显示/etc目录下的profile文件末尾10行的内容
tail -20 /etc/profile 显示/etc目录下的profile文件末尾20行的内容
tail -f /itcast/my.log 动态读取/itcast目录下的my.log文件末尾内容并显示


mkdir

作用:创建目录
语法:mkdir [-p] dirName
说明:
-p:确保目录名称存在,不存在的就创建一个。通过此选项,可以实现多层目录同时创建

举例:
mkdir itcast 在当前目录下,建立一个名为itcast的子目录
mkdir -p itcast/test 在工作目录下的itcast目录中建立一个名为test的子目录,
若itcast目录不存在,则建立一个


rmdir

作用:删除空目录
语法:rmdir [-p] dirName
说明:
-p:当子目录被删除后使父目录为空目录的话,则一并删除

举例:
rmdir itcast 删除名为itcast的空目录
rmdir -p itcast/test 删除itcast目录中名为test的子目录,
若test目录删除后itcast目录变为空目录,则也被删除
rmdir itcast* 删除名称以itcast开始的空目录


rm

作用:删除文件或者目录
语法:rm [-rf] name
说明:
-r:将目录及目录中所有文件(目录)逐一删除,即递归删除
-f:无需确认,直接删除

举例:
rm -r itcast/ 删除名为itcast的目录和目录中所有文件,(删除前需确认)
rm -rf itcast/ (无需确认,直接删除)名为itcast的目录和目录中所有文件
rm -f hello.txt 无需确认,直接删除hello.txt文件

拷贝移动命令:

(cp、mv)

cp

作用:用于复制文件或目录
语法:cp [-r] source dest
说明:
-r:如果复制的是目录需要使用此选项,此时将复制该目录下所有的子目录和文件

举例:
cp hello.txt itcast/ 将hello.txt复制到itcast目录中
cp hello.txt ./hi.txt 将hello.txt复制到当前目录,并改名为hi.txt
cp -r itcast/ ./itheima/ 将itcast目录和目录下所有文件复制到itheima目录下
cp -r itcast/* ./itheima/ 将itcast目录下所有文件复制到itheima目录下


mv

作用:为文件或目录改名、或将文件或目录移动到其它位置
语法:mv source dest

举例:
mv hello.txt hi.txt 将hello.txt改名为hi.txt
mv hi.txt itheima/ 将文件hi.txt移动到itheima目录中
mv hi.txt itheima/hello.txt 将hi.txt移动到itheima目录中,并改名为hello.txt
mv itcast/ itheima/ 如果itheima目录不存在,将itcast目录改名为itheima
mv itcast/ itheima/ 如果itheima目录存在,将itcast目录移动到itheima目录中

打包压缩命令:

(tar) , (unzip)

tar / unzip

作用:对文件进行打包、解包、压缩、解压
语法:tar [-zcxvf] fileName [files]
注意:
包文件后缀为.tar 表示只是完成了打包,并没有压缩
包文件后缀为.tar.gz 表示打包的同时还进行了压缩

说明:
-z:z代表的是gzip,通过gzip命令处理文件,gzip可以对文件压缩或者解压
-c:c代表的是create,即创建新的包文件
-x:x代表的是extract,实现从包文件中还原文件
-v:v代表的是verbose,显示命令的执行过程
-f:f代表的是file,用于指定包文件的名称

举例:

打包
tar -cvf hello.tar ./*		      将当前目录下所有文件(打包),打包后的文件名为hello.tar
tar -zcvf hello.tar.gz ./*		  将当前目录下所有文件(打包并压缩),打包后的文件名为hello.tar.gz

解包
tar -xvf hello.tar		                将hello.tar文件进行(解包),并将解包后的文件放在当前目录
tar -zxvf hello.tar.gz		            将hello.tar.gz文件进行(解压),并将解压后的文件放在当前目录
tar -zxvf hello.tar.gz -C /usr/local    将hello.tar.gz文件进行解压,并将解压后的文件放在/usr/local目录

要解压 xxx.zip 文件,你可以使用以下命令,假设你的系统支持 unzip 命令:

unzip nacos-server-2.0.4.zip

文本编辑命令:

(vim)

说明:
1、在使用vim命令编辑文件时,如果指定的文件存在则直接打开此文件。
如果指定的文件不存在则新建文件。
2、vim在进行文本编辑时共分为三种模式,分别是:
命令模式(Command mode)
插入模式(Insert mode)
底行模式(Last line mode)
这三种模式之间可以相互切换。我们在使用vim时一定要注意我们当前所处的是哪种模式

1、命令模式
命令模式下可以查看文件内容、移动光标(上下左右箭头、gg、G)
通过vim命令打开文件后,默认进入命令模式
另外两种模式需要首先进入命令模式,才能进入彼此

    
2、插入模式
插入模式下可以对文件内容进行编辑
在命令模式下按下[i,a,o]任意一个,可以进入插入模式。进入插入模式后,下方会出现【insert】字样
在插入模式下按下ESC键,回到命令模式


3、底行模式
底行模式下可以通过命令对文件内容进行查找、显示行号、退出等操作
在命令模式下按下[:,/]任意一个,可以进入底行模式
通过/方式进入底行模式后,可以对文件内容进行查找
通过:方式进入底行模式后,可以输入wq(保存并退出)、q!(不保存退出)、set nu(显示行号)

命令模式指令含义
gg定位到文本内容的第一行
G定位到文本内容的最后一行
dd删除光标所在行的数据
ndd删除当前光标所在行及之后的n行数据
u撤销操作
shift+zz保存并退出
i 或 a 或 o进入插入模式
底行模式命令含义
:wq保存并退出
:q!不保存退出
:set nu显示行号
:set nonu取消行号显示
:n定位到第n行, 如 :10 就是定位到第10行

查找命令:

(find . grep)

find

作用:在指定目录下查找文件
语法:find dirName -option fileName

举例:
find . –name “.java” 在当前目录及其子目录下查找.java结尾文件
find /itcast -name “
.java” 在/itcast目录及其子目录下查找.java结尾的文件


grep

作用:从指定文件中查找 (指定的文本内容)
语法:grep word fileName
举例:
grep Hello HelloWorld.java 查找HelloWorld.java文件中出现的Hello字符串的位置
grep hello *.java 查找当前目录中所有.java结尾的文件中包含hello字符串的位置

进程相关命令

(top. ps .kill . grep)

top

image.png

top 实时显示所有的进程信息
top -c 实时显示所有的进程信息(显示完整命令)
top -p PID 实时显示(指定进程的信息)

结束监控快捷键 : q


ps

**ps **显示 (当前正在运行的进程信息)
**ps -A **显示(系统中所有的进程信息)
**ps -ef ** 显示系统中所有的进程信息(完整信息)
**ps -u 用户名 **显示(指定用户的进程信息)

举例:
ps -ef | grep tomcat 显示系统中的进程信息并且含有tomcat字样


kill

**kill 进程PID **杀死指定线程
**kill -9 进程PID **彻底杀死指定线程
**kill -9 $(ps-ef | grep 用户名) **杀死(指定用户所有进程)
**killall -u 用户名 **杀死指定用户(所有进程)


grep

image.png


端口号命令

netstat -tunlp 查看已经启动的服务
netstat -tunlp | grep mysql 查看mysql的服务信息
ps -ef | grep mysql 查看mysql进程

备注:
A. netstat命令用来打印Linux中网络系统的状态信息,可让你得知整个Linux系统的网络情况。
参数说明:
-l或–listening:显示监控中的服务器的Socket;
-n或–numeric:直接使用ip地址,而不通过域名服务器;
-p或–programs:显示正在使用Socket的程序识别码和程序名称;
-t或–tcp:显示TCP传输协议的连线状况;
-u或–udp:显示UDP传输协议的连线状况;
B. ps命令用于查看Linux中的进程数据。

  1. 查看端口号是否被占用

命令:netstat -anp | grep 端口号

2.查看当前环境下已经使用了的端口信息
命令:netstat -nultp

3.通过kill -9 PID,将该线程强杀即可
命令: kill -9 进程PID


端口号监听相关命令

下方命令将列出当前系统上正在监听的所有网络连接和端口,以及与之相关联的进程信息。
可以根据需要选择其中一个命令来查看被监听的端口.

  1. 使用 netstat 命令
    sudo netstat -tulpn
    -t: 显示 TCP 连接。
    -u: 显示 UDP 连接。
    -l: 显示正在监听的端口。
    -p: 显示进程标识符和进程名称。
    -n: 使用数字形式显示端口号。

  2. 使用 ss 命令
    sudo ss -tulpn
    -t: 显示 TCP 连接。
    -u: 显示 UDP 连接。
    -l: 显示正在监听的端口。
    -p: 显示进程标识符和进程名称。
    -n: 使用数字形式显示端口号。

  3. 使用 lsof 命令
    sudo lsof -i -P -n | grep LISTEN
    -i: 仅显示网络连接。
    -P: 禁止将端口号转换为服务名称。
    -n: 使用数字形式显示端口号。

指定查看9999端口

想要查看特定端口(例如 9999 端口)是否被监听,可以在 netstat、ss 或 lsof 命令后加上 grep 过滤器来筛选指定端口的信息。
确保你有足够的权限执行这些命令,或者在命令前加上 sudo

1.使用 netstat 查看9999端口
sudo netstat -tulpn | grep 9999

2.使用 ss 查看9999端口
sudo ss -tulpn | grep 9999

3.使用 lsof 查看9999端口
sudo lsof -i -P -n | grep LISTEN | grep 9999


(软件级)防火墙操作

**操作 **指令备注
查看防火墙状态systemctl status firewalld
暂时关闭防火墙systemctl stop firewalld
永久关闭防火墙(禁用开机自启)systemctl disable firewalld下次启动,才生效
暂时开启防火墙systemctl start firewalld
永久开启防火墙(启用开机自启)systemctl enable firewalld==下次启动,才生效
开放指定tcp端口sudo firewall-cmd --zone=public --add-port=8085/tcp --permanent==需要重新加载生效
==
开放指定udp端口sudo firewall-cmd --zone=public --add-port=8085/tcp --permanent
关闭指定端口firewall-cmd --zone=public --remove-port=8080/udp – permanent==需要重新加载生效
==
立即生效(重新加载)firewall-cmd --reload
查看开放端口firewall-cmd --zone=public --list-ports
重新加载防火墙firewall-cmd --reload
关闭服务service 服务名称 stop
启动服务service 服务名称 start
清除防火墙之前的规则rm -rf /etc/firewalld/zones

(系统级)selinux内核操作

介绍:

SELinux(Security-Enhanced Linux)是一种为Linux内核提供访问控制安全策略的机制,它通过强制访问控制(Mandatory Access Control,MAC)来限制进程和用户对系统资源的访问,从而增强系统的安全性。
SELinux的主要作用是最大限度地减小系统中服务进程可访问的资源(最小权限原则),最大程度地限制了Linux系统中的恶意代码活动。它通过对进程和文件资源采用强制访问控制方式(Mandatory Access Control),为Linux系统提供了改进的安全性。SELinux允许系统管理员根据需要制定安全策略,确保只有授权的用户和进程可以访问特定的资源。
总之,SELinux是一种重要的安全增强功能,它可以帮助提高Linux操作系统的安全性,但同时也需要系统管理员根据需要进行配置和定制化。

通过以下两种方式检查SELinux是否开启:

  1. /usr/sbin/sestatus -v:

如果SELinux status参数为enabled即为开启状态。

  1. getenforce:

也可以用这个命令检查。如果输出结果为Permissive,则SELinux处于关闭状态;如果输出结果为Enforcing,则SELinux处于开启状态。

如果需要关闭SELinux,可以修改配置文件并重启机器。具体方法如下:

  1. 修改vi /etc/selinux/config 文件,将SELINUX=enforcing改为SELINUX=disabled。
  2. 重启机器即可

临时关闭SELinux可以通过以下命令立即生效:
setenforce 0
这个命令将SELinux设置为Permissive模式,即不强制执行SELinux策略,但会记录所有的访问控制违规行为。在执行该命令后,SELinux仍然会在系统重启后自动开启。
如果要使临时关闭SELinux的设置在系统重启后失效,可以在/etc/selinux/config文件中将SELINUX=enforcing改为SELINUX=disabled,并重启系统。这样就可以永久关闭SELinux。


刷新相关

source /etc/profile 刷新配置文件


卸载相关

rpm -qa 查询当前系统中安装的(所有软件)
rpm -qa | grep mysql 查询当前系统中安装的 (名称带mysql的软件
rpm -qa | grep mariadb 查询当前系统中安装的(名称带mariadb的软件

软件卸载:
rpm -e --nodeps  软件名称

软件安装:

rpm -ivh 软件名称


查询命令:

sudo find / -name "config.xml"
-- 使用 find 命令来查找 config.xml 文件

使用 netstat 命令:

sudo netstat -tulpn

这个命令将显示所有正在使用的端口及其对应的服务和进程信息。参数说明:

  • -t: 显示 TCP 连接。
  • -u: 显示 UDP 连接。
  • -l: 仅显示监听状态的端口。
  • -p: 显示进程/程序名。
  • -n: 以数字形式显示端口号。
  • 14
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值