1. 批量解压缩
import os
import zipfile
zips_path = '/media/XXX/yfharddisk/LaSOT/LaSOT/zip/' # 压缩包所在目录
tar_path = '/home/XXX/Desktop/Object_Tracking/STDA-main/data/lasot/' # 解压缩后的目标目录
zips = os.listdir(zips_path )
for i in zips:
# 解压缩
with zipfile.ZipFile(zips_path+i) as zf:
zf.extractall(tar_path+i[:-4])
print(i + 'is finished.')
2. 删除非空文件夹
rm -r /Desktop/directory
3. 在文件夹下的所有文件中搜索指定字符串
grep -r 'anystr' /Desktop/directory
4. 明明删除了文件,但剩余空间还没有增加
du -ah --max-depth=1 # 查看当前文件夹下各个文件的大小
rm -rf ./.Trash-1000 # 删除曾经“删除”的文件
5. 清空内存中的缓存
free -g
sudo sh -c "echo 3 > /proc/sys/vm/drop_caches"
6. 创建虚拟空间并开启开机自启动
#-----------------------------创建交换空间-----------------------------------
mkdir /opt/swap # 找一块空地创建swap文件夹
dd if=/dev/zero of=/opt/swap/swapfile bs=1M count=65536 # 创建初始化swap空间,大小为65536M,需要等待几分钟
mkswap /opt/swap/swapfile # 转化为swap文件
swapon /opt/swap/swapfile # 挂载swap文件
swapoff /opt/swap/swapfile # 卸载swap文件
#-----------------------------设置开机自动挂载-----------------------------------
nano /etc/fstab # 编辑该文件并在最后加入以下内容
UUID=714af2b7-eaff-422d-9db0-e2b4a16cf8b3 none swap sw 0 0
/opt/sawp/swapfile swap swap defaults 0 0
7. linux压缩文件夹
zip -r project.zip project # project是待压缩的文件夹
8. 不同类型的图像显示python
(1)numpy类型image
e.g.: image.shape是[1080,1920,3]
import matplotlib.pyplot as plt
plt.imshow(image)
(2)tensor类型image
e.g.: image.shape是[320,320,3] / [320,3,320] / [320,3,320]
import torchvision.transforms as transformers
import matplotlib.pyplot as plt
unloader = transformers.ToPILImage()
image = unloader(image.squeeze())
plt.imshow(image)
9. 绘制折线图
#---------------------------------------折线图绘制----------------------------------------------------
import matplotlib.pyplot as plt
data = [1,2,3,4,5,6,7,8,9,10]
plt.plot(range(1, len(data)+1), data,'2-',markersize=7.0, linewidth=0.5, color='red', label='data value')
font1 = {'family': 'Times New Roman', 'weight': 'normal', 'size': 30}
plt.legend(prop=font1)
# 坐标轴设置
plt.xlabel('index', fontdict={'family': 'Times New Roman', 'size': 30})
plt.ylabel('value', fontdict={'family': 'Times New Roman', 'size': 30})
# 刻度设置
ax = plt.gca()
labels = ax.get_xticklabels() + ax.get_yticklabels()
[label.set_fontname('Times New Roman') for label in labels]
plt.tick_params(axis='both', which='major', labelsize=25)
plt.gcf().subplots_adjust(left=0.2,top=None,bottom=0.2, right=None) # 防止xlabel和ylabel显示不全
plt.ylim(1, 10)
plt.show()