Compare commits
	
		
			2 Commits
		
	
	
		
			1.3
			...
			e4190bae83
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| e4190bae83 | |||
| 6545189eb0 | 
							
								
								
									
										1
									
								
								teil21/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								teil21/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| *.bak | ||||
							
								
								
									
										2
									
								
								teil21/commandlist.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								teil21/commandlist.txt
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,2 @@ | ||||
| s/Simpson/Thompson/ | ||||
| s/Flanders/Flunders/ | ||||
							
								
								
									
										1
									
								
								teil21/commands.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								teil21/commands.txt
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| echo "Hello" | sed 's/Hello/Bye/' | ||||
							
								
								
									
										16
									
								
								teil21/families.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								teil21/families.txt
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,16 @@ | ||||
| Simpson, Marge | ||||
| Simpson, Homer | ||||
| Simpson, Maggie | ||||
| Simpson, Lisa | ||||
| Simpson, Bart | ||||
|  | ||||
| #FLANDERS-START | ||||
| Flanders, Maude | ||||
| Flanders, Ned | ||||
| Flanders, Rod | ||||
| Flanders, Todd | ||||
| #FLANDERS-END | ||||
|  | ||||
| Wiggum, Sarah | ||||
| Wiggum, Clancy | ||||
| Wiggum, Ralph | ||||
							
								
								
									
										66
									
								
								teil23/parseargs.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										66
									
								
								teil23/parseargs.sh
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,66 @@ | ||||
| #!/bin/bash | ||||
|  | ||||
| # Universelle Parameterparser-Funktion | ||||
| parse_args() { | ||||
|     POSITIONAL=() | ||||
|     while [[ $# -gt 0 ]]; do | ||||
|         case "$1" in | ||||
|             -h|--help) | ||||
|                 echo "Usage: $0 [options]" | ||||
|                 echo "Options:" | ||||
|                 echo "  -h, --help          Show this help message" | ||||
|                 echo "  -v, --verbose       Enable verbose mode" | ||||
|                 echo "  -f, --file <file>   Specify a file" | ||||
|                 echo "  -n, --number <num>  Specify a number (default: 42)" | ||||
|                 exit 0 | ||||
|                 ;; | ||||
|             -v|--verbose) | ||||
|                 VERBOSE=true | ||||
|                 shift | ||||
|                 ;; | ||||
|             -f|--file) | ||||
|                 if [[ -z "$2" || "$2" == -* ]]; then | ||||
|                     echo "Error: --file requires a non-empty argument." | ||||
|                     exit 1 | ||||
|                 fi | ||||
|                 FILE="$2" | ||||
|                 shift 2 | ||||
|                 ;; | ||||
|             -n|--number) | ||||
|                 if [[ -z "$2" || "$2" == -* ]]; then | ||||
|                     echo "Error: --number requires a non-empty argument." | ||||
|                     exit 1 | ||||
|                 fi | ||||
|                 NUMBER="$2" | ||||
|                 shift 2 | ||||
|                 ;; | ||||
|             --) # Explicit end of options | ||||
|                 shift | ||||
|                 break | ||||
|                 ;; | ||||
|             -*) # Unknown option | ||||
|                 echo "Error: Unknown option $1" | ||||
|                 exit 1 | ||||
|                 ;; | ||||
|             *) # Positional argument | ||||
|                 POSITIONAL+=("$1") | ||||
|                 shift | ||||
|                 ;; | ||||
|         esac | ||||
|     done | ||||
|     set -- "${POSITIONAL[@]}" # Restore positional parameters | ||||
|  | ||||
|     # Defaults | ||||
|     VERBOSE="${VERBOSE:-false}" | ||||
|     NUMBER="${NUMBER:-42}" | ||||
| } | ||||
|  | ||||
| # Aufruf der Funktion mit allen Skriptargumenten | ||||
| parse_args "$@" | ||||
|  | ||||
| # Beispielnutzung | ||||
| echo "Verbose mode: $VERBOSE" | ||||
| echo "File: ${FILE:-<not set>}" | ||||
| echo "Number: $NUMBER" | ||||
| echo "Positional arguments: $@" | ||||
|  | ||||
		Reference in New Issue
	
	Block a user