快捷键
tab 补全名称ctrl + c 停止当前进程ctrl + r 查看命令历史ctrl + l 清屏,与clear命令作用相同ctrl + a 跳到命令头部ctrl + e 跳到命令尾部alt + f 向右移一个单词alt + b 向左移一个单词ctrl + u 删除光标前的命令串ctrl + k 删除光标后的命令串
alias
alias ll='ls -l' #别名一般可写在 ~/.bashrc 中,用户登录后就会生效
apt
basename
basename [pathname] [suffix]basename [string] [suffix]suffix为后缀,如果suffix被指定了,basename会将pathname或string中的suffix去掉。$ basename /tmp/test/file.txtfile.txt$ basename /tmp/test/file.txt .txtfiledirname /tmp/test/file.txt 获取目录名字/tmp/test
cd
#切换目录 ,如果不带参数则切换到用户主目录 ~cd#切换上一个工作目录cd -
date
echo "现在时间:`date '+%Y-%m-%d %T'`"echo "昨天此时的时间:`date -d last-day '+%Y-%m-%d %T'`"echo "明天此时的时间:`date -d last-day '+%Y-%m-%d %T'`"echo "后天此时的时间:`date -d "+2 day" '+%Y-%m-%d %T'`"date '+%Y-%m-%d %T'date -d yesterday 查看昨天日期date'+%Y-%m-%d %H:%M:%S' #接上日期字符串,显示具体的日期,然后通过+转换为具体的格式date -s "2019-10-11 19:00:00" 修改时间clock -wdate --help 查看使用说明date -d yesterday +%y 以固定格式显示
du
#查看当前目录所有文件大小du -sh /etc-s: 总数-h: 更好的显示,有单位
df
#查看系统中文件的使用情况df -hdf -hT /dev/sda-T :查看文件系统
expect
#!/bin/bashexpect<<-ENDset timeout 600spawn ssh root@192.100.3.87 "hostname -I"expect {"(yes/no)?" { send "yes\r"; exp_continue }"*assword:" { send "root123\r" }}expect eofEND- 支持tab 缩进END 标记,可以是任意的字符
free
free -h 查看内存使用状况
iostat
https://www.cnblogs.com/ftl1012/p/iostat.htmliostat属于sysstat软件包。可以直接安装:yum install sysstat$iostat #查看磁盘ioLinux 3.10.0-123.el7.x86_64 (yum) 07/30/2020 _x86_64_ (1 CPU)avg-cpu: %user %nice %system %iowait %steal %idle0.51 0.00 1.07 1.58 0.00 96.85Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtnscd0 0.02 0.08 0.00 48 0sda 13.93 252.06 65.42 146431 38002dm-0 0.38 1.52 0.00 884 0dm-1 10.76 213.24 61.83 123877 35921# 【每隔2秒刷新显示,且显示3次】iostat 2 3
hostname
hostname test 相当于 echo test > /proc/sys/kernel/hostname 临时性更改永久性更改:vim /etc/hostname。修改完之后需要reboot重启服务器永久生效。
history
history 查看历史命令history 10 查看最近十条历史命令
lsblk
lsblk 查看硬盘结构
lsof
查看打开文件数
参考
lsof -i:6379 #指定端口 查看端口是否被占用lsof -p pid|wc -l # 某个进程打开文件数lsof
kill
localectl
#系统语系localectl#当前可用的语系locale#设置语系localectl set-locale LANG=zh_CN.UTF-8
man
man psman cat查看帮助文档内部命令:help + 命令(help cd)外部命令:man + 命令(man ls)
ps
ps -ef 查看系统中当前瞬间的进程信息快照ps aux | sort -k4nr |head -n 10 #内存排名前十ps -ef | grep myshell.sh 搜索myshell进程的信息#使用ps命令找出占用内存资源最多的20个进程(数量可以任意设置)ps aux | head -1;ps aux |grep -v PID |sort -rn -k +4 | head -20ps --help all 查看使用方法-A,-e:所有进程-f:全格式,包含命令行-H:显示树状结构,表示程序间的相互关系。a:包括其他用户在内的所有ttyx:显示所有程序,不以终端机来区分。u:以用户为主的格式来显示程序状况。f:用ASCII字符显示树状结构,表达程序间的相互关系e:列出程序时,显示每个程序所使用的环境变量。c:列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。#查看某一个程序线程的cpu的使用率ps H -eo pid,tid,%cpu|grep 32654
read
#从标准输入读取值read#将标准输入值 存到var变量中,不写,默认变量位REPLYread var#读入多个变量read a b#提示,将值放到var变量中read -p "Enter name:" var#把单词清单读入arrayname的数组里。输入信息用空格隔开数组的每个元素。read -a arrayname#允许输入包含反斜杠read -r line#指定读取等待时间为3秒。read -t 3#从输入中读取两个字符并存入变量var,不需要按回车读取read -n 2 var#用定界符“:”结束输入行。read -d ":" var#输入值,不显示在控制台read -p "password:" -s pwd
rpm
#查看是否安装了yum工具rpm -qa|grep yum# -ivh 安装 -e 卸载
stat
stat test.txt 查看文件状态 如修改时间 访问时间
shutdown
shutdown 系统关机-r 关机后立即重启-h 关机后不重新启动halt 关机后关闭电源reboot 重新启动
systemctl
实用systemctl -help可以看到该命令可以分成以下部分:part 1:查询或发送控制命令给systemd服务part 2:管理单元服务的命令part 3:服务文件的相关命令part 4:任务、环境、快照相关命令part 5:systemd服务的配置重载part 6:系统开机关机相关的命令1. 列出所有可用单元# systemctl list-unit-files2. 列出所有运行中单元# systemctl list-units3. 列出所有失败单元# systemctl -failed4. 检查某个单元(如 crond.service)是否启用# systemctl is-enabledcrond.service5. 列出所有服务# systemctl list-unit-files -type=service6. Linux中如何启动、重启、停止、重载服务以及检查服务(如 httpd.service)状态# systemctl start httpd.service# systemctl restart httpd.service# systemctl stop httpd.service# systemctl reload httpd.service# systemctl status httpd.service注意:当我们使用systemctl的start,restart,stop和reload命令时,终端不会输出任何内容,只有status命令可以打印输出。7. 如何激活服务并在开机时启用或禁用服务(即系统启动时自动启动mysql.service服务)# systemctl is-active mysql.service# systemctl enable mysql.service# systemctl disable mysql.service8. 如何屏蔽(让它不能启动)或显示服务(如ntpdate.service)# systemctl mask ntpdate.serviceln -s ‘/dev/null”/etc/systemd/system/ntpdate.service’# systemctl unmask ntpdate.servicerm ‘/etc/systemd/system/ntpdate.service’9. 使用systemctl命令杀死服务# systemctl killcrond10. 列出所有系统挂载点# systemctl list-unit-files –type=mount11. 挂载、卸载、重新挂载、重载系统挂载点并检查系统中挂载点状态# systemctl start tmp.mount# systemctl stop tmp.mount# systemctl restart tmp.mount# systemctl reload tmp.mount# systemctl status tmp.mount12. 在启动时激活、启用或禁用挂载点(系统启动时自动挂载)# systemctl is-active tmp.mount# systemctl enable tmp.mount# systemctl disable tmp.mount13. 在Linux中屏蔽(让它不能启用)或可见挂载点# systemctl mask tmp.mountln -s ‘/dev/null”/etc/systemd/system/tmp.mount’# systemctl unmask tmp.mountrm ‘/etc/systemd/system/tmp.mount’14. 列出所有可用系统套接口# systemctl list-unit-files –type=socket15. 检查某个服务的所有配置细节# systemctl showmysql16. 获取某个服务(httpd)的依赖性列表# systemctl list-dependencies httpd.service17. 启动救援模式# systemctl rescue18. 进入紧急模式# systemctl emergency19. 列出当前使用的运行等级# systemctl get-default20. 启动运行等级5,即图形模式# systemctl isolate runlevel5.target或# systemctl isolate graphical.target21. 启动运行等级3,即多用户模式(命令行)# systemctl isolate runlevel3.target或# systemctl isolate multiuser.target22. 设置多用户模式或图形模式为默认运行等级# systemctl set-default runlevel3.target# systemctl set-default runlevel5.target23. 重启、停止、挂起、休眠系统或使系统进入混合睡眠# systemctl reboot# systemctl halt# systemctl suspend# systemctl hibernate# systemctl hybrid-sleep对于不知运行等级为何物的人,说明如下。Runlevel 0 : 关闭系统Runlevel 1 : 救援,维护模式Runlevel 3 : 多用户,无图形系统Runlevel 4 : 多用户,无图形系统Runlevel 5 : 多用户,图形化系统Runlevel 6 : 关闭并重启机器
type
type service cd systemctl 查看这三个命令所在的目录,-p :输出命令的路径
top
top 查看实时刷新的系统进程信息top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器内容解释:PID:进程的IDUSER:进程所有者PR:进程的优先级别,越小越优先被执行NInice:值VIRT:进程占用的虚拟内存RES:进程占用的物理内存SHR:进程使用的共享内存S:进程的状态。S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值为负数%CPU:进程占用CPU的使用率%MEM:进程使用的物理内存和总内存的百分比TIME+:该进程启动后占用的总的CPU时间,即占用CPU使用时间的累加值。COMMAND:进程启动命令名称P:按%CPU使用率排行T:按TIME+排行M:按%MEM排行top之后按相应按键
timedatectl
#查看当前时区与时间等信息timedatectl#列出时区timedatectl list-timezones#设置时区timedatectl set-timezone Asia/Shanghai#设置时间timedatectl set-time "2019-09-01 23:00"
uname
uname 系统信息uname-a 所有信息-s print the kernel name-r 打印内核版本
vmstat
vmstat 查看整个机器的 CPU,内存,IO的使用情况vmstat 2 5 每2秒采集一次 总共采集五次输出参数解释:(1)进程procs:r:在运行队列中等待的进程数 。b:在等待io的进程数 。(2)Linux 内存监控内存memoy:swpd:现时可用的交换内存(单位KB)。free:空闲的内存(单位KB)。buff: 缓冲去中的内存数(单位:KB)。cache:被用来做为高速缓存的内存数(单位:KB)。(3) Linux 内存监控swap交换页面si: 从磁盘交换到内存的交换页数量,单位:KB/秒。so: 从内存交换到磁盘的交换页数量,单位:KB/秒。(4)Linux 内存监控 io块设备:bi: 发送到块设备的块数,单位:块/秒。bo: 从块设备接收到的块数,单位:块/秒。(5)Linux 内存监控system系统:in: 每秒的中断数,包括时钟中断。cs: 每秒的环境(上下文)转换次数。(6)Linux 内存监控cpu中央处理器:cs:用户进程使用的时间 。以百分比表示。sy:系统进程使用的时间。 以百分比表示。id:中央处理器的空闲时间 。以百分比表示。
wall
通知所有用户wall `date`wall 马上关机
watch
#默认1s执行一次lvs命令watch lvswatch -n 2 lvswatch -n2 lvs-n :指定秒数
which
which servicewhich pwd#which命令的原理是在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。#也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令,可以通过echo命令显示PATH变量的值,即是which命令查找的路径范围。
whereis
whereis servicewhereis pwd-b:显示可执行文件
who
查看所有登录的用户[root@lms-test ~]# whoroot pts/0 2021-01-21 15:49 (192.100.5.115)root pts/1 2021-01-21 17:32 (192.100.5.115)#我是谁who am iwhoami
yum
yum remove docker 卸载yum install docker 安装yum info docker 查看docker包的仓库信息yum search docker 搜索yum repolist 列出yum源yum upgradeyum list [docker] 列出一个或一组软件包yum list installed [docker]列出一个或一组软件包(已安装) rpm -qa |grep openstack
