home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / misc / volume39 / elfshell / part01 / .elven / bash / functions < prev   
Encoding:
Text File  |  1993-08-29  |  1.9 KB  |  73 lines

  1. #----------------------------------------------------------------------#
  2. #    File:    functions
  3. #    Auth:    Christoph. Alex. North-Keys    Sun Apr 28 23:22:27 EDT 1991
  4. #    Desc:    basic functions for the bash version of the elven scripts
  5. #----------------------------------------------------------------------#
  6. message functions' '
  7.  
  8. lsf () { echo `declare -f | tr -d '\012\015'` | sed 's@}declare[ ]@}\
  9. declare @g' | sed 's@^declare -f@+ @g' }
  10.  
  11. c   () { if [ $# -ge 1 ]; then cd "$*"; else cd; fi ; . ; }
  12. .   () { dirs ; }
  13. ..  () { cd .. ; . ; }
  14. /   () { clear ; . ; }
  15. j   () { jobs -l ; }
  16. h   () { history | p ; }
  17. p   () { $PAGER $* ; }
  18. ]d  () { pushd $* ; . ; }
  19. [d  () { popd $* ; . ; }
  20. f   () { fg %$* ; }
  21.  
  22. rm    ()
  23. {
  24.     ls -FCsd $*
  25.     local reply ; echon 'remove[ny]? ' ; read reply
  26.     if [ "$reply" = "y" ] ; then /bin/rm -rf $* ; else echo '(cancelled)' ; fi
  27. }
  28.  
  29. if type -path y 2>&1 >/dev/null; then :; else
  30.     y   () { $EDITOR $* ; }
  31. fi
  32.  
  33. if type -path li 2>&1 >/dev/null; then :; else
  34.     l   () { ls -FCa $* ; }
  35.     if [ `ls -ldg | wc -w` -gt `ls -ld | wc -w` ]; then
  36.         #    BSD
  37.         li  () { ls -Flgas   $* ; }
  38.         lf  () { ls -Flgsd   $* ; }
  39.         lr  () { ls -Flgasrt $* ; }
  40.     else
  41.         #    USG
  42.         li  () { ls -Flas    $* ; }
  43.         lf  () { ls -Flsd    $* ; }
  44.         lr  () { ls -Flasrt  $* ; }
  45.     fi
  46. fi
  47.  
  48. divine ()
  49. {
  50.     local bcast="$ELVEN/broadcast"
  51.     if [ $# -eq 0 ]; then
  52.         echo 'self' > $bcast
  53.     else
  54.         case $1 in
  55.         -)        cat > $bcast                ;;
  56.         -c)        shift ; echo "$*" > $bcast    ;;
  57.         -f)        shift ; cat $1 > $bcast    ;;
  58.         *)        local prog=divine 
  59.                 echo "$prog"' -- send a directive to all running bash progs'
  60.                 echo 'syntax: '"$prog"' [ - | -c <cmd> | -f <file> ]'
  61.                 echo '-       use stdin'
  62.                 echo '-c      run <cmd>'
  63.                 echo '-f      run copy of <file>'
  64.                 echo 'with no args, as if "'"$prog"' -c self" was used'
  65.                 return
  66.         esac
  67.     fi
  68.     2>/dev/null kill -USR1 $(ps -x | awk '($5 == "bash")||($5 == "-bash") { print $1 }')
  69. }
  70.  
  71. self functions.loc
  72. #-------------------------------------------eof
  73.