iBlack
20.01.15, 11:05
Hei Leute,
Ich hab mal versucht, (gescheitert...) nach einer Bestimmten Datei zu suchen und alle Treffer in einer Auswahlliste auszugeben um diese Datei dann per Auswahl zu bearbeiten.
Ich bin soweit gekommen, dass ich eine Auswahlliste und eine Funktionierende Suche habe, nur weiß ich nicht wie ich beides verbinde....
Mein Code:
#!/bin/bash
#Skript Start
clear
echo "Wer bist du?" #Abfrage nach Name des Mitarbeiters
echo "1. Günther"
echo "2. Mönchi"
read mitarbeiter #Eingabe der vorgegeben Auswahl
echo "Um wen gehts? [Kundenname]" #Abfrage nach Name des Kunden
read name
find /../../../../../../../ -type d -name '*'$name'*' -exec basename {} \; | sort
#Suche, ob Kunde schon vorhanden ist
echo "Kunde gefunden? Dann gib den Namen des Gewünschten Kunden ein, wenn der Kunde nicht aufgeführt ist, gib den Speichername für den neuen Kunden an!"
read "name2" #Erneute Eingabe des Kunden, soll ermöglichen, wenn der Kunde schon vorhanden ist, den korrekten Namen einzugeben, um den Richtigen Kunden zu bearbeiten und nicht neu anzulegen
echo "Was willst du machen?" #Abfrage auf Aktion nach Kundenauwahl
echo "1. Kunde bearbeiten"
echo "2. Neuen Kunde erstellen"
read auswahl #Auswahl der Vorgaben, "Bearbeiten" oder "Neu Anlegen" des Kunden
#Beginn der IF Anweisung, unterschiedliche User = unterschiedliche Pfade, der && Befehl frägt ab, welcher Mitarbeiter das Skript benutzt um den Richtigen Pfad zur Bearbeitung anzugeben. Die Abfrage steht nur für bereits vorhandene Kunden, um einen kunden neu zu Erstellen wird eine andere IF Anweisung benutzt. Auswahl der Kunden Aktion steht hier immer aus 1 und nicht auf 2.
if [ "$mitarbeiter" = "1" ] && [ "$auswahl" = "1" ] #Pfad Mitarbeiter 1
then gedit /../../../../../../../ -type d -name '*'$name'*' -exec basename {} \; | sort/"$name2"/"$name2".txt
elif [ "$mitarbeiter" = "2" ] && [ "$auswahl" = "1" ] #Pfad Mitarbeiter 2
then gedit /../../../../../../../"$name2"/"$name2".txt
fi
#Ende der 1. IF Anweisung
#Beginn der zweiten IF Anweisung, hier kommt das Programm hin, falls der Kunde neu angelegt werden soll, Sprich, Auswahl der Aktion für die Kunden steht hier immer auf 2 und nicht auf 1. Auch hier ist die Abfrage des Mitarbeiter entscheident, da auch hier unterschiedliche Pfade verwendet werden.
if [ "$mitarbeiter" = "1" ] && [ "$auswahl" = "2" ] #Pfad Mitarbeiter 1
#Hier wird ein neues Verzeichniss im angegeben Firmen Verzeichniss erstellt, in dem Sich die Übersicht befindet. Der name des Verzeichnisses, bezieht sich au die 2. Eingabe des namens nach der Überprüfung ob der Kunde vorhanden ist oder nicht.
then mkdir //../../../../../../../"$name2"
#Hier wird das Vorlagen Blatt in den neu Angelegten Kundenordner kopiert.
cp /../../../../../../../"Dokumentation.txt" /../../../../../../../"$name2"
#Hier wird die Datei die wir eben in das neu angelegte Verzeichniss kopiert haben in den Selben Namen mit der Endung .txt umbenannt, um sofort zu sehen, um welchen Kunden es sich handelt
mv /../../../../../../../"Dokumentation.txt" /../../../../../../../"$name2"/"$name2".txt
#Nach dem ganzen Erstellungs -Kopier -und Umbenennungsvorgang, wird hier nun die Datei geöffnet (Je nach dem welcher Editor gewünscht ist, kann dieser in der nachfolgenden Zeile beliebig geändert werden) um zu Ende bearbeitet zu werden.
kate /../../../../../../../"$name2"/"$name2".txt
elif [ "$mitarbeiter" = "2" ] && [ "$auswahl" = "2" ] #Pfad Mitarbeiter 2
#Hier wird ein neues Verzeichniss im angegeben Firmen Verzeichniss erstellt, in dem Sich die Übersicht befindet. Der name des Verzeichnisses, bezieht sich au die 2. Eingabe des namens nach der Überprüfung ob der Kunde vorhanden ist oder nicht.
then mkdir /../../../../../../../"$name2"
#Hier wird das Vorlagen Blatt in den neu Angelegten Kundenordner kopiert.
cp /../../../../../../../"Dokumentation.txt" /../../../../../../../"$name2"
#Hier wird die Datei die wir eben in das neu angelegte Verzeichniss kopiert haben in den Selben Namen mit der Endung .txt umbenannt, um sofort zu sehen, um welchen Kunden es sich handelt.
mv /../../../../../../../"Dokumentation.txt" /../../../../../../../"$name2"/"$name2".txt
#Nach dem ganzen Erstellungs -Kopier -und Umbenennungsvorgang, wird hier nun die Datei geöffnet (Je nach dem welcher Editor gewünscht ist, kann dieser in der nachfolgenden Zeile beliebig geändert werden) um zu Ende bearbeitet zu werden.
gedit /../../../../../../../"$name2"/"$name2".txt
fi
#Ende der 2. IF Anweisung
echo "Eingabe für weitere Bearbeitung!" #Hier wird nun AUsgegeben was die nächste Aktion ist, das Skripot kann also beliebig oft ausgeführt werden, durch drücken der Enter Taste am Ende
read #Auslesen der Eingabe, (Wenn leer wird alles als Eingabe gezählt und das Skript wird fortgeführt)
AnruferVorlage #Neustarten des Skriptes
Das ist der Code für die Suche nach dem Kunden bzw. der Datei.
Jetzt wollte ich mit:
auswahl=$(dialog --stdout --backtitle Hauptmenü --title Details --radiolist "Welches Skript möchtest du ausführen?" 20 80 20\ )
case "$auswahl" in
Kunden)
dialog --backtitle Umfrage --title Reaktion --msgbox "Kunde so und so wird bearbeitet" 15 40
.....
esac
Diesem Code eine Auswahl Oberfläche erstellen um per Pfeiltasten den Kunden auszuwählen.
Ist es möglich diese 2 Komponenten zu vereinen?
Ich hab mal versucht, (gescheitert...) nach einer Bestimmten Datei zu suchen und alle Treffer in einer Auswahlliste auszugeben um diese Datei dann per Auswahl zu bearbeiten.
Ich bin soweit gekommen, dass ich eine Auswahlliste und eine Funktionierende Suche habe, nur weiß ich nicht wie ich beides verbinde....
Mein Code:
#!/bin/bash
#Skript Start
clear
echo "Wer bist du?" #Abfrage nach Name des Mitarbeiters
echo "1. Günther"
echo "2. Mönchi"
read mitarbeiter #Eingabe der vorgegeben Auswahl
echo "Um wen gehts? [Kundenname]" #Abfrage nach Name des Kunden
read name
find /../../../../../../../ -type d -name '*'$name'*' -exec basename {} \; | sort
#Suche, ob Kunde schon vorhanden ist
echo "Kunde gefunden? Dann gib den Namen des Gewünschten Kunden ein, wenn der Kunde nicht aufgeführt ist, gib den Speichername für den neuen Kunden an!"
read "name2" #Erneute Eingabe des Kunden, soll ermöglichen, wenn der Kunde schon vorhanden ist, den korrekten Namen einzugeben, um den Richtigen Kunden zu bearbeiten und nicht neu anzulegen
echo "Was willst du machen?" #Abfrage auf Aktion nach Kundenauwahl
echo "1. Kunde bearbeiten"
echo "2. Neuen Kunde erstellen"
read auswahl #Auswahl der Vorgaben, "Bearbeiten" oder "Neu Anlegen" des Kunden
#Beginn der IF Anweisung, unterschiedliche User = unterschiedliche Pfade, der && Befehl frägt ab, welcher Mitarbeiter das Skript benutzt um den Richtigen Pfad zur Bearbeitung anzugeben. Die Abfrage steht nur für bereits vorhandene Kunden, um einen kunden neu zu Erstellen wird eine andere IF Anweisung benutzt. Auswahl der Kunden Aktion steht hier immer aus 1 und nicht auf 2.
if [ "$mitarbeiter" = "1" ] && [ "$auswahl" = "1" ] #Pfad Mitarbeiter 1
then gedit /../../../../../../../ -type d -name '*'$name'*' -exec basename {} \; | sort/"$name2"/"$name2".txt
elif [ "$mitarbeiter" = "2" ] && [ "$auswahl" = "1" ] #Pfad Mitarbeiter 2
then gedit /../../../../../../../"$name2"/"$name2".txt
fi
#Ende der 1. IF Anweisung
#Beginn der zweiten IF Anweisung, hier kommt das Programm hin, falls der Kunde neu angelegt werden soll, Sprich, Auswahl der Aktion für die Kunden steht hier immer auf 2 und nicht auf 1. Auch hier ist die Abfrage des Mitarbeiter entscheident, da auch hier unterschiedliche Pfade verwendet werden.
if [ "$mitarbeiter" = "1" ] && [ "$auswahl" = "2" ] #Pfad Mitarbeiter 1
#Hier wird ein neues Verzeichniss im angegeben Firmen Verzeichniss erstellt, in dem Sich die Übersicht befindet. Der name des Verzeichnisses, bezieht sich au die 2. Eingabe des namens nach der Überprüfung ob der Kunde vorhanden ist oder nicht.
then mkdir //../../../../../../../"$name2"
#Hier wird das Vorlagen Blatt in den neu Angelegten Kundenordner kopiert.
cp /../../../../../../../"Dokumentation.txt" /../../../../../../../"$name2"
#Hier wird die Datei die wir eben in das neu angelegte Verzeichniss kopiert haben in den Selben Namen mit der Endung .txt umbenannt, um sofort zu sehen, um welchen Kunden es sich handelt
mv /../../../../../../../"Dokumentation.txt" /../../../../../../../"$name2"/"$name2".txt
#Nach dem ganzen Erstellungs -Kopier -und Umbenennungsvorgang, wird hier nun die Datei geöffnet (Je nach dem welcher Editor gewünscht ist, kann dieser in der nachfolgenden Zeile beliebig geändert werden) um zu Ende bearbeitet zu werden.
kate /../../../../../../../"$name2"/"$name2".txt
elif [ "$mitarbeiter" = "2" ] && [ "$auswahl" = "2" ] #Pfad Mitarbeiter 2
#Hier wird ein neues Verzeichniss im angegeben Firmen Verzeichniss erstellt, in dem Sich die Übersicht befindet. Der name des Verzeichnisses, bezieht sich au die 2. Eingabe des namens nach der Überprüfung ob der Kunde vorhanden ist oder nicht.
then mkdir /../../../../../../../"$name2"
#Hier wird das Vorlagen Blatt in den neu Angelegten Kundenordner kopiert.
cp /../../../../../../../"Dokumentation.txt" /../../../../../../../"$name2"
#Hier wird die Datei die wir eben in das neu angelegte Verzeichniss kopiert haben in den Selben Namen mit der Endung .txt umbenannt, um sofort zu sehen, um welchen Kunden es sich handelt.
mv /../../../../../../../"Dokumentation.txt" /../../../../../../../"$name2"/"$name2".txt
#Nach dem ganzen Erstellungs -Kopier -und Umbenennungsvorgang, wird hier nun die Datei geöffnet (Je nach dem welcher Editor gewünscht ist, kann dieser in der nachfolgenden Zeile beliebig geändert werden) um zu Ende bearbeitet zu werden.
gedit /../../../../../../../"$name2"/"$name2".txt
fi
#Ende der 2. IF Anweisung
echo "Eingabe für weitere Bearbeitung!" #Hier wird nun AUsgegeben was die nächste Aktion ist, das Skripot kann also beliebig oft ausgeführt werden, durch drücken der Enter Taste am Ende
read #Auslesen der Eingabe, (Wenn leer wird alles als Eingabe gezählt und das Skript wird fortgeführt)
AnruferVorlage #Neustarten des Skriptes
Das ist der Code für die Suche nach dem Kunden bzw. der Datei.
Jetzt wollte ich mit:
auswahl=$(dialog --stdout --backtitle Hauptmenü --title Details --radiolist "Welches Skript möchtest du ausführen?" 20 80 20\ )
case "$auswahl" in
Kunden)
dialog --backtitle Umfrage --title Reaktion --msgbox "Kunde so und so wird bearbeitet" 15 40
.....
esac
Diesem Code eine Auswahl Oberfläche erstellen um per Pfeiltasten den Kunden auszuwählen.
Ist es möglich diese 2 Komponenten zu vereinen?