在debian8.4.0中从含有本操作系统的磁盘中复制命令到另外一块磁盘

  1 #/bin/bash
  2 #
  3 DEST=/mnt/s ysroot
  4 libcp(){
  5   LIBPATH=$1
  6   PREFIX=${LIBPATH%/*}
  7   [ ! -d $DEST$PREFIX ] && mkdir -p $DEST$PREFIX
  8   [ ! -e $DEST$LIBPATH ] && cp $LIBPATH $DEST$LIBPATH && echo -e "copy depend lib \033[40;31m$LIBPATH\033[ 0m successfully."
  9 }
 10 bincp(){
 11   BINPATH=$1
 12   CMD_PREFIX=${BINPATH%/*}
 13   for LIB in `ldd $BINPATH | grep -o "\(/usr\)\{0,1\}/lib\(64\)\{0,1\}.*[[:space:]]"`;  do
 14      libcp $LIB
 15   done
 16   [ ! -d $DEST$CMD_PREFIX ] && mkdir -p $DEST$CMD_PREFIX
 17   [ ! -e $DEST$BINPATH ] && cp $BINPATH $DEST$BINPATH && echo -e "copy \033[40;31m$BINPATH\033[0m successf    ully." || echo -e "\033[40;31m$DEST$BINPATH\033[0m already exists"
 18 }
 19 cmdcp(){
 20   CMD=$1
 21   BINPATH=`which $CMD`
 22   bincp $BINPATH
 23 }
 24 read -p "请输入要复制的命令:" COMMAND
 25 until [ $COMMAND == 'q' ] ;do
 26    which $COMMAND &>/dev/null && cmdcp $COMMAND || echo -e "没有这个命令:\033[40;31m$COMMAND\033[0m!!!!!"
 27    read -p "请输入要复制的命令:" COMMAND
 28 done
 29 exit 0
 30 
注:在debian Jessie中用which查看任何命令时都不显示别名。另外我明明设置别名了,就是不显示。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值