本篇文档收藏了常用的linux命令,用来应付在linux的大多数操作指令
神气的猫
查看曾经使用过的命令
# XXX表示曾经使用过的命令中的关键字
history | grep XXX
# 该组合键搜索快捷按键类似于window文本查找
ctrl +r
新建用户
# 新建一个用户testuser
useradd testuser
# 为testuser设置密码
passwd testuser
# 将文件夹主指定给特定用户
chown -R imguser /opt
#文件权限划定
755 rwxr-xr-x
777 rwxrwxrwx
700 rwx------
系统信息查看
系统信息查看
# 系统版本
# CentOS release 6.10 (Final)
cat /etc/redhat-release
#### 查看CPU信息(型号)
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
#### 查看硬件指令架构
#Linux ecs-52bc 4.18.0-147.5.1.el8_1.aarch64 #1 SMP Tue Feb 4 23:44:08 UTC 2020 aarch64 aarch64 aarch64 GNU/Linux
#Linux sunthang-1 4.18.0-147.8.1.el8_1.x86_64 #1 SMP Thu Apr 9 13:49:54 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
uname -a
系统进程查看
# grep -v grep-v 显示不包含匹配文本的所有行,在这里为筛选出所有不包含grep名称的进程,对上一步的进程再做一次筛选(因为ps -ef列出了所有的命令,包括命令行)
# awk的作用是输出某一列,{print $2}就是输出第二列,如上即是pid这一列
# “xargs kill -9” 中的 xargs 命令是用来把前面命令的输出结果(PID)作为”kill -9″命令的参数,并执行该命令
ps aux|grep chrome|grep -v grep | awk '{print $2}'|xargs kill -9
磁盘空间
# 显示磁盘inode信息
df -i
# 显示磁盘容量信息
df -h
内存使用
buff/cache的释放
sudo sh -c 'echo 3 > /proc/sys/vm/drop_caches'
工具能力
tar.giz的解压与压缩
#tar.gz解压
tar -xzvf kibana-7.2.0-linux-x86_64.tar.gz
# 将mysql_backup目录压缩
tar -zcvf 2018-10-13.tar.gz /mysql_backup
##########分包压缩与解压
#压缩命令主要用到tar打包和split分割,aaa可以是文件也可以是目录, 大小可以是b、k、m这3个单位
tar czf - aaa | split -b 1024m - xxx.tar.gz_
#解压是
cat xxx.tar.gz_* | tar zvxf -
#也可以先把包合起来再解压:
cat xxx.tar.gz_* >xxx.tar.gz
tar zvxf xxx.tar.gz
unzip
- [x] 解压文件到指定的目录
unzip 2001图1.zip -d 2001
- [x] 批量解压当前目录下的zip文件到指定目录
# 解压当前目录下的zip文件到目录20200000下
unzip -d 20200000 './*.zip'
#解压完成会有34 archives were successfully processed.的类似提示
RPM
- [x] 查询是否安装有某个软件
# 查询是否安装有火狐的软件
rpm -qa | grep firefox
rpm -ql 软件包名
- [x] 删除软件包
rpm -e RPM包的名称
时间
# 查看系统当前时间
date
#将系统日期设定成2018年6月8日的命令
date -s 06/08/2018
下载
# 以后台挂载进程的方式下载,进度可通过当前目录下的wget-log文件来查看
wget -b https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.2.0-linux-x86_64.tar.gz
文件查看类
文件列表查看
# 文件按时间排序查看
ls -alrt
当前目录下文件数量统计
ls -l|grep "^-"| wc -l
删除文件量过大时的错误Argument list too long,可使用以下方法删除
ls |xargs rm -r
文件查找
在当前目录搜索文件内容含有某字符串(大小写敏感)的文件
find . -type f | xargs grep '20191300350006213688'
# 当前目录搜索匹配文件名中内容含有某字符串(大小写敏感)的文件信息
find . -type f -name '注册商标基本信息.csv' | xargs grep '29786039'
find . -type f -name '注册商标商品服务信息.csv' | xargs grep '24420802'
通过文件名匹配符查找
#按名称在当前目录下递归查找相应文件
find ./ -name '*esp*'
查看当前目录下的文件总体积
du -sh ./
网络
内网拷贝
scp -r root@172.18.241.11:/A_Install/Anaconda3-4.3.1-Linux-x86_64.sh ./
##scp放入后台的运行方式
##1.输入密码
##2.按Ctrl+z挂起当前进程,然后用jobs命令查看被暂停的进程
$ jobs
[1]+ Stopped scp -r /u01/media/Disk1/ 192.168.1.31:/u01/media/
##3.使用命令bg让挂起的进程继续运行
$ bg %1
# 此种方式不适合tar命令,用于tar可以使用nohup tar -zcvf em.tar.gz ./em &命令
##4.使用disown -h 将这个作业忽略HUP信号:
$ disown -h %1
#此时,关掉终端再次连接进来,通过jobs命令就可以看到正在运行的scp进程
$ jobs
[1]+ Running scp -r Disk1/ 192.168.1.31:/u01/media/ &
# 干掉进程的话,使用kill %jobNumber命令
远程主机登录
# 使用用户信息直接连接
ssh ldz@192.168.0.1
拷贝时的异常
#错误信息--Add correct host key in /root/.ssh/known_hosts to get rid of this message
#解决方案是在客户端执行命令,清除本地缓存的证书(12.29.2.3 :为要登录的服务器ip)
ssh-keygen -R 12.29.2.3
端口查看
##查看某个端口被那个程序所占用
netstat -tnlp|grep 9072
开启端口与关闭防火墙
- [x] 查询对外端口开启的情况
/sbin/iptables -L -n
- [x] 那怎么开启一个端口呢
- 添加
# permanent永久生效,没有此参数重启后失效
firewall-cmd --zone=public --add-port=80/tcp --permanent
- 重新载入
firewall-cmd --reload
收藏收藏
@snowboy : 自己也是经常用