文章目录
https://blog.csdn.net/a3562323/article/details/106639965
查系统信息
lsb_release 用于打印Linux发行版的信息
lsb_release -a
如果命令没有安装,会有提示,按照提示安装即可
uname 用于打印Linux系统的一些关键信息,比如内核版本、系统架构等
uname -a:打印所有有关系统的详细信息。
uname -r:仅打印内核版本。
uname -m:仅打印系统架构。
通过文件查看
-
cat /etc/os-release 该文件中存储了与操作系统相关的元数据,其中包括发行版名称和版本号。
-
/proc目录提供了许多与系统相关的文件和目录,可以以文本形式查看系统信息
/proc/cpuinfo:包含有关处理器(CPU)的信息,如型号、频率等。
/proc/meminfo:包含有关系统内存的信息,如总内存、可用内存等。
/proc/version:包含有关Linux内核版本和编译信息的信息。
查ip
ifconfig:如果提示未找到命令,是因为没有安装,可以使用ip a s
vim
vim编辑文本
按键盘i编辑文本,Esc退出编辑
不在编辑状态的时候直接输入:q是退出,如果文本改变了,想要不保存,强行退出,:q!,如果要保存退出:wq!
vim中查找/name
,然后回车,小写n是下一个,大写N是上一个
打开关闭高亮是noh
或者set noh
- 复制当前行到下一行
不要进入编辑模式,先按yy
然后按p
- 删除当前行
不要进入编辑模式,按dd
tar
linux默认压缩格式
- .gz
- .bz2
- .zip
tar
可使用的是.gz
和.bz2
tar的命令选项
选项 | 说明 |
---|---|
-c | 创建打包文件 |
-v | 显示打包或者解压的详细信息 |
-f | 指定文件名称,-f 要放在其它选项最后 |
-z | 压缩或解压的格式(.gz) |
-j | 压缩或解压的格式(.bz2) |
-x | 解压 |
-c | 解压缩到指定目录 |
常用命令
tar -zxvf
:解压文件,解压到当前文件夹(.gz
)方式
[root@localhost src]# tar -zxvf nginx-1.12.2.tar.gz
-C
:解压到指定路径
[root@localhost src]# tar -zxvf nginx-1.12.2.tar.gz -C /usr/local/nginx
解压war包
jar -vxf
解压到当前文件夹
jar -vxf test1.war
zip
压缩 zip 命令
classes目录压缩为classes.zip
zip -r classes.zip classes
lib文件夹和tt.class文件压缩为test.zip
zip -r test.zip lib tt.class
参数
参数 | 说明 |
---|---|
-1 | 最快压缩,压缩率最差。 |
-9 | 最大压缩,压缩率最佳。 |
-b | 暂存文件的路径。这个参数一般在要产生的 zip 文件存在,而硬盘现有空间不足时。 |
-c | 替新增或更新的文件增加一行注解。 |
-d | 从 zip 文件移出一个文件。 |
-D | 不要在 zip 文件中储存文件的目录信息。 |
-f | 以新文件取代现有文件。 |
-F | 修复已经损毁的压缩文件。 |
-g | 将文件压缩附加到 zip 文件中。 |
-h | 显示辅助说明。 |
-i | 指定要含入的某些特定文件。 |
-j | 只储存文件的名称,不含目录。 |
-k | 强迫使用 MSDOS 格式文件名。 |
-l | 将 CR ( Carriage Return ) LF ( Line Feed ) 转换成 LF,一般是要将 MS-DOS 上的文本文件压缩后拿到 UNIX 下使用时才使用此参数。这只适用于文本文件 ( .txt ),如果用于二进制文件则会造成二进制文件损毁。 |
-L | 显示 zip 命令的版权。 |
-m | 将特定文件移入 zip 文件中,并且删除特定文件。 |
-n | 不压缩特定扩展名的文件。 |
-o | 将 zip 文件的时间设成最后修正 zip 文件的时间。 |
-q | 安静模式,不会显示相关讯息和提示。 |
-r | 包括子目录。 |
-t | 只处理 mmddyy 日期以后的文件。 |
-T | 测试 zip 文件是否正常。 |
-u | 只更新改变过的文件和新文件。 |
-v | 显示版本资讯或详细讯息。 |
-x | 不需要压缩的文件。 |
-y | 将 symbolic link 压缩,而不是压缩所连结到的文件。 |
-z | 为 zip 文件增加注解。 |
-# | 设定压缩速度,-0 表示不压缩,-1 表示最快速度的压缩, |
-9 :表示最慢速度的压缩 ( 最佳化的压缩 ),预设值为 -6。 | |
-@ | 从标准输入读取文件名称。 |
解压 unzip 命令
//解压到files文件夹
unzip classes.zip -d files
//解压到当前文件夹
unzip classes.zip
//解压class开头的所有压缩包到当前文件夹
unzip class*.zip
//验证压缩文件是否完整
unzip -t classes.zip
参数
参数 | 说明 |
---|---|
-c | 将解压缩的结果 |
-l | 显示压缩文件内所包含的文件 |
-p | 与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换 |
-t | 检查压缩文件是否正确 |
-u | 与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其它文件解压缩到目录中 |
-v | 执行是时显示详细的信息 |
-z | 仅显示压缩文件的备注文字 |
-a | 对文本文件进行必要的字符转换 |
-b | 不要对文本文件进行字符转换 |
-C | 压缩文件中的文件名称区分大小写 |
-j | 不处理压缩文件中原有的目录路径 |
-L | 将压缩文件中的全部文件名改为小写 |
-M | 将输出结果送到more程序处理 |
-n | 解压缩时不要覆盖原有的文件 |
-o | 不必先询问用户,unzip执行后覆盖原有文件 |
-P | 使用zip的密码选项 |
-q | 执行时不显示任何信息 |
-s | 将文件名中的空白字符转换为底线字符 |
-V | 保留VMS的文件版本信息 |
-X | 解压缩时同时回存文件原来的UID/GID |
yum
yum常用命令
- yum install : 安装软件包
- yum update : 升级软件包
- yum remove : 删除软件包
- yum search : 查询软件包
- yum list: 列出已安装的软件包
- yum clean all: 清除yum缓存
yum示例
- yum list mysql*
用来列出所有以 mysql 开头的 RPM 包。其中,* 表示匹配任意字符。这个命令可以帮助你查看系统中是否已经安装了 mysql 相关的软件包,以及可以安装哪些版本的 mysql 软件包。
- yum list updates
用于列出所有可更新的软件清单。 如果您想要更新所有软件,可以使用yum update命令。 如果您只想更新指定的软件,可以使用yum update <package_name>命令
- yum list
用于列出所有已安装的软件包
- yum search
用于在Linux系统中搜索软件包的命令。它可以根据关键字、名称、版本号等条件搜索软件包,并且可以列出所有可安装的软件包。例如,要搜索名为“nginx”的软件包,可以使用以下命令:yum search nginx
- yum list installed
用于列出已安装的软件包。这个命令可以帮助你查看系统中已经安装的软件及其版本信息。
- yum list extras
所有已安装但不在 Yum Repository 内的软件包
- yum info updates
提供有关已安装软件包的更新信息
- yum info extras
所有已安装但不在 Yum Repository 内的软件包信息
查看当前路径
[root@localhost src]# pwd
查看进程
[root@localhost sbin]# ps -ef | grep nginx
已经启动
查看进程的路径
pwdx 13603
查看端口占用
lsof -i:port
# 查看占用9091的进程
[root@ecs-36a0-0802142 ~]# lsof -i:9091
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 21628 root 43u IPv6 273805942 0t0 TCP *:xmltec-xmlmail (LISTEN)
# 杀进程
[root@ecs-36a0-0802142 ~]# kill -9 21628
netstat -tunlp | grep port
[root@ecs-36a0-0802142 ~]# netstat -tunlp | grep 9091
tcp6 0 0 :::9091 :::* LISTEN 21628/java
netstat参数:
-t (tcp) 仅显示tcp相关选项
-u (udp) 仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化为数字
-l 仅列出在Listen(监听)的服务状态
-p 显示建立相关链接的程序名
防火墙
1:查看防火状态
systemctl status firewalld
service iptables status
2:暂时关闭防火墙
systemctl stop firewalld
service iptables stop
3:永久关闭防火墙
systemctl disable firewalld
chkconfig iptables off
4:重启防火墙
systemctl enable firewalld
service iptables restart
5:永久关闭后重启
//暂时还没有试过
chkconfig iptables on
6.开启防火墙
service iptables start
systemctl start firewalld
firewall-cmd 命令
# 查看防火墙状态
systemctl status firewalld
# 打开防火墙
systemctl start firewalld
# 查看防火墙的端口
firewall-cmd –list-ports
# 防火墙开放端口
firewall-cmd –zone=public –add-port=8080/tcp –permanent
firewall-cmd –zone=public –remove-port=3306/tcp –permanent
firewall-cmd –add-service=ftp –permanent
# 重启防火墙
firewall-cmd –reload
# 查看指定端口是否开放
firewall-cmd --query-port=8001/tcp
# yes,表示开启;no表示未开启。
查找文件
which 查看可执行文件的位置
whereis 查看文件的位置
locate 配 合数据库查看文件位置
find 实际搜寻硬盘查询文件名称
find
查找文件或文件夹名为project的
find / -name "project"
查找文件夹
搜索名为nginx的文件夹
locate --basename 'nginx'
whereis (文件的位置 )
语法
whereis -b 文件或者目录名称 : 只找二进制文件
whereis -m 文件或者目录名称 : 只找在说明文件manual路径下的文件
whereis -s 文件或者目录名称 : 只找source源文件
whereis -s 文件或者目录名称 : 没有说明文档的文件
which (可执行文件位置)
语法:
[root@redhat ~]# which 可执行文件名称
例如:
[root@redhat ~]# which passwd
/usr/bin/passwd
which是通过 PATH环境变量到该路径内查找可执行文件,所以基本的功能是寻找可执行文件
查看ip和端口通不通
telnet 127.0.0.1 8001
查看改ip的8001端口是否通的,如果通的就是黑框,不通就报错
linux编译运行.java文件
java文件不能有package,否则报错 Could not find or load main class
System.getProperty("java.io.tmpdir");
要先编译java
文件,得到class
文件,才能运行
javac
编译java文件
java
运行
报错
Failed to download metadata for repo ‘appstream‘: Cannot prepare internal
错误信息:
解决:
- 备份目录
cd /etc/yum.repos.d
cp -r yum.repos.d yum.repos.d_back
- 进入目录
cd /etc/yum.repos.d
- 删除
rm -rf *
,这个命令有点危险,看清目录,删除的是当前目录的内容! - 下载
wget -O /etc/yum.repos.d/CentOS-Linux-BaseOS.repo http://mirrors.aliyun.com/repo/Centos-8.repo
- 换成stream的路径
sed -i 's/releasever/releasever-stream/g' /etc/yum.repos.d/CentOS-Linux-BaseOS.repo
yum makecache
成功:
来源https://blog.csdn.net/jinjiashui/article/details/123688652
wget
wget 命令是 Linux 系统用于从Web下载文件的命令行工具,支持 HTTP、HTTPS及FTP协议下载文件,而且wget还提供了很多选项,例如下载多个文件、后台下载,使用代理等等
语法
wget [参数] [地址]
wget [options] [url]
示例
[root@localhost nacos]# wget https://github.com/alibaba/nacos/releases/download/1.4.1/nacos-server-1.4.1.tar.gz
常用参数
参数,不带参数就是默认下载到当前位置
-O
:可选参数,可以指定文件下载的路径和名称,例如
# 将文件下载到路径:/usr/local,以nacos-1.4.1.tar.gz的名称保存
wget -O /usr/local/nacos-1.4.1.tar.gz https://github.com/alibaba/nacos/releases/download/1.4.1/nacos-server-1.4.1.tar.gz
-P
:可选参数,将文件下载到指定路径
# 将文件下载到路径:/usr/local
wget -P /usr/local https://github.com/alibaba/nacos/releases/download/1.4.1/nacos-server-1.4.1.tar.gz
-C
:可选参数,断点续传,如果文件太大,还没有下载完成就中断了,使用-C
继续下载
# 断点续传
wget -C /usr/local https://github.com/alibaba/nacos/releases/download/1.4.1/nacos-server-1.4.1.tar.gz
-B
:可选参数:后台下载,查看下载情况,可以使用tail -f wget-log
,wget-log
在下载的目录
# 后台下载
wget -B /usr/local https://github.com/alibaba/nacos/releases/download/1.4.1/nacos-server-1.4.1.tar.gz
-i
:可选参数,下载多个文件,指定一个txt,txt中写的是多个下载地址
# 多文件下载
wget -i downlist.txt
--limit-rate
:可选参数,限制下载速度,默认是全速下载,如果文件太大,占用宽带较多,想不影响其它任务,可以限制它的速度
# 限速下载
wget --limit-rate=1m https://github.com/alibaba/nacos/releases/download/1.4.1/nacos-server-1.4.1.tar.gz
-U
:可选参数,设定模拟下载,如果服务器组织wget
方式下载,可以模拟浏览器下载
# 模拟谷歌浏览器下载
wget -U 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.43 Safari/537.36' https://github.com/alibaba/nacos/releases/download/1.4.1/nacos-server-1.4.1.tar.gz
--tries
,可选参数,重试次数,wget
下载资源,如果网络或资源不稳定,会重试20次,也可以自己指定
# 设置重试次数40次
wget --tries=40 https://github.com/alibaba/nacos/releases/download/1.4.1/nacos-server-1.4.1.tar.gz
下载验证
:如果下载的资源需要验证,例如ftp,可以指定用户名--ftp-user
和密码--ftp-password
# 指定用户名和密码下载
wget --ftp-user=<zhangsan> --ftp-password=<a12345a> https://github.com/alibaba/nacos/releases/download/1.4.1/nacos-server-1.4.1.tar.gz
文件或文件夹操作
删除文件夹
rm -rf:没有确认选项,直接删除
rm -r:需要确认后删除
[root@ecs-36a0-0802142 webapps]# rm -r file1.txt
rm: remove regular file ‘file1.txt’? y
删除当前位置的文件夹,包括它的内容
[root@localhost src]# rm -rf ./nginx-1.12.2
删除指定路径文件夹
rm -rf /var/log/httpd/access
删除乱码文件
如图,如果是这种乱码文件,没办法使用rm -rf根据文件名删除,使用ls -i
,获取文件节点号,然后用find -inum 节点号 -delete
删除
前面这个数字就是节点号。
tree
树图形式展示目录结构
mv
mv
:主要用于文件或目录的移动或改名
语法
mv [可选项] 源文件或目录 目标文件或目录
重命名
# 不加任何参数,
# 如果目标文件或目录不存在,就是重命名,
# 如果存在,就是移动
[root@localhost nacos]# ls
emp emp1 nacos nacos-server-1.4.1.tar.gz
# emp命名为emp2
[root@localhost nacos]# mv emp emp2
[root@localhost nacos]# ls
emp1 emp2 nacos nacos-server-1.4.1.tar.gz
-i
:如果目标文件或目录存在时,提示是否覆盖目标文件或目录。
默认就是-i
# 将文件夹emp移动到emp1中,如果emp1中有emp了,提示是否覆盖
[root@localhost nacos]# mv emp emp1
mv:是否覆盖'emp1/emp'? y
-f
:无论目标文件或目录是否存在,直接覆盖目标文件或目录,不提示。
# emp移动到emp1中,不管存不存在,直接覆盖
[root@localhost nacos]# mv -f emp emp1
-b
: 当目标文件或目录存在时,在执行覆盖前,会为其创建一个备份。
# emp移动到emp1中,在emp已经存在了,备份了一个emp~
[root@localhost nacos]# mv -b emp emp1
mv:是否覆盖'emp1/emp'? y
[root@localhost nacos]# ls emp1
emp emp~
-n
: 不要覆盖任何已存在的文件或目录。
# 可以看到,没有移动,emp还在
[root@localhost nacos]# mkdir emp
[root@localhost nacos]# mv -n emp emp1
[root@localhost nacos]# ls
emp emp1 nacos nacos-server-1.4.1.tar.gz
cp
cp
:命令用于复制目录和文件
语法
cp [可选项] 原目录/文件 目标目录/文件
-a
:复制并重命名
[root@localhost nacos]# cp -a emp1 emp2
-r:
:指定位置下的文件复制到另一个位置
# emp2下面的文件复制到emp1中,如果emp1不存在就创建,如果已经存在了,并且内容重复,不会提示是否覆盖,直接覆盖
[root@localhost nacos]# cp -r emp2/ emp1
上传文件下载文件
rz上传
rz命令,如果没有安装则执行下方命令进行安装
yum -y install lrzsz
,如果安装好的,会直接弹出窗口,选择要上传的文件就可以上传到当前目录
sz下载
sz+文件名,然后选择保存的位置
sz servlet-api.jar
操作命令历史记录
history
查所有
直接输入history,就是执行的命令记录,
查指定条数
history 数字
,查最近的几条命令
再次执行某条命令
直接!
+行号
清除记录
history -c
将目前所有的历史命令记录全部清除。
linux各目录
Linux 目录 | Windows 目录 | 说明 |
---|---|---|
/bin | C:\Windows\System32 | 包含系统启动时需要的命令 |
/boot | C:\Windows | 包含操作系统的启动文件 |
/dev | C:\Windows\System32\Drivers | 包含系统中所有设备的文件 |
/etc | C:\Windows\System32\Config | 包含系统配置文件 |
/home | C:\Users | 包含用户的主目录 |
/lib | C:\Windows\System32\DLLs | 包含系统运行时需要的库文件 |
/media | C:\Users<username>\Documents | 包含可移动设备,例如 U 盘、移动硬盘等 |
/mnt | C:\Windows\Temp | 临时挂载目录,可以将其他文件系统挂载到这里 |
/opt | C:\Program Files | 可选软件的目录,可以将第三方软件安装到这里 |
/proc | C:\Windows\System32\WindowsPowerShell\v1.0\SystemRoot | 虚拟文件系统,包含了系统运行时的信息 |
/root | C:\Windows\System32\WindowsPowerShell\v1.0\SystemRoot | 超级用户的主目录 |
/sbin | C:\Windows\System32\WindowsPowerShell\v1.0\SystemRoot | 系统管理员使用的命令 |
/srv | C:\Windows\System32\WindowsPowerShell\v1.0\SystemRoot | 系统服务的数据 |
/tmp | C:\Windows\Temp | 临时文件目录 |
/usr | C:\Program Files | 系统中所有用户可用的程序和文件 |
/var | C:\Windows\System32\WindowsPowerShell\v1.0\SystemRoot | 系统中所有可变的数据 |