mirror of
				git://git.code.sf.net/p/zsh/code
				synced 2025-10-31 06:00:54 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			81 lines
		
	
	
	
		
			3 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			81 lines
		
	
	
	
		
			3 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| #compdef uname
 | |
| 
 | |
| typeset -A _uname_args
 | |
| local -a args
 | |
| 
 | |
| case $LANG in
 | |
|   de_*)
 | |
|     _uname_args=(
 | |
|       all               "alle Grundinformationen ausgeben"
 | |
|       kernel-name       "Namen des Kernels ausgeben"
 | |
|       nodename          "Netzwerknamen der Maschine ausgeben"
 | |
|       kernel-release    "Release-Nummer des Kernels ausgeben"
 | |
|       kernel-version    "Version des Kernels ausgeben"
 | |
|       os-release        "Release-Nummer des Betriebssystems ausgeben"
 | |
|       machine           "Maschinentyp (Hardware) ausgeben"
 | |
|       processor         "Typ des Prozessors ausgeben"
 | |
|       hardware-platform "Hardwareplattform ausgeben"
 | |
|       operating-system  "Namen des Betriebssystems ausgeben"
 | |
|       help              "Hilfe anzeigen und beenden"
 | |
|       version           "Versionsinformation anzeigen und beenden"
 | |
|     )
 | |
|   ;;
 | |
|   (*)
 | |
|     _uname_args=(
 | |
|       all               "print all basic information"
 | |
|       kernel-name       "print kernel name"
 | |
|       nodename          "print network node hostname"
 | |
|       kernel-release    "print kernel release"
 | |
|       kernel-version    "print kernel version"
 | |
|       os-release        "print operating system release level"
 | |
|       machine           "print machine hardware name"
 | |
|       processor         "print processor type"
 | |
|       hardware-platform "print hardware platform"
 | |
|       operating-system  "print name of the operating system"
 | |
|       help              "display help information"
 | |
|       version           "output version information and exit"
 | |
|     )
 | |
|   ;;
 | |
| esac
 | |
| 
 | |
| if _pick_variant gnu="Free Soft" unix --version; then
 | |
|   _arguments -s \
 | |
|     '(-)'{--all,-a}'['$_uname_args[all]']' \
 | |
|     '(--kernel-name -s)'{--kernel-name,-s}'['$_uname_args[kernel-name]']' \
 | |
|     '(--nodename -n)'{--nodename,-n}'['$_uname_args[nodename]']' \
 | |
|     '(--kernel-release -r)'{--kernel-release,-r}'['$_uname_args[kernel-release]']' \
 | |
|     '(--kernel-version -v)'{--kernel-version,-v}'['$_uname_args[kernel-version]']' \
 | |
|     '(--machine -m)'{--machine,-m}'['$_uname_args[machine]']' \
 | |
|     '(--processor -p)'{--processor,-p}'['$_uname_args[processor]']' \
 | |
|     '(--hardware-platform -i)'{--hardware-platform,-i}'['$_uname_args[hardware-platform]']' \
 | |
|     '(--operating-system -o)'{--operating-system,-o}'['$_uname_args[operating-system]']' \
 | |
|     '(-)--help['$_uname_args[help]']' \
 | |
|     '(-)--version['$_uname_args[version]']'
 | |
| else
 | |
|   args=(
 | |
|     "(-m -n -r -s -v)-a[${_uname_args[all]}]"
 | |
|     '-m[print hardware class]'
 | |
|     "-n[${_uname_args[nodename]}]"
 | |
|     "-p[${_uname_args[processor]}]"
 | |
|     "-r[${_uname_args[os-release]}]"
 | |
|     "-s[${_uname_args[operating-system]}]"
 | |
|     '-v[print detailed operating system version]'
 | |
|   )
 | |
|   case $OSTYPE in
 | |
|     freebsd*|dragonfly*) args+=( '-i[print kernel ident]' ) ;|
 | |
|     freebsd<10->.*)
 | |
|       args+=(
 | |
| 	'-K[print FreeBSD kernel version]'
 | |
| 	'-U[print FreeBSD user environment version]'
 | |
|       )
 | |
|     ;;
 | |
|     solaris*)
 | |
|       args+=(
 | |
|         '-i[print platform name]'
 | |
| 	'-S[set system name]:system name'
 | |
|         '-X[print expanded system information]'
 | |
|       )
 | |
|     ;;
 | |
|   esac
 | |
|   _arguments -s $args
 | |
| fi
 |