把rm命令转换成mv命令,不能使用-r 参数,会报出一个错误,因为mv命令没有-r参数,下面是方法:

在用户主目录下创建一个隐藏文件夹~/.trash作为垃圾回收站

[root@akuilinux01 shellXT]# mkdir -p ~/.trash

写一个脚本

[root@akuilinux01 tmp]# vim ~/.bashrc

#设置别名,rm是删除文件,rl是查看回收站,ur是恢复文件

alias rm='trash'

alias rl='trashlist'

alias ur='undelfile'

#替换rm指令移动文件到~/.trash/中

trash()

{

mv $@ ~/.trash/

}

#显示回收站中垃圾清单

trashlist()

{

echo -e "33[32m==== Garbage Lists in ~/.trash/ ====33[0m"

echo -e "\a33[33m----Usage------33[0m"

echo -e "\a33[33m-1- Use 'cleartrash' to clear all garbages in ~/.trash!!!33[0m"

echo -e "\a33[33m-2- Use 'ur' to mv the file in garbages to current dir!!!33[0m"

ls -al ~/.trash

}

#找回回收站相应文件

undelfile()

{

mv -i ~/.trash/$@ ./

}

#清空回收站

cleartrash()

{

echo -ne "\a33[33m!!!Clear all garbages in ~/.trash, Sure?[y/n]33[0m"

read confirm

if [ $confirm == 'y' -o $confirm == 'Y' ] ;then

/bin/rm -rf ~/.trash//bin/rm -rf ~/.trash/. 2>/dev/null

fi

}

#Source global definitions

if [ -f /etc/bashrc ]; then

. /etc/bashrc

fi

在命令行下面刷新一下环境配置,即可生效:

[root@akuilinux01 ~]# source ~/.bashrc

source命令的作用就是用来执行一个脚本,那么:

source a.sh 同直接执行 ./a.sh 有什么不同呢,比如你在一个脚本里export $KKK=111 ,如果你用./a.sh执行该脚本,执行完毕后,你运行 echo $KKK ,发现没有值,如果你用source来执行 ,然后再echo ,就会发现KKK=111。因为调用./a.sh来执行shell是在一个子shell里运行的,所以执行后,结构并没有反应到父shell里,但是source不同它就是在本shell中执行的,所以可以看到结果

linux禁止rm运行,禁用rm命令,使用mv命令给linux建立回收站相关推荐

  1. linux无密码sudo,在Linux系统中运行没有sudo密码的特定命令

    本文介绍在Linux操作系统中运行没有sudo密码的特定命令的方法. 背景 我在AWS上部署了Ubuntu系统上的脚本,此脚本的主要目的是检查特定服务是否以固定间隔运行(确切地说每隔一分钟),并且如果 ...

  2. linux mv命令的功能,linux常用命令:Linux常用命令之mv命令是什么?

    Linux是目前使用比较广泛的服务器操作系统,可以安装在各种计算机硬件设备中,例如手机,路由器等.由于Linux是开源和免费的,因此Linux系统的稳定性和安全性更高一些,所以Linux具有很高的市场 ...

  3. 每日一个Linux命令之mv命令

    每日一个Linux命令之mv命令 mv命令是move的简写,我们首先来查看mv命令的man page,运行man mv,结果如下显示: MV(1)告诉我们mv命令是一个可以在shell中执行的命令,N ...

  4. Linux命令学习-mv命令

    Linux中,mv命令的全称是move,主要作用是移动文件或文件夹,类似于Windows下的剪切功能,同时还可以用于修改名字. 假设当前处于wintest用户的主目录,路径为 /home/wintes ...

  5. linux重命名文件或文件夹的mv命令

    linux下重命名文件或文件夹的命令mv既可以重命名,又可以移动文件或文件夹. 例子:将目录A重命名为B mv A B 例子:将/a目录移动到/b下,并重命名为c mv /a /b/c 其实在文本模式 ...

  6. Linux命令之mv命令

    mv命令是move的缩写,可以用来移动文件或者将文件改名(move (rename) files). 命令格式 mv [选项] 源文件或目录 目标文件或目录 1.当mv命令中的第二个参数类型(目标)是 ...

  7. Linux命令之 --- mv命令

    mv命令是"move"单词的缩写,见名思意,可以移动文件或对其改名. 这是一个使用频率超高的文件管理命令,但是要留意它与复制的区别. mv命令是文件的路径发生变化或文件名称发生改变 ...

  8. Linux中的cp命令和mv命令

    1.sh:执行.sh结尾的脚本 2.cp:复制文件到指定目录,比如把aa目录下的123.jpg文件复制到bb目录下(复制过后文件在旧文件中存在) cp sourcefile destfile: 文件拷 ...

  9. linux 命令删除命令,Linux 命令之删除命令

    在Linux下删除文件用rm命令,具体用法如下: rm [选项] 文件 选项说明: -f -force 忽略不存在的文件,强制删除,无任何提示 -i --interactive 进行交互式地删除 -r ...

最新文章

  1. 在LNMP或Nginx上配置NameCheap免费SSL证书
  2. 现金流量表的编制公式
  3. LOJ #2734 Luogu P3615 [JOI2016春季合宿]Toilets (结论、贪心)
  4. vue输入框联想词功能
  5. 游戏引擎cocos2d-android使用大全
  6. 高阶函数(Higher-order function)
  7. Android Studio 第六十三期 - Android框架 -RecycleView所有用法
  8. Docker学习总结(33)——Docker环境下搭建 MySQL 主从复制
  9. 加拿大程序员趣闻系列 1/N
  10. qt Android 基站定位,AT指令获取基站信息
  11. PHICOMM(斐讯)N1盒子 - 外接显示器刷机调试方案
  12. CSDN日报20170602 ——《程序员、技术主管和架构师》
  13. python3 获取电脑上某个点的颜色RGB值
  14. 一个很好用的移动端Lightbox特效插件(一)
  15. 人工智能α-β树剪支图文
  16. 常用数字电路模块:边沿检测电路
  17. clear:both在HTML页面中的用法
  18. 25年,100亿美元!人类「第二只眼」韦伯望远镜升空,寻找宇宙开天辟地那束光...
  19. 各大券商提供的量化终端怎么样?
  20. WPF学习 - .NET相关知识

热门文章

  1. 【005】WikiDiff-英文近义词辨析网站
  2. 对华为系统软件的战略思考(下)–(8)华为VRP
  3. STIL中的Singals
  4. 哈工大吉大计算机就业哪个好,东北最好的5所大学,堪比学霸集中营,毕业不愁找工作!...
  5. VB6编程:DirectX 2D图形学习日志1创建一个全屏窗口
  6. 普通人想要改变 “穷生活” 创业是唯一的出路;实现财务自由。丨国仁网络资讯
  7. style=‘cursor:pointer‘
  8. Ubuntu虚拟机扩容|5min内快速扩容
  9. 集团大公司企业邮箱、企业邮箱有哪些功能最好?服务哪家好?
  10. android 单位转换工具,Android尺寸单位转换 工具类