天天看點

誤删tree指令如何恢複

誤删tree指令如何恢複

考察rpm,yum的用法

一、删除tree指令,tree指令不可用

[root@centos7 ~]# which tree

/usr/bin/tree

[root@centos7 ~]# rm -f /usr/bin/tree

[root@centos7 ~]# tree .

bash: tree: command not found...

二、直接yum或rpm安裝将提示tree已經安裝

[root@centos7 ~]# yum install tree

Loaded plugins: fastestmirror, langpacks

Loading mirror speeds from cached hostfile

  • base: mirror.bit.edu.cn
  • extras: mirrors.tuna.tsinghua.edu.cn
  • updates: mirrors.tuna.tsinghua.edu.cn
  1. | 3.6 kB 00:00:00

extras | 3.4 kB 00:00:00

nginx | 2.9 kB 00:00:00

updates | 3.4 kB 00:00:00

Package tree-1.6.0-10.el7.x86_64 already installed and latest version

Nothing to do

[root@centos7 ~]# rpm -ivh /misc/cd/Packages/tree-1.6.0-10.el7.x86_64.rpm

Preparing... ################################# [100%]

package tree-1.6.0-10.el7.x86_64 is already installed           

三、解決辦法:強制覆寫安裝

[root@centos7 ~]# rpm --help

--replacepkgs reinstall if the package is already present

[root@centos7 ~]# rpm -ivh /misc/cd/Packages/tree-1.6.0-10.el7.x86_64.rpm --replacepkgs

Updating / installing...

1:tree-1.6.0-10.el7 ################################# [100%]

四、此時的tree已經可以使用

[root@centos7 ~]# tree . -d

.

├── Desktop

├── Documents

├── Downloads

├── Music

├── Pictures

├── Public

├── scripts

├── Templates

└── Videos

9 directories

五、yum的話可以重新安裝

[root@centos7 ~]# yum --help

reinstall reinstall a package

[root@centos7 ~]# tree -d .

-bash: /usr/bin/tree: No such file or directory

[root@centos7 ~]# yum reinstall tree -y

六、當然還可以找到tree的rpm包,使用rpm2cpio和cpio -id解壓包,并将tree指令移回到原來的位置