文件目录管理
-
查看当前路径------------------------------------------------------------
pwd
-
进入绝对路径------------------------------------------------------------
cd /home/develop/...
-
进入相对路径------------------------------------------------------------
cd ./conf/...
-
创建、修改、编辑文件-------------------------------------------------
vi abc.txt
-
创建文件夹--------------------------------------- -----------------------
mkdir <-p> /home/develop
-p 表示递归创建 -
删除文件或文件夹-------------------------------------------------------
rm ./abc.txt
强制删除不提示rm -rf
-
列出当前路径下所有文件和文件夹-----------------------------------
ll
-
递归列出当前路径下所有文件和文件夹------------------------------
ls -lR |grep -v ^d |tr -s '\n'
-
拷贝文件------------------------------------------------------------------
cp /home/develop/a.txt ./
-
拷贝文件夹包括文件夹下所有文件------------------------------------
cp -r /home/develop /home/spring
-
移动文件-------------------------------------------------------------------
mv ./abc.txt ../def.txt
--移动同时重命名 -
跨服务器拷贝-------------------------------------------------------------
scp username@fromhost:/dir/file username@tohost:/dir/
-
zip文件压缩与解压缩----------------------------------------------------
zip -r mydata.zip mydata
----- unzip data.zip -
tar.gz文件-----------------------------------------------------------------
tar -zxvf zookeeper.tar.gz <-C /home/zookeeper>
-c + 路径表示解压到指定文件夹下 -
给文件或文件夹赋权限--------------------------------------------------
chmod <-R> /home/develop/hadoop.conf
-R文件夹递归 -
修改文件或文件夹所有用户--------------------------------------------
chown <-R> user<:usergroup> /home/dev/
-
echo 命令------------------------------------------------------------------
echo 1 > /home/develop/myid
将1存入myid中 > 修改 >>追加 -
查找文件路径-------------------------------------------------------------
find ./ -name hadoop*
查找当前文件夹下所有名称包含hadoop的文件、文件夹find / -size +100M
查看大于100M的文件
辅助操作命令
vi命令
新增或修改abc.txt -------------`vi abc.txt` 进入vi编辑模式后按~i~键,然后输入
文件中#表示注释
vi编辑模式查找 ----------------`/pattern` 向下搜索 n继续搜索下一个 `?pattern` 向上搜索 #继续搜索上一个
跳转到最后一行---------------- `:$`
跳转到指定行-------------------`:n(n代表行数)`
cat命令
查看文件内容
使用cat+more来一页页的访问大文件
cat test.txt | more(less) =显示当前行 space或着Ctrl+F下一页
tail命令
tail命令用来查看实时数据变化
tail -f /data/tomcat_jc/catalina.out 默认展示最后十行
tail -30f /data/tomcat_jc/catalina.out 展示最后三十行
grep命令
grep命令查看文本中与给定关键字匹配的数据,grep是行级,会将一行数据查出来
ps -ef | grep java <-n> -n显示行号
grep java ./index.html
cat fms-cloud-system1.log | grep ERROR | wc -l 统计日志中错误个数
- -v 反向匹配 ps -ef | grep java | grep -v grep
- -i 忽略大小些 ps -ef | grep -i connect
- -w 完全匹配 ps -ef | grep -w connect
- -n 显示行号
- -c count统计出现匹配的次数
- -A 匹配行和后多少行(after) ps -ef | grep -A 30 ERROR
- -B 匹配行和前多少行(before) ps -ef | grep -B 30 ERROR
- -C 匹配行和上下行(context) ps -ef | grep -C 30 ERROR
- --color :将匹配到的内容以颜色高亮显示。
awk命令
awk命令可以对文件做匹配,并且能够截取数据
对数据做处理 使用/regex/
双斜杠匹配区分大小写
docker images | awk 'dockerjintao'
docker images | awk '/dockerjintao/{print $1}'
`docker images |awk '/'dockerjintao'/{print $1}'` 等同于
`docker images | grep dockerjintao |awk '{print $1}'`
ls软连接
添加软连接命令 ln -s /home/develop/jdk1.8 /usr/bin/java
删除软连接 使用 rm -rf /usr/bin/java 注意java后面不能加/,否则会删除jdk1.8下面数据
find命令
find . -name "*.log" -ls 在当前目录查找以.log 结尾的文件, 并显示详细信息。
find /root/ -perm 777 查找/root/目录下权限为 777 的文件
find . -size +100M 查找当前目录大于 100M 的文件
查找最大的十个文件 https://www.cccitu.com/3789.html
find / -type f -print0 | xargs -0 du -h | sort -rh | head -n 10
find /data -size +100M | grep log | grep -v jenkins.log | xargs rm -rf 删除指定文件夹下大于100M的文件
tar命令
tar -czvf logs.tar.gz ./logs 压缩
tar -zxvf logs.tar.gz -C ./logs 解压缩
chmod命令
Shell脚本第一行#!/bin/sh
chmod +x server_restart_console.sh +增加 小写x执行权限
chmod 777 server_restart_console.sh 赋予最大权限
chmod -R 777 /home/ 递归给/home下所有文件、文件夹最大权限
若用chmod 4755 filename可使此程序具有root的权限
chown命令
chown -R user:grop /home/user 将/home/user目录的所有权分配给user
xargs命令
参数传递
find ./ -name '*.properties' | xargs rm –rf 将find查询出来的文件通过管道符发送给rm -rf
ps -ef | grep java | awk '{print $2}' | xargs kill -9 将java相关的进程发送给kill -9
网络管理
- 查看当前服务器ip------------------------------------------------------------
ifconfig
- 查看当前服务器所有活跃端口--------------------------------------------
netstat -natp
- 查看当前服务器所有进程信息--------------------------------------------
ps -ef
- 查看与java相关的进程信息------------------------------------------------
ps -ef | grep java
- 查看当前服务器所有进程信息包括CPU和内存占用-----------------
ps -aux
虚拟机静态IP配置
使用桥接模式复制物理机状态,然后修改成固定ip
vi /etc/sysconfig/network-scripts/ifcfg-ens33
ifup ens33
service network restart
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=34cd731d-d556-469f-963c-a21d340ead3d
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.0.128
系统管理
- 查看当前服务器硬盘占用情况--------------------------------------------
df -h
- 查看当前服务器资源占用情况--------------------------------------------
top
- 查看当前服务器内存占用情况--------------------------------------------
free <-g>
- 查看当前服务器运行的定时任务-----------------------------------------
crontab -e
- 删除当前服务器运行的定时任务-----------------------------------------
crontab -r
- 防火墙关闭-------------------------------------------------------------------
systemctl stop firewalld.service
- 禁止防火墙开机自启-------------------------------------------------------
systemctl disable firewalld.service
- 开启防火墙-------------------------------------------------------------------
systemctl start firewalld.service
- 开启防火墙开机自启-------------------------------------------------------
systemctl enable firewalld.service
- 将安装的程序设置为自定义服务----------------------------------------
chkconfig --add redis 必须在/etc/init.d/
中创建文件名为redis的服务脚本 - 删除安装的自定义服务----------------------------------------------------
chkconfig --del redis
- 重新加载自定义服务-------------------------------------------------------
systemctl daemon-reload
- 设置自定义服务开启自启-------------------------------------------------
systemctl enable redis
或者chkconfig redis on
- 查看开机自启项---------------------------------------------------------
systemctl list-unit-files
- 查看系统日志------------------------------------------------------------
vi /var/log/messages
- 查看系统时间------------------------------------------------------------
date
- 查看CPU信息-------------------------------------------------------------
cat /proc/cpuinfo
安装包管理
- secureCRT安装上传文件命令---------------------------------------------
yum -y install lrzsz
上传文件到linuxrz
下载文件到本地sz redis.conf
yum相关
更换yum源
cd /etc/yum.repos.d/
mv CentOS-Base.repo CentOS-Base.repo.backup
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
wget http://mirrors.aliyun.com/repo/Centos-7.repo
yum makecache
-
使用yum安装redis
yum -y install redis
-
使用yum卸载redis
yum remove redis
-
使用yum安装上传下载命令
yum -y install lrzsz
安装node.js 8.x
curl -sL https://rpm.nodesource.com/setup_8.x | bash -
yum install nodejs
用户管理
- 创建用户----------------------------------------------------------------------
useradd hadoop
- 删除用户----------------------------------------------------------------------
userdel hadoop
- 修改用户密码------------------------------------------------------------------
passwd hadoop
- 切换用户----------------------------------------------------------------------
su - hadoop
- 创建组-------------------------------------------------------------------------
groupadd hadoop
- 删除组-------------------------------------------------------------------------
groupdel hadoop
配置JAVA环境变量
-
下载linux版本jdk
https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
-
将jdk上传到linux中
rz
-
解压
tar -zxvf jdk1.8.tar.gz
-
配置环境变量
vi /etc/profile
,在文件eportPATH之前加入下面变量,:wq!
保存退出
export JAVA_HOME=/home/jintao/jdk1.8
export JRE_HOME=/home/jintao/jdk1.8/jre/
export PATH=$JAVA_HOME/bin:$HEXO_HOME/bin:$PATH
-
使环境变量生效
source /etc/profile
-
查看jdk版本
java -version
出现jdk版本则成功
配置tomcat
- 下载tomcat并解压
tar -zxvf apache-tomcat-8.5.27.tar.gz -C /data/tomcat_test
- 如果需要修改tomcat端口
vi /data/tomat_test/conf/server.xml
- 配置jvm启动参数,在OS specific support 下方增加
JAVA_OPTS="-Xms1024m -Xmx1024m -XX:+UseG1GC"
。具体参数根据实际情况调整 - 启动
sh /data/tomcat_test/bin/startup.sh
- 杀死tomcat进程
ps -ef | grep tomcat_test | grep -v grep | awk '{print $2}'
| xargs kill -9
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?