Centos7常用命令、操作、快捷键

常用快捷键

命令描述
tab自动补全

常用命令

命令描述
netstat -anp | grep 2181查看zookeeper的2181端口是否在用,sudo yum install net-tools安装
kill -9 pid杀掉进程
ps pid查看进程信息
find / -name filename在/目录查找文件
find / -name dirname -path d查找目录
> /var/log/yum.log清空文件内容
cat 日志名称 | grep 关键字 --color=auto查看日志

ps au | grep java: 只展示当前终端机器的所有用户的进程信息。
ps ux | grep java: 比如展示所有终端机器的root用户的进程信息。
故常用:ps aux|grep java

线上常用命令

  • man ls: 帮助命令
  • grep [-A|-B num] PATTERN FILE-----------a为after,b为before,即显示匹配行的前或后多少行,-num表示前后都显示;
  • cat filename | grep -A|-B 1 pattern-------效果貌似同上面
  • cat file | head -size*page| tail -size ------不断增加page,相当于分页查看

查看日志

命令描述
ls -lh以合适的单位显示文件夹里 文件列表
tail -100f filename.log查看日志文件的最后100行
cat filename.log | grep ‘关键字’按关键字搜索文本
grep -A 10 ‘keyword’ filename.log查看匹配keyword的行、及其后面10行。-B表示其前面10行
cat java.out | tail -n +x | head -n +y先去掉前面x-1条日志,再只取前面y条机制,即x开始的y条日志
命令描述
cat java.out | head -n x/+x查看前面x条日志,相当于+10
cat java.out | head -n -x查看除了最后x条以外的所有日志
cat java.out | tail -n x/-x查看最后的x条日志,相当于-10
cat java.out | tail -n +x查看除了前面x-1条以外的所有日志
  • 对于head/tail -n x。对于x > 0且不带符号, 表示head/tail开始至第x条记录,x等价于+x/-x;相对应的-x/+x时表示,不要最后x条/不要最开始的x条。
  • 即head永远优先前面的日志;tail优先后面的日志;
  • head只用x,tail只用-x(默认-可以去掉)比较好理解:

cat java.out | head -n x | tail -n y|,即先取前面x记录,再取x条中后面y条记录,即第(x - y + 1) 至 x条的记录 ;

ps -ef | grep xxx

[root@localhost ~]# ps -ef | grep sentinel
root       8973   8856  0 21:12 pts/2    00:00:00 grep --color=auto sentinel
UIDPIDPPIDCSTIMETTYTIMECMD
所有者PID上级IDCPU百分比系统启动时间登入的终端位置使用掉的CPU下达的指令
root89738856021:12pts/200:00:00grep --color=auto sentinel

其他归类命令

文件命令

命令描述
rm -f 文件忽略不存在文件,强制删除,无提示
rm -rf 目录递归删除目录及下面文件
cp -b 旧文件 新文件复制文件并重命名
vi 文件名-------修改文件
i:进入文件时,"i"可进入编辑状态
esc + :q!-------不保存强制退出
esc + :wq保存强制退出
touch filename创建空白文件
mkdir -p 目录-p可以创建多级目录

系统命令

命令描述
ip addr可以查看ip信息(centos 7)
systemctl stop/start/status/ firewalld关闭/开始/状态 防火墙
firewall-cmd —state查看火墙状态,比“systemctl status firewalld”更加易看;
systemctl enable/disable firewalld开启/关闭防火墙开机启动
reboot重启
chown -R root /var/ftp修改所有者
chmod -R 666 /var/filename.txt修改权限
cat /etc/redhat-release查看系统版本,比如:Red Hat Enterprise Linux Server release 7.4 (Maipo)
userdel username删除用户(貌似也会删除对应组。。。)
useradd -m username创建用户名和组名都为username的用户和组
free -m查看内存
lscpu可以查看cpu信息
cut -d : -f 1 /etc/passwd查看系统有哪些用户

软件安装相关命令

查看是否安装

来源命令描述
rpmrpm -qa | grep 软件或者包的名字查找某软件包是否安装
yumyum list installed | 软件或者包的名字例如:yum list installed
源码包root用户安装通常在/sbin:/usr/bin目录下
常用软件安装
命令描述
--
yum install zip unzip安装zip、unzip应用
yum provides ifconfig、yum install net-tools安装后可以使用ifconfig,可以查看ip等
yum install mlocate、updatedblocate文件查找命令

解压缩

命令描述
yum install zip unzip安装zip、unzip应用
unzip Xxx.zip -d 解压到的目录解压zip文件
tar -zxvf 文件名解压tar.gz

tar参数

参数意义
-z通过gzip方式压缩或解压,最后以.tar.gz 为后缀
-x解压,-C + 解压目录
-v黑框框输出解压或压缩的过程
-f后面+解压缩的文件名
-c新建压缩文档
cxt(查看)(末尾加文件)u(更新压缩包中文件)这几个参数只能有一个参数

修改环境变量

  • vim /etc/profile
  • 输入"i"进入编辑
  • 文件末尾加入,下面是jdk和ignite的示例
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.201.b09-2.el7_6.x86_64
export IGNITE_HOME=/usr/local/apache-ignite-fabric-2.6.0-bin

