LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 742|回复: 4

对一个目录进行操作的脚本,请兄弟们指教

[复制链接]
发表于 2004-6-25 23:21:42 | 显示全部楼层 |阅读模式
好久没写脚本了,javalee还记得我否?

我在Linux下打命令的时候常常要在两个目录之间切换工作,如果目录不是很深那倒还没什么困难,如果太深,就觉得敲太多重复命令,重复工作令人感觉很累。这个脚本能改善你的工作效率,当然,你使用OLDPWD变量也能解决一些问题,但何不用用这个更大功能的脚本呢?:cool: :cool:

这个脚本功能可以对一个目录进行一个给定目录进行命令操作,想切换到一个目录进行操作时不用转换,脚本自动进入上一次调用本脚本时操作目录进行操作给定命令。这样说好像很复杂,举个使用的例子就明白怎么用了。

$./re /home/kiron
Change diretory to /home/kiron/ is succesful!
List the diretory:
bin  Desktop
/home/kiron
$./re ls -l   #这里默认对上次的目录操作,即/home/kiron,组合多种命令就可以做更多的事情了
总用量 8
drwxrwxr-x  2 kiron kiron 4096  6月 25 23:11 bin
drwxr-xr-x  2 kiron kiron 4096  6月 15 14:05 Desktop

  1. #!/bin/bash

  2. #return last directory  list the list or do something

  3. #测试文件/tmp/repath.$UID是否存在,这是用来初始化保存目录名的文件
  4. if [ ! -e /tmp/repath.$UID ];
  5. then
  6. echo "~"> /tmp/repath.$UID
  7. fi

  8. #当参数为1时,判断该参数是目录还是命令,是目录则列出目录的文件,是命令则执行它,操作环境当然是/tmp/repath.$UID保存的目录名
  9. if [ $# == 1 ]; then
  10. if [ -d $1 ] ; then
  11. echo $1 > /tmp/repath.$UID
  12. cd $1
  13. echo "Change diretory to $1 is succesful!"
  14. echo "List the diretory:"
  15. /bin/ls
  16. exit 0
  17. else
  18. RE_PATH=`cat /tmp/repath.$UID`
  19. cd $RE_PATH
  20. $1
  21. exit 0
  22. fi
  23. fi

  24. #不带参数时则进入上一次的目录列出文件
  25. if [ $# == 0 ]; then
  26. RE_PATH=`cat /tmp/repath.$UID`
  27. cd $RE_PATH
  28. if [ $? = 0 ]; then
  29. echo "Change diretory to $RE_PATH is succesful!"
  30. echo "List the diretory:"
  31. /bin/ls
  32. exit 0
  33. else
  34. echo "Change diretory to $RE_PATH is fail!"
  35. echo $RE_PATH
  36. exit 1
  37. fi
  38. fi

  39. #多个参数时,当作命令执行
  40. RE_PATH=`cat /tmp/repath.$UID`
  41. cd $RE_PATH
  42. $*
  43. #END
复制代码
发表于 2004-6-25 23:36:49 | 显示全部楼层
呵呵,当然记得兄弟喽~~
在命令行下的操作,常用的用alias或补齐,我想就够用啦, ;)
 楼主| 发表于 2004-6-27 02:17:22 | 显示全部楼层
最初由 javalee 发表
呵呵,当然记得兄弟喽~~
在命令行下的操作,常用的用alias或补齐,我想就够用啦, ;)


呵呵,够用就好了
我就是觉得不够用才写这个脚本,可能日常做的事情不一样感觉也不一样吧,希望有人能碰上和我一样的感觉,不然我的脚本可推销不出去了;) ;)
发表于 2004-6-27 02:36:45 | 显示全部楼层
最初由 kiron 发表
呵呵,够用就好了
我就是觉得不够用才写这个脚本,可能日常做的事情不一样感觉也不一样吧,希望有人能碰上和我一样的感觉,不然我的脚本可推销不出去了;) ;)

kiron兄别误会~~~,
 楼主| 发表于 2004-6-27 12:15:42 | 显示全部楼层
最初由 javalee 发表
kiron兄别误会~~~,


误会什么??:ask :ask

javalee兄别多虑,我什么也没想:confused: :confused:

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表