Benvenuto in Thunderbird Add-ons.
Aggiungi nuove funzionalità e stili per rendere Thunderbird veramente tuo.
ChiudiTiger19
Informazioni utente
Nome | Tiger19 |
---|---|
Utente da | Luglio 28, 2010 |
Numero di componenti aggiuntivi sviluppati | 0 componenti aggiuntivi |
Media delle valutazioni sui componenti aggiuntivi di questo sviluppatore. | Nessun voto |
Le mie recensioni
Bank Search Finanz Suche Finance Directory
Assegnate 3 su 5 stelle
Sichten (views):
a)
Create view Sicht_a (KFZNR, anzahl_reservierungen)
as Select f.KFZNR, Count(r.fnr)
from fahrzeuge f left outer join reservierung r
on f.fnr = r.fnr
group by f.kfznr order by 1;
Select * from Sicht_a
b)
Create view Sicht_b (Name)
as Select kname
from kunden
where knr Not IN (Select knr from reservierung)
And knr Not In (Select knr from vermietung);
Select * from Sicht_b;
c)
Create view Sicht_c (fnr, bis, abholung)
as Select distinct f.fnr, v.bis, r.abholung
from fahrzeuge f inner join vermietung v
on f.fnr = v.fnr
inner join reservierung r
on f.fnr = r.fnr
where v.bis > r.abholung;
Select * from Sicht_c
Bank Search Finanz Suche Finance Directory
Assegnate 3 su 5 stelle
Trigger:
Create or replace trigger t1
after insert or update of abreise, znr
on belegung
for each row
declare
an date;
cursor otto is
Select anreise from reservierung
where znr =:new.znr;
begin
open otto;
loop
fetch otto into an;
exit when otto%notfound;
if an > :new.abreise then
raise_application_error(-20111, 'Fehler');
end if;
end loop;
close otto;
end;
Bank Search Finanz Suche Finance Directory
Assegnate 3 su 5 stelle
Hotel1:
import java.sql.*;
public class Hotelverwaltung_Reservierung
{
public static void main(String[] args) {
Driver treiber = null;
Connection verbindung = null;
Statement befehl = null;
ResultSet daten = null;
String datenbank = "jdbc:oracle:thin:@dbserver2:1521:ora10",kennung ="bbsh8abe",passwort="RKa7zs";
try {
treiber = new oracle.jdbc.driver.OracleDriver();
DriverManager.registerDriver(treiber);
verbindung = DriverManager.getConnection(datenbank,kennung,passwort);
befehl = verbindung.createStatement();
//################################################################################
// Hier die Lösung der Aufgabe einfügen
daten = befehl.executeQuery("Select r.knr, z.znr, r.anreise, r.abreise from h_zimmer z left join h_reservierung r on z.znr = r.znr order by z.znr, r.anreise");
//leere Menge prüfen:
if(!daten.next())
System.out.println("Leere Menge");
else do {
System.out.println(daten.getInt(1));
//Nullbehandlung:
int knr = daten.getInt(2);
if (daten.wasNull())
System.out.println("keine Reservierung!");
else
System.out.println(knr);
} while(daten.next());
daten.close();
//################################################################################
}
catch (SQLException sql){
do {
System.out.println(sql.toString());
System.out.println("Fehler: "+ sql.getErrorCode());
}while (sql.getNextException() != null);
}
catch (Exception e){ System.out.println("Fehler: " + e);}
finally {try{
verbindung.close();}
catch (Exception e){ System.out.println("Fehler: " + e);}
}
}
}
Bank Search Finanz Suche Finance Directory
Assegnate 3 su 5 stelle
Hotel2:
import java.sql.*;
public class Hotelverwaltung_Rabatt
{
public static void main(String[] args) {
Driver treiber = null;
Connection verbindung = null;
Statement befehl = null;
Statement befehl2 = null; //neue Variable erstellen!
ResultSet daten = null;
ResultSet daten2 = null; //Neue Variable erstellen!
String datenbank = "jdbc:oracle:thin:@dbserver2:1521:ora10",kennung ="bbsh8abe",passwort="RKa7zs";
try {
treiber = new oracle.jdbc.driver.OracleDriver();
DriverManager.registerDriver(treiber);
verbindung = DriverManager.getConnection(datenbank,kennung,passwort);
befehl = verbindung.createStatement();
befehl2 = verbindung.createStatement(); //neues Statement erstellen!
//################################################################################
// Hier die Lösung der Aufgabe einfügen
verbindung.setAutoCommit(false);
daten = befehl.executeQuery("Select knr from h_kunde where knr not in (select knr from h_reservierung)");
//leere Menge prüfen:
if(!daten.next())
System.out.println("Alle Kunden haben Reservierungen");
else do {
//Nullbehandlung:
int knr = daten.getInt(1);
daten2 = befehl2.executeQuery("Select rabatt from h_sonderangebote Where knr = " + knr);
if (!daten2.next()){
//insert
int anzahl = befehl2.executeUpdate("insert into h_sonderangebote values (" + knr + ",10)");
}
else{
//update
int anzahl = befehl2.executeUpdate("update h_sonderangebote set rabatt = 10 where knr = " + knr + " and rabatt < 10");
}
}while(daten.next());
daten.close();
verbindung.commit();
//################################################################################
}
catch (SQLException sql){
verbindung.rollback();
do {
System.out.println(sql.toString());
System.out.println("Fehler: "+ sql.getErrorCode());
verbindung.rollback();
}while (sql.getNextException() != null);
}
catch (Exception e){ System.out.println("Fehler: " + e);}
finally {try{
verbindung.close();}
catch (Exception e){ System.out.println("Fehler: " + e);}
}
}
}
Bank Search Finanz Suche Finance Directory
Assegnate 3 su 5 stelle
Auto1:
import java.sql.*;
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class Vorlage {
public static void main(String[] args) {
Driver treiber = null;
Connection verbindung = null;
Statement befehl = null;
ResultSet daten = null;
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
verbindung = DriverManager.getConnection(
"jdbc:oracle:thin:@dbserver2:1521:ora10", "bbsh8abe",
"RKa7zs");
System.out.println("DB Verbindung hergestellt");
befehl = verbindung.createStatement();
//#################################################################################
// Hier die Lösung der Aufgabe einfügen
System.out.print ("Bitte Kundennummer angeben: ");
int knr = Eingabe.readInt();
daten = befehl.executeQuery("Select k.kname, f.kfznr, r.abholung, r.rueckgabe from Kunden k inner join Reservierung r on k.knr = r.knr inner join Fahrzeuge f on f.fnr = r.fnr where k.knr = " + knr + "order by 3");
//leere Menge prüfen:
if(!daten.next())
System.out.println("Leere Menge");
else do {
System.out.println(daten.getString(1) + "\n" + daten.getString(2) + "\n" + daten.getString(3) + "\n" + daten.getString(4));
//Nullbehandlung:
if (daten.wasNull())
System.out.println("noch keine Reservierungen!");
else
System.out.println(knr);
} while(daten.next());
daten.close();
//##################################################################################
} catch (SQLException sql) {
do {
System.out.println(sql.toString());
System.out.println("Fehler: " + sql.getErrorCode());
} while (sql.getNextException() != null);
} catch (Exception e) {
System.out.println("Fehler: " + e);
} finally {
try {
verbindung.close();
} catch (Exception e) {
System.out.println("Fehler: " + e);
}
}
}
}
Bank Search Finanz Suche Finance Directory
Assegnate 3 su 5 stelle
Auto2:
import java.sql.*;
public class Vorlage2 {
public static void main(String[] args) throws SQLException {
Driver treiber = null;
Connection verbindung = null;
Statement befehl = null;
ResultSet daten = null;
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
verbindung = DriverManager.getConnection(
"jdbc:oracle:thin:@dbserver2:1521:ora10", "bbsh8abe",
"RKa7zs");
System.out.println("DB Verbindung hergestellt");
befehl = verbindung.createStatement();
//#################################################################################
// Hier die Lösung der Aufgabe einfügen
verbindung.setAutoCommit(false);
System.out.print ("Bitte defektes Auto angeben fnr: ");
int fnralt = Eingabe.readInt();
daten = befehl.executeQuery("Select f.fnr, f.beschreibung, f.preis from Fahrzeuge f Where not EXISTS (Select v.fnr from vermietung v where f.fnr = v.fnr)");
if (!daten.next()) {
System.out.println("Keine Ersatzfahrzeuge vorhanden!");
daten = befehl.executeQuery("Select k.kname from Kunden k inner join Vermietung v on k.knr = v.knr where f.fnr = " + fnralt);
if (daten.next()) {
System.out.println(daten.getString(1));
int anzahl = befehl.executeUpdate("delete from vermietung where fnr = " + fnralt);
}
}
else {
int fnrneu = daten.getInt(1);
do {
System.out.println(daten.getString(1) + "\n" + daten.getString(2) + "\n" + daten.getString(3));
} while(daten.next());
int anzahl = befehl.executeUpdate("update vermietung set fnr = " + fnrneu + " where fnr = " + fnralt);
}
daten.close();
verbindung.commit();
//##################################################################################
} catch (SQLException sql) {
verbindung.rollback();
do {
System.out.println(sql.toString());
System.out.println("Fehler: " + sql.getErrorCode());
} while (sql.getNextException() != null);
} catch (Exception e) {
System.out.println("Fehler: " + e);
} finally {
try {
verbindung.close();
} catch (Exception e) {
System.out.println("Fehler: " + e);
}
}
}
}
Wolfram MathWorld
Assegnate 3 su 5 stelle
generate-csv.js :
/*
Aufgabe : generate-csv
*/
var FsObj = WScript.CreateObject("Scripting.FileSystemObject");
var FileObj = FsObj.GetFile("G:\\ben\\Skripte\\anwend.log");
var st = FileObj.OpenAsTextStream(1);
WScript.Echo(st.ReadLine());
while (!st.AtEndOfStream)
{
var Buchstabe = (st.Read(1));
var FsObj = WScript.CreateObject("Scripting.FileSystemObject");
var FileName = "C:\\temp\\error.log";
var FileName1 = "C:\\temp\\warn.log";
var FileName2 = "C:\\temp\\info.log";
var FileObj, DateiStream;
//Fehler:
if (Buchstabe == "F") {
if ( FsObj.FileExists(FileName)) {
FileObj = FsObj.GetFile(FileName);
DateiStream = FileObj.OpenAsTextStream(8);
}
else {
DateiStream = FsObj.CreateTextFile(FileName, false, false);
// Hinweis: CreateTextFile enthält ein implizites Getfile mit
// OpenAsTextStream, so dass sofort ein Stream verfügbar ist.
}
DateiStream.WriteLine("PC01-11 " + "\t" + Buchstabe + st.ReadLine());
DateiStream.Close();
}
//Warnung
if (Buchstabe == "W") {
if ( FsObj.FileExists(FileName1)) {
FileObj = FsObj.GetFile(FileName1);
DateiStream = FileObj.OpenAsTextStream(8);
}
else {
DateiStream = FsObj.CreateTextFile(FileName1, false, false);
// Hinweis: CreateTextFile enthält ein implizites Getfile mit
// OpenAsTextStream, so dass sofort ein Stream verfügbar ist.
}
DateiStream.WriteLine("PC01-11 " + "\t" + Buchstabe + st.ReadLine());
DateiStream.Close();
}
//Info
//.................
}
Wolfram MathWorld
Assegnate 3 su 5 stelle
gruppen-csv:
var FsObj = WScript.CreateObject("Scripting.FileSystemObject");
var FileObj = FsObj.GetFile("G:\\temp\\gruppen.txt");
var st = FileObj.OpenAsTextStream(1);
WScript.Echo(st.ReadLine());
while (!st.AtEndOfStream)
{
var FsObj = WScript.CreateObject("Scripting.FileSystemObject");
var FileName = "G:\\temp\\gruppe.csv";
var FileObj, DateiStream;
st.Skip(3);
var Gruppe = (st.Read(6));
var Typ = (st.Read(18));
var Anzeige = (st.Read(8));
if ( FsObj.FileExists(FileName)) {
FileObj = FsObj.GetFile(FileName);
DateiStream = FileObj.OpenAsTextStream(8);
}
else {
DateiStream = FsObj.CreateTextFile(FileName, false, false);
// Hinweis: CreateTextFile enthält ein implizites Getfile mit
// OpenAsTextStream, so dass sofort ein Stream verfügbar ist.
}
DateiStream.WriteLine("Gruppennamen: Typ: Anzeigenamen: ");
DateiStream.WriteLine("\t" + Gruppe + ";" + Typ + ";" + Anzeige + st.ReadLine());
DateiStream.Close();
}
Wolfram MathWorld
Assegnate 3 su 5 stelle
fileservice:
var file1 = WScript.CreateObject("Scripting.FileSystemObject");
var file3 = WScript.CreateObject("Scripting.FileSystemObject");
var file2 = file1.GetFile("G:\\temp\\a.txt");
var file4 = file3.GetFile("G:\\temp\\b.txt");
file2.Name;
file2.DateLastModified;
WScript.Echo("Auf die Datei " + file2.Name + "wurde am " + file2.DateLastModified + "zuletzt zugeriffen.");
WScript.Echo("Auf die Datei " + file4.Name + "wurde am " + file4.DateLastModified + "zuletzt zugeriffen.");
Wolfram MathWorld
Assegnate 3 su 5 stelle
leer.js :
var argObj = WScript.Arguments;
if (argObj.length == 0) {
WScript.Echo("Bitte vollstaendige Pfadangabe!");
}
else {
var Verz = argObj.item(0);
var FsObj = WScript.CreateObject("Scripting.FileSystemObject");
if (FsObj.FolderExists(Verz)) {
var FolderObj = FsObj.GetFolder(Verz);
if (FolderObj.Size == 0) {
WScript.Echo("Das Verzeichnis ist leer!");
}
else {
var File = new Enumerator(FolderObj.files);
WScript.Echo("Das Verzeichnis existiert!");
WScript.Echo("Name des Ordners: " + FolderObj.Name);
for (; !File.atEnd(); File.moveNext()) {
WScript.Echo("Name der Dateien: " + File.item().Name);
}
}
}
else {
WScript.Echo("Das Verzeichnis existiert nicht!");
}
}
Wolfram MathWorld
Assegnate 3 su 5 stelle
aktuell.js:
var argObj = WScript.Arguments;
var FsObj = WScript.CreateObject("Scripting.FileSystemObject");
var ordner = FsObj.GetFolder(".");
var EnumObj = new Enumerator(ordner.Files); //Enumerator über alle Dateien erstellen.
EnumObj.moveFirst();
var wert = '';
if (argObj.item(0) == "txt")
{
while(EnumObj.atEnd() == false)
{
wert = EnumObj.item() + " "; //Vergleich der Dateien durch Stringvergleich
var pfadteile = wert.split(".");
var filename = pfadteile[pfadteile.length-1];
filename = filename.substr(0,3)
if (filename=="txt")
{
WScript.Echo("Die alle .txt Dateien: "+wert+"\n");
}
EnumObj.moveNext(); //Dateien-Auflistung aufzählen.
}
}
Wolfram MathWorld
Assegnate 3 su 5 stelle
Festplatten Report:
/*
Erstellen Sie ein WSH-Script namens lwreport.js,
das im aktuellen Verzeichnis eine csv-Datei lwreport.csv mit Infos
über alle vorhandenen Laufwerke füllt.
Der Name der Datei soll als Parameter übergeben werden.
Die erste Zeile der Datei enthält entsprechende Spaltenüberschriften.
Die Tabelle soll dann folgende Informationen umfassen:
- den Laufwerksbuchstaben,
- die Art des Laufwerks,
- die Art des Filesystems,
- die Seriennummer sowie
- den freien Speicherplatz in GB mit einer Nachkommastelle
*/
var FsObj = WScript.CreateObject("Scripting.FileSystemObject");
var pruef = new Enumerator(FsObj.Drives);
var argsObj = WScript.Arguments;
var FileName = argsObj.item(0);
var FileObj, DateiStream;
var ergebnis1;
//Datei und Überschrift erzeugen:
if ( FsObj.FileExists(FileName))
{
FileObj = FsObj.GetFile(FileName);
DateiStream = FileObj.OpenAsTextStream(8);
}
else
{
DateiStream = FsObj.CreateTextFile(FileName, false, false);
// Hinweis: CreateTextFile enthält ein implizites Getfile mit
// OpenAsTextStream, so dass sofort ein Stream verfügbar ist.
}
DateiStream.WriteLine("Laufwerksbuchstabe: Art des Laufwerks: Dateisystemtyp: Nummer des Mediums: Freier Speicherplatz in GB: ");
while (!pruef.atEnd())
{
if (pruef.item().DriveType != 4 && pruef.item().DriveType != 1)
{
var DObj = pruef.item();
WScript.Echo("Laufwerksbuchstabe: " + DObj.DriveLetter); // Schreibt zum Vergleich auf stdout!
WScript.Echo("Art des Laufwerks: " + DObj.DriveType);
WScript.Echo("Dateisystemtyp: "+ DObj.FileSystem);
WScript.Echo("Nummer des Mediums: " + DObj.SerialNumber);
WScript.Echo("Freier Speicherplatz in Byte: " + DObj.FreeSpace);
if (DObj.FreeSpace > 1024)
{
ergebnis1 = DObj.FreeSpace / 1024/1024/1024;
var ergebnis2 = ergebnis1 * 10;
var ergebnis3 = Math.round(ergebnis2);
var ergebnis4 = ergebnis3 / 10;
WScript.Echo("Freier Speicherplatz in GB: " + ergebnis4);
}
//In die Datei schreiben:
DateiStream.WriteLine(DObj.DriveLetter+";"+DObj.DriveType+";"+DObj.FileSystem+";"+DObj.SerialNumber+";"+ergebnis4);
}
else
{
WScript.Echo("Keine CD oder Diskette im Laufwerk!");
}
pruef.moveNext();
}
DateiStream.Close();
Wolfram MathWorld
Assegnate 3 su 5 stelle
Argument: Bool:
/*
Entwickeln Sie eine JScript-Function, die die Argumentliste des Scripts nach Optionen durchsucht.
Optionen werden bei Windows-Programmen oft mit einem vorangestellten Slash gekennzeichnet
(Bsp.: dir /p) und bei Unix mit einem Dash (Bsp.: ls -l) oder
in der langen Version mit zwei Dashes (Bsp.: who --count).
Dabei ist zu unterscheiden zwischen Script-Optionen,
die nur vorhanden sein können (oder auch nicht; true/false) und
solchen, die nach einem Schlüsselwort oder
Schlüsselzeichen einen Wert erwarten (Bsp.: cut -c1).
*/
// Dieses Skript durchsucht die Argumentliste des Scripts nach der Option die mitgegeben wurden.
var argsobj = WScript.Arguments //Ist ein Collection ähnlich Array!
var i;
for (i = 0; i < argsobj.length; i++) //Durchläuft die Argumentenliste.
{
if (CBool(argsobj(i)))
{
WScript.Echo("Argument ist: " + argsobj(i));
}
else
{
WScript.Echo("kein Argument vorhanden!");
}
}
function CBool(argobj) //Funktion boolean prüft, ob an der ersten Stelle ein / vorranden ist.
{
if (argobj.search("/") == 0)
{
return true;
}
else
{
return false;
}
}
Wolfram MathWorld
Assegnate 3 su 5 stelle
kgw Ordner:
// Dieses Skript zeigt alle Ordner im aktuellem Verzeichnis die mit dem Namen kgw beginnen.
var FsObj = WScript.CreateObject("Scripting.FileSystemObject");
var ordner = FsObj.GetFolder(".");
var EnumObj = new Enumerator(ordner.SubFolders); //Enumerator über alle Ordner erstellen.
EnumObj.moveFirst();
var wert = '';
while(EnumObj.atEnd() == false)
{
wert = EnumObj.item() + " "; //Vergleich der Ordner durch Stringvergleich
var pfadteile = wert.split("\\");
var ordnername = pfadteile[pfadteile.length-1];
ordnername = ordnername.substr(0,3)
if (ordnername=="kgw")
{
WScript.Echo("Die kgw Ordner: "+wert+"\n");
}
EnumObj.moveNext(); //Ordner-Auflistung aufzählen.
}
/*
//Ein Dialogfenster öffnet sich und
//durch die Bestätigug des OK Buttons werden alle kgw Ordner angezeigt.
//Die drei Ordner kgw werden angezeigt, das sie vorhanden sind.
*/
Wolfram MathWorld
Assegnate 3 su 5 stelle
platz.js:
/*
Schreiben Sie ein Script platz.js, das als Argument die Optionen /f oder /w übergeben bekommt.
* Bei Aufruf platz.js /f soll der zur Verfügung stehende Plattenplatz der lokalen Platten
ausgegeben werden (das Format bestimmen Sie selbst).
* Bei Aufruf platz.js /w soll das für die eingelegten Wechselmedien erfolgen.
* Wenn keine der Optionen mitgegeben werden, wird der Gesamtplatz berechnet.
*/
var argObj = WScript.Arguments;
var FsObj = WScript.CreateObject("Scripting.FileSystemObject");
var pruef = new Enumerator(FsObj.Drives);
if (argObj.length == 0)
{
while (!pruef.atEnd())
{
if (pruef.item().DriveType != 4)
{
WScript.Echo("Aktives Laufwerk: " + pruef.item().DriveLetter)
WScript.Echo("Größe in Byte: " + pruef.item().TotalSize);
}
else
{
WScript.Echo("CD Laufwerk hat keine Größe (keine CD im Laufwerk)");
}
pruef.moveNext();
}
}
else if (argObj.item(0) == "/w" || argObj.item(0) == "/W")
{
WScript.Echo("Wechseldatenträger");
while (!pruef.atEnd())
{
if (pruef.item().DriveType ==1)
{
WScript.Echo("Aktives Laufwerk: " + pruef.item().DriveLetter);
WScript.Echo("Größe in Byte: " + pruef.item().TotalSize);
}
pruef.moveNext();
}
}
else if (argObj.item(0) == "/f" || argObj.item(0) == "/F")
{
WScript.Echo("Festplatte");
while (!pruef.atEnd())
{
if (pruef.item().DriveType ==2)
{
WScript.Echo("Aktives Laufwerk: " + pruef.item().DriveLetter);
WScript.Echo("Größe in Byte: " + pruef.item().TotalSize);
}
pruef.moveNext();
}
}
The Unix and Linux Forums (unix.com)
Assegnate 3 su 5 stelle
fileservice Platzverbrauch:
#Aufgabe: fileservice
echo "Sollen links oder Platzverbrauch gewaehlt werden? links oder Platz"
read ENTSCHEIDUNG
if [ "$ENTSCHEIDUNG" == "links" ]; then
echo "Sollen Hardlinks erstellt werden? ja oder nein"
read ENTSCHEIDUNG
if [ "$ENTSCHEIDUNG" == "ja" ]; then
mkdir hardlinks
cd hardlinks
ln ../"$1"
else
echo "Keine Aenderung vorgenommen!"
fi
echo "Sollen Symbolische Links erstellt werden? ja oder nein"
read ENTSCHEIDUNG
if [ "$ENTSCHEIDUNG" == "ja" ]; then
mkdir ../symlinks
cd ../symlinks
ln -s ../"$1"
else
echo "Keine Aenderung vorgenommen!"
fi
else
echo "Soll der Platzverbrauch berechnet werden? ja oder nein"
read ENTSCHEIDUNG
if [ "$ENTSCHEIDUNG" == "ja" ]; then
ls -s "$1" | head -n1
else
echo "Keine Aenderung vorgenommen!"
fi
fi
exit
The Unix and Linux Forums (unix.com)
Assegnate 3 su 5 stelle
fileservice Datei:
#Aufgabe: fileservice1
echo "Info ueber Dateien"
#Datei
DATEI=$(ll $1 | tr -s " " | cut -f9 -d" ")
#Datum
ERGEBNIS=$(ll $1 | tr -s " " | cut -f7 -d" ")
#Ausgabe:
echo "Auf die Datei $DATEI wurde am $ERGEBNIS zuletzt zugeriffen."
exit
The Unix and Linux Forums (unix.com)
Assegnate 3 su 5 stelle
muster:
#Aufgabe: Musterbaum
# 3 Aufgabe muster
WERRUFTAUF=$(whoami)
USER=$(echo $WERRUFTAUF)
#Nachname bestimmen:
NACHNAME=$(ypcat passwd | grep "$USER"| cut -d ";" -f1 | cut -d ":" -f5 | sort)
echo "$NACHNAME"
#Verzeichnis erstellen:
mkdir /tmp/"$NACHNAME"
#Info´s erstellen:
USER="$(finger @ux-02)"
PROZESSE="$(ps -e)"
LETZTE="$(last)"
#Speichern in Dateien:
echo "$USER" >> /tmp/"$NACHNAME"/ux-02-userliste
echo "$PROZESSE" >> /tmp/"$NACHNAME"/"$HOST-prozessliste"
echo "$LETZTE" >> /tmp/"$NACHNAME"/lastliste
#Link anlegen:
cd /tmp/"$NACHNAME"
ln -s /bin/ls link1 # -s Option für symbolische links!
ln -s /bin/rm link2
ln -s /bin/mv link3
echo "Sollen Hardlinks erstellt werden? ja oder nein"
read ENTSCHEIDUNG
if [ "$ENTSCHEIDUNG" == "ja" ]; then
mkdir hardlinks
cd hardlinks
ln /tmp/"$NACHNAME"/ux-02-userliste link1
ln /tmp/"$NACHNAME"/"$HOST-prozessliste" link2
ln /tmp/"$NACHNAME"/lastliste link3
else
echo "Keine Aenderung vorgenommen!"
fi
echo "Sollen Symbolische Links erstellt werden? ja oder nein"
read ENTSCHEIDUNG
if [ "$ENTSCHEIDUNG" == "ja" ]; then
mkdir ../symlinks
cd ../symlinks
ln -s /tmp/"$NACHNAME"/ux-02-userliste link1
ln -s /tmp/"$NACHNAME"/"$HOST-prozessliste" link2
ln -s /tmp/"$NACHNAME"/lastliste link3
else
echo "Keine Aenderung vorgenommen!"
fi
exit
The Unix and Linux Forums (unix.com)
Assegnate 3 su 5 stelle
liste:
#Aufgabe: Klassenliste
# 1. Aufgabe liste
if [ "$1" = "" ]; then
echo "Bitte Klassenkuerzel als Parameter mitgeben!"
exit
fi
#########################################################################
ERGEBNIS="$1"
echo "$ERGEBNIS"
if [ "$1" == "$(ypcat passwd | cut -c1-6 | grep "$1" | uniq)" ]; then
echo "Klassenkuerzel existiert!"
else
echo "Klassenkuerzel nicht vorhanden!"
ERGEBNIS=$(whoami)
fi
#########################################################################
#Benutzerkürzel:
benutzerkuerzel=$(ypcat passwd | grep "$ERGEBNIS"| cut -d ":" -f5 | sort)
echo "$benutzerkuerzel"
exit
The Unix and Linux Forums (unix.com)
Assegnate 3 su 5 stelle
namenliste:
#Aufgabe: Namenliste
# 4. Aufgabe namenliste
#Welche Mitarbeiter waren noch nie angemeldet(Userkennung)
NEVER=$(lastlog | grep ":" | cut -f1 -d " " | grep "bib")
#echo "$NEVER"
ERGEBNIS=$(ypcat passwd | grep "$NEVER" | cut -d ":" -f5 | sort -k2)
echo "$ERGEBNIS"
exit
Per creare una tua raccolta devi avere un account per Mozilla Add-ons.