2021-07-03 SHELL 脚本常用

本文介绍了SHELL脚本的一些常用规范,包括第一行声明SHELL类型,脚本功能、版本信息、作者及联络方式、版权声明和History记录。同时强调了使用绝对路径执行特殊命令以及设置环境变量的重要性。此外,还提及了SHELL中检索文件字符串的功能,如通配符和正则表达式的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

SHELL脚本,常用规范:

  • 第一行声明SHELL,如:#!/bin/bash
  • 脚本功能;
  • 脚本的版本信息;
  • 脚本作者与联络方式;
  • 脚本的版权声明方式;
  • 脚本的History(历史记录);
  • 脚本内较特殊的命令,使用【绝对路径】的方式来执行;
  • 脚本运行时需要的环境变量PATH预先声明与设置。

常用SHELL命令:

网络相关指令
指令 描述 参考
netstat -tuln 本机启动的网络服务(端口80:WWW、22:ssh、21:ftp、25:mail、111:PRC(远程)、631:CUPS(打印)) P403
特殊SHELL命令
指令 描述 参考
history 能够记录使用过的指令 P314
alias 设置命令别名 P314
type 查询命令是否为BASH shell内置命令
od 针对非纯文件文件进行处理 P191
file 查看文件类型 P200
ulimit 限制用户资源(开启文件数、CPU使用时间、可用内存数) P329
bash 启动子进程(exit退出)
source 读取环境配置文件 如(source ~./bashrc) P341
time 显示程序运行时间 P267
last 显示登陆者信息 P352
split 拆分文件,如果文件太大,如一个4GB的文本文档,内存较小,可以进行拆分。 P357
id(非管道命令) 查看uid,gid等id信息 P358
xargs(管道命令) 读取stdin的数据,并以某种空格或换行符作为分隔符,将其作为参数,提供给后面的命令command
cut -d ':' -f 1 /etc/passwd | head -n 3 | xargs -n 1 id

通过-n说明,按1个一个赋予参数。常用于为非管道命令提供stdin使其可以使用标准输入。

P358
dmesg 列出内核信息
sh 开启子进程,运行shell脚本文件,运行结束后,子进程bash消失 P392
test 测试文件属性,并返回结果,常与&&和||结合在一起 P396
authconfig --test 查看当前的加密机制 P423
变量运算
运算符 描述 参考
${var} 取变量值 P318
var=value var="myname is $uname" 设置变量值 P319
echo "a=${num};4*a(1)" | bc -lq
将echo参数内容没有管道则导入到屏幕,如果有管道则传给管道后面作为其stdin P394
\\  转义特殊变量值符号 P319
\[Enter]        \$        \\        \(一个看不见的空格)   \' 换行、$、\、空格、单引号 P319
var="$var"value (如PATH="$PATH":/home/bin,其中value是【:/home/bin】 (有个冒号)) 变量追加内容 P319
export var 使变量称为环境变量 P319
unset var 取消变量 P318
$(command)        `command` 取命令执行结果 P320
${var#keyword}(一般是用通配符*) 删除${var}从左向右一个符合keyword的最短匹配项 P332
${var##keyword} 删除${var}从左向右一个符合keyword的最长匹配项 P332
${var%keyword} 删除${var}从右向左一个符合keyword的最短匹配项 P332
${var%%keyword} 删除${var}从右向左一个符合keyword的最长匹配项 P332
${var/旧字符串/新字符串} echo ${path/bin/BIN}, 替换${var}从左往右第一个匹配的旧字符串 P332
${var//旧字符串/新字符串} echo ${path//bin/BIN}, 替换${var}从左往右全部匹配的旧字符串 P332
var2=${var1-str}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

从零开始的智障生活

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值