超硬核!11个非常实用的 Python 和 Shell 拿来就用脚本实例!("实战必备!11个超实用Python与Shell脚本实例,即拿即用!")

原创
ithorizon 4周前 (10-21) 阅读数 23 #后端开发

实战必备!11个超实用Python与Shell脚本实例,即拿即用!

一、Python脚本实例

以下是一些非常实用的Python脚本实例,涵盖了许多常见的场景,帮助你减成本时间工作效能。

1. 文件批量重命名

使用Python对指定目录下的文件进行批量重命名。

import os

def rename_files(directory, prefix):

for filename in os.listdir(directory):

if filename.startswith(prefix):

new_filename = filename[len(prefix):]

os.rename(os.path.join(directory, filename),

os.path.join(directory, new_filename))

directory = '/path/to/your/directory'

prefix = 'prefix_'

rename_files(directory, prefix)

2. 文件夹内容复制到另一个文件夹

使用Python将一个文件夹中的内容复制到另一个文件夹。

import shutil

def copy_directory(src, dst):

shutil.copytree(src, dst)

source_directory = '/path/to/source/directory'

destination_directory = '/path/to/destination/directory'

copy_directory(source_directory, destination_directory)

3. 获取文件夹大小

使用Python获取一个文件夹的大小。

import os

def get_directory_size(directory):

total_size = 0

for dirpath, dirnames, filenames in os.walk(directory):

for f in filenames:

fp = os.path.join(dirpath, f)

total_size += os.path.getsize(fp)

return total_size

directory = '/path/to/your/directory'

size = get_directory_size(directory)

print(f"文件夹大小:{size} bytes")

4. 网络爬虫:抓取网页内容

使用Python编写一个明了的网络爬虫,抓取网页内容。

import requests

from bs4 import BeautifulSoup

def get_webpage_content(url):

response = requests.get(url)

soup = BeautifulSoup(response.text, 'html.parser')

return soup.prettify()

url = 'https://www.example.com'

content = get_webpage_content(url)

print(content)

5. 发送邮件

使用Python发送一封明了的邮件。

import smtplib

from email.mime.text import MIMEText

def send_email(smtp_host, smtp_port, sender, password, receiver, subject, body):

msg = MIMEText(body, 'plain', 'utf-8')

msg['From'] = sender

msg['To'] = receiver

msg['Subject'] = subject

server = smtplib.SMTP(smtp_host, smtp_port)

server.starttls()

server.login(sender, password)

server.sendmail(sender, [receiver], msg.as_string())

server.quit()

smtp_host = 'smtp.example.com'

smtp_port = 587

sender = 'your_email@example.com'

password = 'your_password'

receiver = 'receiver_email@example.com'

subject = 'Subject'

body = 'This is the email body.'

send_email(smtp_host, smtp_port, sender, password, receiver, subject, body)

二、Shell脚本实例

以下是一些实用的Shell脚本实例,可以帮助你敏捷解决一些常见问题。

1. 批量修改文件权限

使用Shell脚本批量修改文件权限。

#!/bin/bash

directory="/path/to/your/directory"

chmod -R 755 $directory

2. 查找文件并删除

使用Shell脚本查找文件并删除。

#!/bin/bash

directory="/path/to/your/directory"

find $directory -type f -name "*.log" -exec rm -f {} \;

3. 监控文件夹大小

使用Shell脚本监控文件夹大小,并在超过制约时发送警告。

#!/bin/bash

directory="/path/to/your/directory"

max_size=10485760 # 10MB

size=$(du -s $directory | cut -f1)

if [ $size -gt $max_size ]; then

echo "警告:$directory 文件夹大小超过制约!" | mail -s "警告:文件夹大小超过制约" your_email@example.com

fi

4. 自动备份文件

使用Shell脚本自动备份文件到另一个目录。

#!/bin/bash

source_directory="/path/to/source/directory"

destination_directory="/path/to/destination/directory"

rsync -av --delete $source_directory/ $destination_directory

5. 自动部署项目

使用Shell脚本自动部署项目到服务器。

#!/bin/bash

server_ip="192.168.1.100"

server_user="username"

server_path="/path/to/server/directory"

local_path="/path/to/local/directory"

rsync -avz --delete $local_path/ $server_user@$server_ip:$server_path

ssh $server_user@$server_ip "chmod -R 755 $server_path"

总结

以上11个Python和Shell脚本实例都是实用性非常高的工具,可以帮助你敏捷解决各种问题。掌握这些脚本,相信你的工作效能会大大减成本时间!


本文由IT视界版权所有,禁止未经同意的情况下转发

文章标签: 后端开发


热门