原创Linux基础之常用命令
Posted Thinking in BigData
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了原创Linux基础之常用命令相关的知识,希望对你有一定的参考价值。
1 磁盘、cpu、内存相关
查看全部设备信息
# lspci
查看整体磁盘空间占用情况
# df -h
查看磁盘分区及文件系统
# df -T
查看整体磁盘inode占用情况
# df -i
查看文件详细信息
# ls -l $path
查看文件inode信息
# ls -i $path
# stat $path
查看指定目录磁盘占用情况,按照目录汇总,深度为1
# du -h --max-depth=1 $path
# du -sh $path/*
在指定目录下按照名字查找指定文件
# find $path -name $file_name
在指定目录下查找所有大于100M的文件
$ find $path -size +100M
查看磁盘io
# iostat
查看磁盘读性能
# hdparm -t /dev/sda
查看磁盘统计信息比如通电时间/接口类型等
# smartctl -a /dev/sda
查看cpu信息
# cat /proc/cpuinfo
查看物理CPU个数
# cat /proc/cpuinfo| grep "physical id"
查看每个物理CPU中core的个数(即核数)
# cat /proc/cpuinfo| grep "cpu cores"
查看逻辑CPU的个数
# cat /proc/cpuinfo| grep "processor"
查看内存信息
# cat /proc/meminfo
查看剩余内存
# free -m
2 统计、负载、进程相关
查看整体统计信息,包括进程、虚拟内存、磁盘和 CPU
# vmstat
查看当前负载
# top
然后输入M会按照内存占用排序,输入P会按照CPU占用排序,输入H查看线程,输入c切换查看详细启动命令
查看一个进程中所有线程的资源占用情况
# top -H -p $pid
这里展示的pid转化为16进制后
# echo \'obase=16;$pid\'|bc
再到jstack中搜对应的线程;
查看当前所有的进程
# ps aux
查看进程中所有的线程
# ps -T -p $pid
杀死进程
# kill $pid
强制杀死进程
# kill -9 $pid
3 crontab相关
查看crontab
# crontab -l
编辑crontab
# crontab -e
查看crontab日志
# tail -f /var/log/cron
4 网络端口相关
查看网络信息
# ifconfig
查看ip路由信息
# ip route get 1
查看某个进程绑定的端口或者某个端口被哪个进程绑定
# netstat -tnlp|grep $pid
# netstat -tnlp|grep $port
查看端口占用情况
# lsof -i:$port
查看某个端口的绑定和连接情况
# netstat -nat|grep $port
针对端口抓包
# tcpdump -i eth1 tcp port $port -Xxv
修改静态ip
# vi /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
IPADDR=192.168.1.252
NETMAST=255.255.255.0
GATEWAY=192.168.1.1
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=989f4fa4-d0d5-4592-8891-99a50a1bb4a7
DEVICE=ens33
ONBOOT=yes
# service network restart
5 压缩解压相关
将目录打成tar包
$ tar cvf $tar_name.tar $dir_name
$ tar cvf $tar_name.tar $dir_name --exclude $exclude_file --exclude $exclude_dir
排除指定目录
$ tar cvf $tar_name.tar $dir_name --exclude $dir_name/$exclude_name
解压tar包
$ tar xvf $tar_name.tar
解压tar包至指定目录 -C $target_dir
压缩tar包,得到*.tar.gz
$ gzip $tar_name.tar
解压tar.gz
$ tar xvf $tar_name.tar.gz
将指定目录打成zip包
$ zip -r $zip_name.zip $dir_name
解压zip包
$ unzip $zip_name.zip
解压zip包至指定目录 -d $target_dir
6 软件包相关
查看已安装软件包
# yum list installed
查找软件包
# yum search $name
安装软件包
# yum install $name
下载软件包及所有依赖到指定目录
# yum install --downloadonly --downloaddir=$dir $name
卸载软件包
# yum remove $name
查看某个命令在哪个软件包中
# yum whatprovides $cmd
rpm安装
# rpm -ivh $name.rpm
yum安装rpm包
# yum localinstall $name.rpm
以上两者的区别是yum localinstall会自动安装发现的依赖
rpm查询已安装
# rpm -qa | grep $name
rpm卸载
# rpm -e --nodeps $name
7 shell相关
查看当前shell
# echo $SHELL
查看所有shell
# cat /etc/shells
修改默认shell
# chsh -s /bin/zsh
8 其他
查看当前哪些用户正在登录
# w
切换其他用户执行命令
# su - $user -c \'whoami\'
查找命令在哪
# whereis $cmd
查看命令路径
# which $cmd
查看之前执行的命令
# history
查看系统限制
# ulimit -a
后台执行命令
# nohup $cmd $arg 1>output.log 2>&1 &
设置时区
# timedatectl set-timezone Asia/Shanghai
拷贝
# cp -R /source /target
拷贝显示进度和速度
# rsync -rv --progress /source /target
6 更多
iptables相关:
https://www.cnblogs.com/barneywill/p/10263530.html
用户组相关:
https://www.cnblogs.com/barneywill/p/10303553.html
文本替换相关:
https://www.cnblogs.com/barneywill/p/10115539.html
ssh相关:
https://www.cnblogs.com/barneywill/p/10271679.html
https://www.cnblogs.com/barneywill/p/10331354.html
后台运行相关:
https://www.cnblogs.com/barneywill/p/10266211.html
远程拷贝文件相关:
https://www.cnblogs.com/barneywill/p/10115108.html
查看发行版本相关:
https://www.cnblogs.com/barneywill/p/10251262.html
上传下载相关:
https://www.cnblogs.com/barneywill/p/10265704.html
sudo相关:
https://www.cnblogs.com/barneywill/p/10272455.html
curl相关:
https://www.cnblogs.com/barneywill/p/10279555.html
挂载硬盘相关:
https://www.cnblogs.com/barneywill/p/10365848.html
连通性相关:
以上是关于原创Linux基础之常用命令的主要内容,如果未能解决你的问题,请参考以下文章