阿里巴巴面试题

1、使用 Shell 命令,从 example.log 日志文件中,统计最后 100 行内,包含 "test" 字符串的行数
2、使用任意语言,递归地将某个磁盘目录下的 jpeg 文件的扩展名修改为 jpg

第一题答案:tail -n 100 example.log|grep "test"|wc -l 

第二题答案:
import os

def func(path):
'''
使用任意语言,递归地将某个磁盘目录下的 jpeg 文件的扩展名修改为 jpg
:param path:
:return:
'''
for i in os.listdir(path):
new = os.path.join(path,i)
if os.path.isfile(new) and new.endswith('.jpeg') :
os.renames(new,new.split(".")[0]+".jpg")
print(new)
elif os.path.isdir(new):
func(new)

func("D:\home")

 

def jpeg_to_jpg(value):
for i in os.listdir(value):
new_path = os.path.join(value,i)
if os.path.isfile(new_path) and new_path.endswith('.jpeg') :
os.renames(new_path,new_path.split(".")[0]+".jpg")
elif os.path.isdir(new_path):
jpeg_to_jpg(new_path)

jpeg_to_jpg("C:\project")