Advertisement
Guest User

Untitled

a guest
Aug 16th, 2015
326
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.06 KB | None | 0 0
  1. xo() {
  2. if (( $+commands[$1] ))
  3. then
  4.         echo "Файл находится в PATH"
  5.         $* &
  6.         disown
  7. elif [ -e "$1" ]
  8. then
  9.         echo "Файл существует по указанному пути"
  10.         if [ -x "$1" ] && [ ! -d "$1" ]
  11.         then
  12.         echo "Файл исполняемый и не является каталогом"
  13.                 if [[ "$(dirname $1)" = "." ]]
  14.                 then
  15.                         echo "Файл находится в текущем каталоге"
  16.                         ./$* &
  17.                         disown
  18.                 else
  19.                         $* &
  20.                         disown
  21.                 fi
  22.         else
  23.                 exo-open "$1" &
  24.                 disown
  25.         fi
  26. else
  27.         echo "Такого файла нет ни по указанному пути, ни в PATH."
  28.         exo-open "$1" &
  29.         disown
  30. fi
  31. }
  32.  
  33. _xo()
  34. {
  35. _arguments '1: : _alternative "commands\:commands\: _command_names -e" "files\:files\:_files"' '*:: : _normal';
  36. };
  37.  
  38. compdef _xo xo
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement