一、shell介绍
shell 可以称为命令解释器,或是对终端程序的统称;它在人与内核之间充当了翻译器,即提供了用户与系统内核进行交互操作的一种接口,用户输入的一些命令,shell就通过这些命令来调用相应的程序服务完成某些工作。
常见的命令解释权有以下几种:在 /etc/shells 文件中可以查看linux中命令解释器
cat /etc/shells
/bin/sh | 红帽系列 |
/bin/bash | 红帽系列 |
/usr/bin/sh | 红帽系列 |
/usr/bin/bash | 红帽系列 |
/bin/tcsh | unix |
/bin/csh | unix |
/usr/bin/tmux |
二、常用命令
(1)必备知识:
在linux命令格式为:
命令名称 [参数] 对象 |
其中参数有以下两种:
长格式 | 完整的选项名称(--) |
短格式 | 单个字母的缩写(-) |
(2)常用命令
echo 命令用于在终端设备上输出字符串或者是变量的值
语法:echo [参数] [字符串/$变量]
常用参数: -n 不换行
-e 支持扩展属性
echo -e "\033[34mOK\033[0m"
date 显示系统时间以及设置系统的时间
语法:date [参数] [指定格式]
常用参数: -s 用来设置系统时间
常用的指定格式: %S ---- 秒(0-59)
%M ---- 分钟(0-59)
%H ---- 小时(0-23)
%d ---- 日(本月的第几天)
%m ---- 月份(0-12)
%b ---- 英文缩写的月份(如:Jan)
%Y ---- 完整的年份(如:2022)
date "+%Y-%m-%d %H:%M:%S" 结果为:2022-07-28 07:01:38
date -s "20220727 23:36:00" 结果为:Wed Jul 27 23:37:00 CST 2022
timedatectl 用于设置系统的时间,英文全称为“time date control”
语法:timedatectl [参数]
常用参数: status ---- 显示状态信息
list-timezones ---- 列出已知时区
set-time ---- 设置系统时间
set-timezone ---- 设置时区
timedatectl status
结果为:Local time: Wed 2022-07-27 23:44:37 CST
Universal time: Wed 2022-07-27 15:44:37 UTC
RTC time: Wed 2022-07-27 23:44:32
Time zone: Asia/Shanghai (CST, +0800)
NTP enabled: no
NTP synchronized: no
RTC in local TZ: no
DST active: n/a
timedatectl set-time 2022-07-28 结果为:Wed Jul 27 00:00:02 CST 2022
timedatectl set-time 23:50 结果为:Wed Jul 27 23:50:02 CST 2022
reboot 系统重启
poweroff 系统关机
wget 用于在命令行中下载资源或者文件,英文全称为“web get”
语法:wget [参数] 网络地址
常用参数: -b ---- 后台下载模式
-p ---- 指定下载目录
-t ---- 最大尝试次数
-c ---- 断点续传
-P(大写) ---- 下载页面所用的资源,包括图片、视频等
-r ---- 递归下载
ps 用于静态查看系统进程,英文全称为“processes”
语法:ps [参数]
常用参数: -a ---- 显示所用进程(包括其他用户的进程)
-u ---- 用户及其他详细信息
-x ---- 显示没有控制终端的进程
常常使用:ps -aux
pstree 用于以树状图的形式展示进程之间的关系,即可以查看父进程
top 用于动态的监控进程活动及系统负载信息
nice 用于调整进程的优先级;有PR和NI两种值,优先级的取值范围-20--19,其中数字越低,优先级越高
语法:nice [参数] 优先级数字 服务名称
参数:-n ---- 指定优先级数字
nice -n -20 bash
pidof 用于查询某个指定服务的PID值(进程号)
语法:pidof [参数] 服务名称
kill 用于终止某个指定的服务进程(PID)
语法:kill [参数] 服务进程的PID值
常用参数:-9 ---- 强制杀死指定的服务进程
-15 ---- 正常终止服务进程
kill -9 2156
其中killall命令用来批量结束某个服务程序带来的全部进程