| aliases | ||||
|---|---|---|---|---|
| tags |
|
|||
| created | 2023-09-22 18:34:32 -0700 | |||
| modified | 2026-07-24 13:25:43 -0700 |
这个笔记主要记录些常用的 Shell 脚本代码版本,当成示例库。
- 示例 1
# 遍历 data 目录下txt文件并备份,备份文件名称加上年月日为后缀
# 1.txt -> 1.txt_20230923
suffix=`date +%Y%m%d`
for f_temp in `find data/ -type f -name "*.txt"`
do
echo "备份文件$f_temp"
cp ${f_temp} ${f_temp}_${suffix}
done- 示例 2
local exuid_arr=()
# 过滤掉空行及使用#注释的行
for line in $(cat $exlist_path | grep -v ^$ | grep -v ^\#); do
# 把每行扩展的 uid 存储进数组中
exuid_arr+=($line)
done
if [[ $# -eq 0 ]]; then
echo -e "\e[93m必须输入一个要查询的字符串! \n \e[0m"
return
fi示例 1:确保目录路径不以斜杠结尾
SRC_DIR=${SRC_DIR%/}示例 2:获取当前脚本的当前路径
$(cd `dirname $0`; pwd)[!info]
这个代码意思是,取到当前脚本的路径中的目录部分(dirname),然后
cd跳转,然后再取跳转后的当前路径。这样防止简单执行
$pwd时,执行脚本所处路径,非脚本所在目录,而取到了执行时所处的路径错误。