前几天同事小李差点被Excel折磨到崩溃。他负责整理全公司三个月的销售数据,每天手动合并表格、核对数字,连续熬了两个晚上还是出错。后来他试着用Python写了个小脚本,不到十分钟就把所有文件自动归类、汇总,连图表都生成好了。这其实就是脚本语言最接地气的应用场景。
批量处理文件的小能手
很多人遇到一堆照片要改名、文档要转格式时,习惯一个一个点。其实用个简单的Shell脚本就能搞定。比如把目录下所有.jpg图片按日期重命名:
for file in *.jpg; do
date=$(stat -f "%Sm" -t "%Y%m%d" "$file")
mv "$file" "${date}_$file"
done
运行之后,原本乱七八糟的IMG_001.jpg变成了20240315_IMG_001.jpg,省事还不会出错。
网页数据抓取不求人
市场部老张每个月都要收集竞品价格,以前靠复制粘贴,现在他自己写了段Python脚本,用requests和BeautifulSoup定时抓取页面信息:
import requests
from bs4 import BeautifulSoup
url = "https://example.com/products"
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
for item in soup.find_all('div', class_='price-tag'):
print(item.get_text().strip())
现在他每天早上打开电脑,昨夜爬好的数据已经存进表格里了。
自动化邮件提醒
财务王姐设置了每周五下午四点自动发催款邮件。她用PowerShell写了个小脚本,读取Excel里的客户欠款记录,筛选逾期账户,通过Outlook批量发送提醒:
$outlook = New-Object -ComObject Outlook.Application
$excel = New-Object -ComObject Excel.Application
$workbook = $excel.Workbooks.Open("C:\debt.xlsx")
$sheet = $workbook.Sheets.Item(1)
for ($row = 2; $row -le 100; $row++) {
$daysOverdue = $sheet.Cells.Item($row, 3).Value
if ($daysOverdue -gt 30) {
$mail = $outlook.CreateItem(0)
$mail.To = $sheet.Cells.Item($row, 4).Value
$mail.Subject = "账单提醒:您的付款已逾期"
$mail.Send()
}
}
$workbook.Close()
日志分析快准狠
运维小陈负责查服务器异常记录。面对几万行的日志文件,他用awk一条命令就筛出了所有500错误:
awk '$9 == 500 {print $1, $4, $7}' access.log > errors.txt
这条命令的意思是:如果第九列状态码是500,就输出IP、时间、请求路径,结果直接保存到新文件里,排查效率翻了好几倍。
这些例子都不是什么高深技术,但实实在在解决了工作中的麻烦事。脚本语言的魅力就在于,不用成为程序员,也能写出帮自己偷懒的工具。学会基本语法后,照着类似案例改一改,很快就能用上。”}