export CALSSPATH=$JAVA_HOME/lib/*.*
export PATH=$PATH:$JAVA_HOME/bin:$IGNITE_HOME
  • source /etc/profile:使参数生效;
  • 验证,如下
[root@localhost ~]# echo $IGNITE_HOME
/usr/local/apache-ignite-fabric-2.6.0-bin

防火墙开放端口策略

下面以数据库的3306为例

// 添加3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
// 删除3306端口
firewall-cmd --zone=public --remove-port=3306/tcp --permanent
// 查看端口
firewall-cmd --list-ports
// 生效
firewall-cmd --reload

临时生效

// 查看3306是否开放
iptables -L -n|grep 3306;
// 临时生效
iptables -I INPUT -p tcp -m state –state NEW -m tcp –dport 3306 -j ACCEPT;

jar

// 启动jar
nohup java -jar image-process.jar &
// 关闭启动的jar
ps -ef | grep 'java -jar' 
kill -8 pid

查看服务

systemctl list-unit --type | grep mysqld:查看服务

  • list-units:运行中单元
  • list-unit-files:可用单元
  • –failed:列出失败单元

mysql用到相关命令

  • systemctl status/start firewalld:查看/启动防火墙
  • firewall-cmd --list-ports:查看防火墙放开的端口
  • systemctl list-unit-files | grep enabled:查看启用的服务。注意某服务启动,但可能stop了!
  • systemctl list-unit-files --type=service | grep mysql:列出所有可用单元,再grep筛选
mysqld.service                                enabled 
mysqld@.service                               disabled
  • 查看mysql是否安装
[root@VM_5_17_centos local]# rpm -qa|grep mysql
mysql-community-libs-5.7.27-1.el7.x86_64
mysql-community-common-5.7.27-1.el7.x86_64
mysql-community-client-5.7.27-1.el7.x86_64
mysql-community-server-5.7.27-1.el7.x86_64
  • 查看安装位置,貌似有多个位置。貌似默认是/usr/lib64/mysql
[root@VM_5_17_centos local]# whereis mysql
mysql: /usr/bin/mysql /usr/lib64/mysql /usr/share/mysql /usr/share/man/man1/mysql.1.gz

[root@iZuf6agiqhn4s48doletzuZ bin]# whereis mysql
mysql: /usr/bin/mysql /usr/lib64/mysql /usr/share/man/man1/mysql.1.gz

usr/bin/mysql 是指:mysql的运行路径 
/usr/lib64/mysql 是指:mysql的安装路径
  • 查看运行文件位置
[root@iZuf6agiqhn4s48doletzuZ ~]# which mysql
/usr/bin/mysql
  • 启动时读取文件my.cnf,----------------不太明白,大概是/etc/my.cnf,相当于win下my.ini
[root@VM_5_17_centos mysql]# mysql --help | grep 'my.cnf'
                      order of preference, my.cnf, $MYSQL_TCP_PORT,
/etc/my.cnf /etc/mysql/my.cnf /usr/etc/my.cnf ~/.my.cnf 
[root@VM_5_17_centos mysql]# locate my.cnf
/etc/my.cnf
/etc/my.cnf.d
[root@VM_5_17_centos mysql]# 

服务器常用命令

运行jar

// 查看哪些jar在运行
ps -ef | grep '.jar'

// 修改权限\用户
chmod -R 755 xxx.jar
chown -R root:root xxx.jar

// 修改jar
vim xxx.jar   -> enter -> 箭头上下移动找到要修改的文件 -> 编辑后 :wq保存即可

// 运行jar
/usr/local/java/bin/java -Dserver.port=8082 -jar /var/clusters/application/node01/app.jar

// 终止jar包运行:
kill -9 进程号

后台运行:nohup /usr/local/java/bin/java -Dserver.port=8082 -jar /var/clusters/xxx/node01/xxx.jar >xxx.log  &  

post

// 向http://99.10.10.112:10008/xxx.json发起post请求,参数{"id":100}
curl -X POST http://99.10.10.112:10008/xxx.json -H 'Content-Type: application/json' -d '{"id":100}'

磁盘命令

  • df -h: 查看磁盘情况
  • lsof | grep deleted: 删除文件后空间未释放的话,可以用这个命令查看
  • du -sh *: 统计当前文件夹个文件大小
  • find . -size +100M: 查找大文件
  • du -sh: 当前空间总和

平时收集

  • 查看文件的时间:ls -l --time=ctime
  • 修改文件的修改时间:touch -m -d “2020-05-09 12:00:00” logger.log
  • 查看历史操作:history
  • centos7实现一段时间后Shell自动登出非活动用户
> vim /etc/profile

修改
export TMOUT=3000
# readonly TMOUT         # 防止用户更改

shell中
> TMOUT=0      防止超时退出
  • 用户列表文件:/etc/passwd/
  • cp -r 源目录 目标目录
  • find . | xargs grep -ri ‘要在当前目录下查找的内容’
  • find . | xargs grep -ril ‘要在当前目录下查找的内容’ ----------l参数表示只展示文件名
  • grep -nr “mongodb:” [目录,默认当前文件夹] 在当前目录下查找包含”mongodb:"内容
  • 批量删除命令:find . -name ‘xxx’ -exec rm {} ;
  • ps -p pid -o lstart: 可以查看进程的启动时间
  • 删除文件未释放空间:lsof -n /xxx |grep deleted|awk ‘{print $2}’|xargs kill -9

zookeeper

zkServer.sh start-foreground

maven

mvn dependency:tree 展示依赖关系树

  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值