Wie schneide ich Text aus einer Datei aus und ersetze ihn durch Text in einer anderen Datei?

Wie schneide ich Text aus einer Datei aus und ersetze ihn durch Text in einer anderen Datei?

Ich habe eine Textdatei,mac.txt, mit einer Zeile, die wie folgt aussieht:

4a:38:61:e1:71:7c

... und ich habe ein Bash-Skript,Maske.sh, das ändert einfach meine MAC-Adresse:

#!/bin/bash

sudo ifconfig wlan0 down
sudo macchanger -m 16:dx:0b:rc:4a:32 wlan0
sudo ifconfig wlan0 up

Und ich versuche herauszufinden, wie man ein Bash-Skript schreibt, das die MAC-Adresse kopiert vonmac.txtund ersetzen Sie es durch die MAC-Adresse inMaske.sh, sodass es folgendermaßen aussieht:

#!/bin/bash

sudo ifconfig wlan0 down
sudo macchanger -m 4a:38:61:e1:71:7c wlan0
sudo ifconfig wlan0 up

Ich habe ein paar Variationen mit sed, Ausschneiden und Einfügen ausprobiert, aber es ist mir zu peinlich, zu zeigen, was ich versucht habe. Ich bin noch ziemlich neu darin.

Antwort1

Alsschrodigerscatcuriositykommentiert, könnten Sie die Befehlsersetzung von Bash verwenden:

sudo macchanger -m $(cat mac.txt) wlan0

catoder, da Sie es nur auf einer Datei verwenden :

sudo macchanger -m $(< mac.txt) wlan0

Erläutert werden diese in denBash-Handbuchunter Befehlssubstitution.

verwandte Informationen