-f 判断文件是否存在 eg: if [ -f filename ];
-d 判断目录是否存在 eg: if [ -d dir ];
-eq等于,应用于整型比较 equal;
-ne不等于,应用于整型比较 not equal;
-lt小于,应用于整型比较 letter;
-gt大于,应用于整型比较 greater;
-le小于或等于,应用于整型比较;
-ge 大于或等于,应用于整型比较;
-a双方都成立(and) 逻辑表达式 –a 逻辑表达式;
-o单方成立(or) 逻辑表达式 –o 逻辑表达式;
-z空字符串;
-x 是否具有可执行权限
|| 单方成立;
&& 双方都成立表达式。
PATH 命令所示路径,以冒号为分割;
HOME 打印用户家目录;
SHELL 显示当前Shell类型;
USER 打印当前用户名;
ID 打印当前用户id信息;
PWD 显示当前所在路径;
TERM 打印当前终端类型;
HOSTNAME 显示当前主机名;
PS1 定义主机命令提示符的;
HISTSIZE 历史命令大小,可通过 HISTTIMEFORMAT 变量设置命令执行时间;
RANDOM 随机生成一个 0 至 32767 的整数;
HOSTNAME 主机名
# Shell常见的变量之一系统变量,主要是用于对参数判断和命令返回值判断时使用,系统变量详解如下:
$0 当前脚本的名称;
$n 当前脚本的第n个参数,n=1,2,…9;
$* 当前脚本的所有参数(不包括程序本身);
$# 当前脚本的参数个数(不包括程序本身);
$? 令或程序执行完后的状态,返回0表示执行成功;
$$ 程序本身的PID号。
$* 所有参数列表。如"$*“用「”」括起来的情况、以"$1 $2 … $n"的形式输出所有参数,此选项参数可超过9个。
ps 查看服务器大进程信息
-e 列出全部进程 -A
-f 显示全部的列 全字段
查找进程 ps -ef|进程名
$0:是指你所写的shell脚本本身的名字;
$1:是指你写的shell脚本所传入的第一个参数 ;
$2:是指你写的shell脚本所传入的第二个参数。
-n 不要执行script,仅查询语法
-v 在执行script之前,先将script的内容输出到屏幕上
-x 将使用的脚本的内容输出到屏幕,该参数经常被使用
-c “string” 从strings中读取命令
expr运算符
result=`expr 2 + 3`
result=$(expr $no1 + 5)
echo 输出
-e 输出转义字符
文本搜索工具 grep“aaa”
wc 统计指定文件中的字节数、字数、行数,并将统计结果显示输出。
-c, --bytes:统计字节数
-m, --chars:统计字符数,可以与 -c 参数一起使用
-w, --words:统计字数,一个字被定义为空白、跳格或换行字符分隔的字符串
-l, --lines:统计行数
-L, --max-line-length:统计最长行的长度
--help 显示帮助信息
--version 显示版本信息
read -p “请输入字符”char (赋值给char)
ping -c 1(次数) 192.169.0.1(地址)
# 超级管理员
$ 其他用户
halt 关闭内存
pwd 打印当前路径 绝对路径
ls -la 详细列表
cd /root 跳路经 ./ 相对路径 ../ 绝对路径
mkdir 创建目录 mkdir -p a/b/c 多层目录
touch 创建文件 touch a.txt
cp 复制 cp a.txt /root/opt/a.txt(可改名)
cp -r ./opg/ /root/opy (-r递归 文件夹的内容一起复制,不加只复制文件夹)
mv 移动指令 mv /root/opt/a.txt /root/a.txt
rm 删除 rm -f 不用确认直接删除 rm -rf a (a是目录) rm -rf abc* 以abc开头的所有文件,包括文件夹
vim 文本编译器 vim a.txt :q (shift+; q Enter)未改动退出
> 是清空并添加新内容,即重定向。
>> 是在文件内容后面追加新内容,即追加重定向。
cat 将文件内容直接输出控制板 cat a.txt
cat 可以将多个文件合并成一个文件
cat /root/a.txt /root/b.txt /root/c.txt >d.txt
df 查看磁盘空间 df -h
free 查看内存使用情况 free -m (m 计量单位 也可以用G)
head 查看一个文件的前多少行 默认10 head -10 a.txt
tail 查看一个文件的后多少行 默认10 tail -10 a.txt
tail -f 查看一个文件的动态变化
less 查看文件 较少内容进行展示(仅展示一页。)空格翻页。数字加enter 跳转行
wc 统计文件内容信息 wc -lwc a.txt l行数 w单词数 c字节数 wc -l a.txt
date 日期 date +%F (date +"+%F-%m-%d") 输出 2023-3-13
date "+%F %T" (date "+%Y-%m-%d %H:%M:%S") 年月日时分秒 2023-03-13 16:46:18
date -d "-1 day" "+%Y-%m-%d %H:%M:%S" 一天前的时间
cal 操作日历指令 当前月份的日历