muh
@ -5,22 +5,22 @@
|
|||||||
|
|
||||||
## Zusammensetzung der Modulnote (Leistungsbeurteilung):
|
## Zusammensetzung der Modulnote (Leistungsbeurteilung):
|
||||||
|
|
||||||
- 30% LB1 Bash-Kurs-Prüfung (selber wählbar am 3. oder 4. Modul-Tag )
|
- `30%` LB1 Bash-Kurs-Prüfung (selber wählbar am 3. oder 4. Modul-Tag )
|
||||||
- 70% LB2 Einzelaufgabe(n) mit vorgegebenen Definitionen.
|
- `70%` LB2 Einzelaufgabe(n) mit vorgegebenen Definitionen.
|
||||||
<br><br>[**Mögliche Aufgaben**](moegliche-LB2-AufgabenProjekte):
|
<br><br>[**Mögliche Aufgaben**](moegliche-LB2-AufgabenProjekte):
|
||||||
|
|
||||||
| Projekt | Punkte | Zusatz-<br>Bonus| Alleine-<br>Bonus | Aufgabenstellung |
|
| Projekt | Punkte | Zusatz-<br>Bonus| Alleine-<br>Bonus | Aufgabenstellung |
|
||||||
|---- |---- |---- |---- |---- |
|
|---- |---- |---- |---- |---- |
|
||||||
| **A**.) | 6 | | | [Dateien und Verzeichnisse anlegen](moegliche-LB2-AufgabenProjekte/A_verzeichnisse-und-dateien-anlegen)
|
| **A**.) | 6 | | | [Dateien und Verzeichnisse anlegen](moegliche-LB2-AufgabenProjekte/A_verzeichnisse-und-dateien-anlegen) |
|
||||||
| **B**.) | 7 | 3 | 1 | [Emailadressen und Brief erstellen](moegliche-LB2-AufgabenProjekte/B_emailadressen-erzeugen)
|
| **B**.) | 7 | 3 | 1 | [Emailadressen und Brief erstellen](moegliche-LB2-AufgabenProjekte/B_emailadressen-erzeugen) |
|
||||||
| **C**.) | 6 | 4 | 1 | [Systemleistung abfragen](moegliche-LB2-AufgabenProjekte/C_systemleistung-abfragen)
|
| **C**.) | 6 | 4 | 1 | [Systemleistung abfragen](moegliche-LB2-AufgabenProjekte/C_systemleistung-abfragen) |
|
||||||
| **D**.) | 5 | 5 | 1 | [APIs-Abfragen mit Datendarstellung](moegliche-LB2-AufgabenProjekte/D_api-abfragen-mit-datendarstellung)
|
| **D**.) | 5 | 5 | 1 | [APIs-Abfragen mit Datendarstellung](moegliche-LB2-AufgabenProjekte/D_api-abfragen-mit-datendarstellung) |
|
||||||
| **E**.) | 4 | 4 | 1 | [API abfragen mit Applikation](moegliche-LB2-AufgabenProjekte/E_api-abfragen-mit-applikation)
|
| **E**.) | 4 | 1 | 1 | [API abfragen mit Applikation](moegliche-LB2-AufgabenProjekte/E_api-abfragen-mit-applikation) |
|
||||||
| **F**.) | 8 | | 1 | [QR-Rechnungen erzeugen lassen](moegliche-LB2-AufgabenProjekte/F_qr-rechnungen-erzeugen)
|
| **F**.) | 8 | | 1 | [Aktuelles Wertschriften-Depot](moegliche-LB2-AufgabenProjekte/F_aktuelles-wertschriften-depot) |
|
||||||
| **G**.) | 32 | | 2 | [eBill von Handwerkerrechnungen](moegliche-LB2-AufgabenProjekte/G_ebill_handwerkerrechnungen)
|
| **G**.) | 8 | | 1 | [QR-Rechnungen erzeugen lassen](moegliche-LB2-AufgabenProjekte/G_qr-rechnungen-erzeugen) |
|
||||||
| **H**.) | 5-8 | + | 1 | [Automatisierte Installation](moegliche-LB2-AufgabenProjekte/H_automatisierte-Installation) |
|
| **H**.) | 5-8 | + | 1 | [Automatisierte Installation](moegliche-LB2-AufgabenProjekte/H_automatisierte-Installation) |
|
||||||
| **I**.) | 8 | | 1 | [Aktuelles Wertschriften-Depot](moegliche-LB2-AufgabenProjekte/I_aktuelles-wertschriften-depot)
|
| **I**.) | 32 | | 2 | [eBill von Handwerkerrechnungen](moegliche-LB2-AufgabenProjekte/I_ebill_handwerkerrechnungen) Dauert 16-22 Std Arbeit, muss vorher dem Lehrer angemeldet werden |
|
||||||
| **XX** | ? | | 1 | Weitere/eigene Projekte möglich. Z.B. ein Spiel/Game, Rätsel-Spiel, ...<br>oder API-Anbindung an Homegate (Wohnungssuche-Filter)<br>oder API-Anbindung an Verkehrsbetriebe, Tram-Haltestellen o.ä.<br>Punkte und Umfang sind mit der Lehrperson abzusprechen.
|
| **XX** | ? | | 1 | Weitere/eigene Projekte möglich. <br> Lassen Sie sich inspirieren von:<br>- [Bundesamt für Statistik BFS](https://www.bfs.admin.ch/bfs/de/home.html)<br>- [Statistik & Daten Kanton Zürich](https://www.zh.ch/de/politik-staat/statistik-daten.html)<br> API-Anbindung an Homegate (Wohnungssuche-Filter)<br>oder API-Anbindung an Verkehrsbetriebe, Tram-Haltestellen o.ä.<br>Punkte und Umfang sind mit der Lehrperson abzusprechen. |
|
||||||
|
|
||||||
**Zu beachten:**
|
**Zu beachten:**
|
||||||
```
|
```
|
||||||
@ -76,27 +76,60 @@
|
|||||||
Für die maximale LB2-Note ("6.0"), die 70% der Modulnote ausmacht,
|
Für die maximale LB2-Note ("6.0"), die 70% der Modulnote ausmacht,
|
||||||
<br>sind [Projektaufgabe(n)](moegliche-LB2-AufgabenProjekte) im Umfang von <mark>**38** Punkten</mark> nötig.
|
<br>sind [Projektaufgabe(n)](moegliche-LB2-AufgabenProjekte) im Umfang von <mark>**38** Punkten</mark> nötig.
|
||||||
|
|
||||||
|
`PE23f`
|
||||||
|
|
||||||
|Tag |Datum|Thema, Auftrag, Übung |
|
|Tag |Datum|Thema, Auftrag, Übung |
|
||||||
|----|-----|--------------------- |
|
|----|-----|--------------------- |
|
||||||
| 1 | Fr 23.02. | Einführung und Anleitung <br>**Beginn** mit dem Bash-Selbststudium und Installation einer Linux-Umgebung |
|
| 1 | Mo 13.05. | Einführung und Anleitung <br>**Beginn** mit dem Bash-Selbststudium und Installation einer Linux-Umgebung |
|
||||||
| 2 | Fr 01.03. | **Input** darüber, was an der **Bash-Prüfung** dran kommt.<br> Weiterarbeit mit dem Bash-Selbststudium |
|
| - | - - - | Pfingstmontag |
|
||||||
| 3 | Fr 08.03. | Input über **Scheduler/Crontab**.<br> Weiterarbeit mit dem Bash-Selbststudium.<br>Wer will, kann um 10:45 h (15:30 h) **Bash-Prüfung (a)** machen |
|
| 2 | Mo 27.05. | **Input** darüber, was an der **Bash-Prüfung** dran kommt.<br> Weiterarbeit mit dem Bash-Selbststudium |
|
||||||
| 4 | Fr 15.03. | Input **Projektaufgabe(n)**.<br>Beginn der Projektaufgabe(n) oder Bash-Studium.<br>Um 10:45 h (15:30 h) **Bash-Prüfung (b)** für den Rest |
|
| 3 | Mo 03.06. | Input über **Scheduler/Crontab**.<br> Weiterarbeit mit dem Bash-Selbststudium.<br>Wer will, kann um 10:45 h **Bash-Prüfung (a)** machen |
|
||||||
| 5 | Fr 22.03. | Input über **FTP** und **eMailing**.<br> Weiterarbeit an der Projektaufgabe(n) |
|
| 4 | Mo 10.06. | Input **Projektaufgabe(n)**.<br>Beginn der Projektaufgabe(n) oder Bash-Studium.<br>Um 10:45 h **Bash-Prüfung (b)** für den Rest |
|
||||||
| | Karfreitag| |
|
| 5 | Mo 17.06. | Input über **FTP** und **eMailing**.<br> Weiterarbeit an der Projektaufgabe(n) |
|
||||||
| 6 | Fr 05.04. | Input über **Textformatierung**.<br>Weiterarbeit an der Projektaufgabe(n) |
|
| 6 | Mo 24.06. | Input über **Textformatierung**.<br>Weiterarbeit an der Projektaufgabe(n) und **Projekt-Abgaben** |
|
||||||
| 7 | Fr 12.04. | Weiterarbeit an der Projektaufgabe(n) und <br>ab 09:00 **Projekt-Abgaben** |
|
| 7 | Mo 01.07. | Weiterarbeit an der Projektaufgabe(n) und <br>ab 09:00 **Projekt-Abgaben** |
|
||||||
| 8 | Fr 19.04. | Weiterarbeit an der Projektaufgabe(n) und <br>ab 09:00 **Projekt-Abgaben** |
|
| 8 | Mo 08.07. | Weiterarbeit an der Projektaufgabe(n) und <br>ab 09:00 **Projekt-Abgaben** |
|
||||||
| | Ferien | |
|
|
||||||
| | Ferien | |
|
|
||||||
| | Auffahrt | |
|
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
<hr>
|
<hr>
|
||||||
© Harald Müller, Feb 2024
|
|
||||||
|
`PE23c`
|
||||||
|
|
||||||
|
|Tag |Datum|Thema, Auftrag, Übung |
|
||||||
|
|----|-----|--------------------- |
|
||||||
|
| 1 | Do 16.05. | Einführung und Anleitung <br>**Beginn** mit dem Bash-Selbststudium und Installation einer Linux-Umgebung |
|
||||||
|
| 2 | Do 23.05. | **Input** darüber, was an der **Bash-Prüfung** dran kommt.<br> Weiterarbeit mit dem Bash-Selbststudium |
|
||||||
|
| 3 | Do 30.05. | Input über **Scheduler/Crontab**.<br> Weiterarbeit mit dem Bash-Selbststudium.<br>Wer will, kann um 15:30 h **Bash-Prüfung (a)** machen |
|
||||||
|
| 4 | Do 06.06. | Input **Projektaufgabe(n)**.<br>Beginn der Projektaufgabe(n) oder Bash-Studium.<br>Um 15:30 h **Bash-Prüfung (b)** für den Rest |
|
||||||
|
| 5 | Do 13.06. | Input über **FTP** und **eMailing**.<br> Weiterarbeit an der Projektaufgabe(n) |
|
||||||
|
| 6 | Do 20.06. | Input über **Textformatierung**.<br>Weiterarbeit an der Projektaufgabe(n) und **Projekt-Abgaben** |
|
||||||
|
| 7 | Do 27.06. | Weiterarbeit an der Projektaufgabe(n) und <br>ab 09:00 **Projekt-Abgaben** |
|
||||||
|
| 8 | Do 04.07. | Weiterarbeit an der Projektaufgabe(n) und <br>ab 09:00 **Projekt-Abgaben** |
|
||||||
|
| 9 | Do 11.07. | Weiterarbeit an der Projektaufgabe(n) und <br>ab 09:00 **Projekt-Abgaben** |
|
||||||
|
|
||||||
|
<br>
|
||||||
|
|
||||||
|
<hr>
|
||||||
|
|
||||||
|
`AP23d, PE23d`
|
||||||
|
|
||||||
|
|Tag |Datum|Thema, Auftrag, Übung |
|
||||||
|
|----|-----|--------------------- |
|
||||||
|
| 1 | Fr 17.05. | Einführung und Anleitung <br>**Beginn** mit dem Bash-Selbststudium und Installation einer Linux-Umgebung |
|
||||||
|
| 2 | Fr 24.05. | **Input** darüber, was an der **Bash-Prüfung** dran kommt.<br> Weiterarbeit mit dem Bash-Selbststudium |
|
||||||
|
| 3 | Fr 31.05. | Input über **Scheduler/Crontab**.<br> Weiterarbeit mit dem Bash-Selbststudium.<br>Wer will, kann um 10:45 h (15:30 h) **Bash-Prüfung (a)** machen |
|
||||||
|
| 4 | Fr 07.06. | Input **Projektaufgabe(n)**.<br>Beginn der Projektaufgabe(n) oder Bash-Studium.<br>Um 10:45 h (15:30 h) **Bash-Prüfung (b)** für den Rest |
|
||||||
|
| 5 | Fr 14.06. | Input über **FTP** und **eMailing**.<br> Weiterarbeit an der Projektaufgabe(n) |
|
||||||
|
| 6 | Fr 21.06. | Input über **Textformatierung**.<br>Weiterarbeit an der Projektaufgabe(n) |
|
||||||
|
| 7 | Fr 28.06. | Weiterarbeit an der Projektaufgabe(n) und <br>ab 09:00 **Projekt-Abgaben** |
|
||||||
|
| 8 | Fr 05.07. | Weiterarbeit an der Projektaufgabe(n) und <br>ab 09:00 **Projekt-Abgaben** |
|
||||||
|
| 9 | Fr 12.07. | Weiterarbeit an der Projektaufgabe(n) und <br>ab 09:00 **Projekt-Abgaben** |
|
||||||
|
|
||||||
|
<br>
|
||||||
|
|
||||||
|
<hr>
|
||||||
|
© Harald Müller, Apr 2024
|
||||||
|
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# M122 - Aufgabe
|
# M122 - Aufgabe
|
||||||
|
|
||||||
2023-03 MUH
|
2024-04 MUH
|
||||||
|
|
||||||
|
|
||||||
## System-Leistung abfragen
|
## System-Leistung abfragen
|
||||||
@ -22,20 +22,13 @@ Formattieren Sie alles in eine gut leserliche **Tabellen-Form**.
|
|||||||
|
|
||||||
Folgendes ist auszugeben:
|
Folgendes ist auszugeben:
|
||||||
|
|
||||||
- 1. Der Hostname des Systems
|
- 1. Die aktuelle Systemlaufzeit und aktuelle Systemzeit
|
||||||
- 2. Aktuelle IP-Adresse
|
- 2. Die Grösse des belegten und freien Speichers auf dem Dateisystem
|
||||||
- 3. Die Betriebssystemversion
|
- 3. Der Hostname imd IP-adresse des Systems
|
||||||
- 4. Der Modellname der CPU
|
- 5. Die Betriebssystemname und -version
|
||||||
- 5. Die Anzahl der CPU-Cores
|
- 6. Der Modellname der CPU und die Anzahl der CPU-Cores
|
||||||
- 6. Der gesamte und der genutze Arbeitsspeicher
|
- 7. Der gesamte und der genutze Arbeitsspeicher
|
||||||
- 7. Die Grösse des verfügbaren Speichers
|
- Trenner und Abschluss der Tabelle für die nächste Ausgabe
|
||||||
- 8. Die Grösse des freien Speichers
|
|
||||||
- 9. Die Gesamtgrösse des Dateisystems
|
|
||||||
- 10. Die Grösse des belegten Speichers auf dem Dateisystem
|
|
||||||
- 11. Die Grösse des freien Speichers auf dem Dateisystem
|
|
||||||
- 12. Die aktuelle Systemlaufzeit
|
|
||||||
- 13. Die aktuelle Systemzeit
|
|
||||||
- 14. Trenner für die nächste Ausgabe
|
|
||||||
|
|
||||||
**2.) Dateiausgabe wahlweise** (mit einem "switch" `-f`)
|
**2.) Dateiausgabe wahlweise** (mit einem "switch" `-f`)
|
||||||
|
|
||||||
@ -47,7 +40,7 @@ Gefordert ist die Ausgabe **wahlweise** direkt auf das
|
|||||||
<br>Datei **[YYYY-MM]-sys-[hostname].log** erzeugt werden.
|
<br>Datei **[YYYY-MM]-sys-[hostname].log** erzeugt werden.
|
||||||
<br>(Immer in die gleiche Datei schreiben. Das nennt man ein **"Log"**)
|
<br>(Immer in die gleiche Datei schreiben. Das nennt man ein **"Log"**)
|
||||||
|
|
||||||
Tipp: Benutzen Sie für den Timestamp `date '+%Y-%m-%d_%H%M'` bzw. `date '+%Y-%m'`
|
Tipp: Benutzen Sie für den Timestamp `date '+%Y-%m-%d'` bzw. `date '+%Y-%m'`
|
||||||
und für den Hostnamen `hostname` oder `uname -n` und den Befehl `df ` für Disk-Angaben.
|
und für den Hostnamen `hostname` oder `uname -n` und den Befehl `df ` für Disk-Angaben.
|
||||||
|
|
||||||
|
|
||||||
@ -70,9 +63,6 @@ Falls cron nicht läuft, können Sie es damit einschalten:
|
|||||||
|
|
||||||
Ihr Resultat könnte so in dieser Art aussehen (schöner ist besser):
|
Ihr Resultat könnte so in dieser Art aussehen (schöner ist besser):
|
||||||
|
|
||||||
Tipp: Benutzen Sie den `printf`-Befehl
|
|
||||||
|
|
||||||
|
|
||||||
| Text | Wert |
|
| Text | Wert |
|
||||||
|------|------|
|
|------|------|
|
||||||
| free disk space | 80 GB |
|
| free disk space | 80 GB |
|
||||||
@ -81,6 +71,9 @@ Tipp: Benutzen Sie den `printf`-Befehl
|
|||||||
| ... | ... |
|
| ... | ... |
|
||||||
| ... | ... |
|
| ... | ... |
|
||||||
|
|
||||||
|
Tipp: Benutzen Sie den [`printf`-Befehl](https://openbook.rheinwerk-verlag.de/shell_programmierung/shell_007_001.htm#RxxKap00700104004E721F034268)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<hr>
|
<hr>
|
||||||
|
|
||||||
@ -95,8 +88,8 @@ Tipp: Benutzen Sie den `printf`-Befehl
|
|||||||
| **6** | **Total** |
|
| **6** | **Total** |
|
||||||
| | |
|
| | |
|
||||||
| | Erweiterungsmöglichkeiten |
|
| | Erweiterungsmöglichkeiten |
|
||||||
|
| 2 | Darstellung auf einer Webseite (HTML -> als index.html in Ihr Verzeichnis, siehe Zugangsdaten oder auf Ihren Desktop auf /mnt/c/Users/nnnnn/Desktop ) für das Monitoring mit den Werten und zusätzlich einer Ampel-Darstellung grün/gelb/rot [**FTP-Zugangsdaten**](../../tools-technics/ftp-zugangsdaten.md)|
|
||||||
| 2 | Verschicken einer E-Mail wenn ein "Schwellwert" überschritten wird |
|
| 2 | Verschicken einer E-Mail wenn ein "Schwellwert" überschritten wird |
|
||||||
| 2 | Darstellung auf einer Webseite (HTML -> als index.html in Ihr Verzeichnis, siehe Zugangsdaten ) für das Monitoring mit den Werten und zusätzlich einer Ampel-Darstellung grün/gelb/rot [**FTP-Zugangsdaten**](../../tools-technics/ftp-zugangsdaten.md)|
|
|
||||||
|||
|
|||
|
||||||
| **1/2** | Halbierung der Punkte, wenn der gleiche Code schon mal (bei einem Kollegen) gesehen wurde |
|
| **1/2** | Halbierung der Punkte, wenn der gleiche Code schon mal (bei einem Kollegen) gesehen wurde |
|
||||||
|||
|
|||
|
||||||
|
@ -1,18 +1,16 @@
|
|||||||
# M122 - Aufgabe
|
# M122 - Aufgabe
|
||||||
|
|
||||||
2023-07 MUH
|
2024-04 MUH
|
||||||
|
|
||||||
## Applikation mit API-Abfrage
|
## Applikation mit API-Abfrage
|
||||||
|
|
||||||
|
|
||||||
Erstellen Sie ine Applikation bei der ich einen Betrag in CHF
|
Erstellen Sie ine Applikation bei der ich einen Betrag in CHF
|
||||||
eingeben kann. Und dann will ich eine Umrechnung haben in
|
dem Skript übergeben kann. Und dann will ich eine Umrechnung haben in
|
||||||
|
|
||||||
- Euro (EUR)
|
|
||||||
- US-Dollar (USD)
|
|
||||||
- Ethereum (ETH)
|
|
||||||
- Bitcoin (BTC)
|
|
||||||
|
|
||||||
|
- Euro (EUR) oder US-Dollar (USD)
|
||||||
|
- Ethereum (ETH) oder Bitcoin (BTC)
|
||||||
|
- und mind 2 weitere Währungen oder Coins nach Ihrer Wahl
|
||||||
|
|
||||||
Benutzen Sie dafür die aktuellen Kurse über eine API.
|
Benutzen Sie dafür die aktuellen Kurse über eine API.
|
||||||
|
|
||||||
@ -40,13 +38,10 @@ https://polygon.io/pricing
|
|||||||
|
|
||||||
| Punkte | Beschreibung |
|
| Punkte | Beschreibung |
|
||||||
|--------|--------------|
|
|--------|--------------|
|
||||||
| 1 | Eine Ablaufskizze (activity diagram) wird der Lehrperson vorgelegt |
|
|
||||||
| 1 | Download der aktuellen Kurse |
|
| 1 | Download der aktuellen Kurse |
|
||||||
| 1 | Abfragesystem, Benutzerführung |
|
| 1 | Gute und die "schöne" (tabellarische) Darstellung der Daten `mit printf()` |
|
||||||
| 1 | Gute und die "schöne" (tabellarische) Darstellung der Daten |
|
| 2 | Speicherung der "alten" Daten und Vergleich mit den "neuen" Daten |
|
||||||
| **4** | **Total** |
|
| **4** | **Total** |
|
||||||
| 1 | Bonuspunkt für Speicherung der "alten" Daten und Vergleich mit den "neuen" Daten |
|
|
||||||
| 1 | Bonuspunkt für der Vergleiche |
|
|
||||||
| 1 | Bonuspunkt für Farben in der Darstellung (rot für "runter", grün für "hoch") |
|
| 1 | Bonuspunkt für Farben in der Darstellung (rot für "runter", grün für "hoch") |
|
||||||
| | |
|
| | |
|
||||||
| **1/2** | Halbierung der Punkte, wenn der gleiche Code schon mal (bei einem Kollegen) gesehen wurde |
|
| **1/2** | Halbierung der Punkte, wenn der gleiche Code schon mal (bei einem Kollegen) gesehen wurde |
|
||||||
|
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 30 KiB |
Before Width: | Height: | Size: 43 KiB After Width: | Height: | Size: 43 KiB |
Before Width: | Height: | Size: 196 KiB After Width: | Height: | Size: 196 KiB |
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 26 KiB |
Before Width: | Height: | Size: 118 KiB After Width: | Height: | Size: 118 KiB |
@ -5,6 +5,25 @@
|
|||||||
|
|
||||||
# Tools & Technics
|
# Tools & Technics
|
||||||
|
|
||||||
|
## Scheduler "Cron"
|
||||||
|
|
||||||
|
Wenn Sie unter Windows Subsystem for Linux (WSL) arbeiten, ist es hoch wahrscheinlich, dass `cron` nicht eingeschaltet ist. Prüfen Sie:
|
||||||
|
|
||||||
|
sudo service cron status
|
||||||
|
sudo service cron start
|
||||||
|
|
||||||
|
Schauen, was in cron eingestellt ist (für alle user des Systems):
|
||||||
|
|
||||||
|
sudo crontab -l (l = list)
|
||||||
|
sudo crontab -e (e = edit)
|
||||||
|
|
||||||
|
Bearbeiten Sie den cron für den aktuellen user:
|
||||||
|
|
||||||
|
crontab -e
|
||||||
|
|
||||||
|
|
||||||
|
Funktionsweise und Einstellungen [https://de.wikipedia.org/wiki/Cron](https://de.wikipedia.org/wiki/Cron)
|
||||||
|
|
||||||
## FTP
|
## FTP
|
||||||
|
|
||||||
- [https://www.howtoforge.com/tutorial/how-to-use-ftp-on-the-linux-shell/](https://www.howtoforge.com/tutorial/how-to-use-ftp-on-the-linux-shell/)
|
- [https://www.howtoforge.com/tutorial/how-to-use-ftp-on-the-linux-shell/](https://www.howtoforge.com/tutorial/how-to-use-ftp-on-the-linux-shell/)
|
||||||
|