Codice: Seleziona tutto
#!/bin/bash
S1='#' # Imposta il valore della variabile contenente la stringa da sostituire.
S0='# Controlla>' # Imposta il valore della variabile contenente la stringa sostituita.
F0='</Controlla' # Imposta il valore della variabile contenente la stringa da aggiungere alla fine della riga modificata.
#
Fun1 () # Questa è la prima riga con cui si dichiara la funzione Fun1.
{ R1=${R0//$S1/$S0} # Mette in R1 il contenuto di R0 sostituendo i caratteri contenuti in $S1 con quelli contenuti in $S0.
RS0=${R1}${F0} # Aggiunge il contenuto della variabile $F0 alla fine della riga.
} # Questa è l'ultima riga in cui si dichiara la funzione Fun1.
#
echo "Lista Righe eventualmente modificate" > output.txt # Crea file contenente output
#
# Il ciclo WHILE legge le righe del file "input.txt" e le mette, una alla volta, nella variabile $R0
while read R0
do
if [[ ${R0} == *"${S1}"* ]] # Verifica se la variabile $R0 contiene $R0
then
Fun1 # Comando per far eseguire la funzione Fun1
else
RS0=${R0}
fi
echo $RS0 >> output.txt # Inserisce la riga nel file di testo
done < input.txt
exit 0
Codice: Seleziona tutto
lspci | awk '$2 == "Audio" {system("lspci -ks " $1)}' # Testo che potrebbe essere da verificare
00:01.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Kabini HDMI/DP Audio
Subsystem: ASUSTeK Computer Inc. Kabini HDMI/DP Audio
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel
00:14.2 Audio device: Advanced Micro Devices, Inc. [AMD] FCH Azalia Controller (rev 02)
Subsystem: ASUSTeK Computer Inc. FCH Azalia Controller
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel
Codice: Seleziona tutto
Lista Righe eventualmente modificate
lspci | awk '$2 == "Audio" {system("lspci -ks " $1)}' # Controlla> Testo che potrebbe essere da verificare</Controlla
00:01.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Kabini HDMI/DP Audio
Subsystem: ASUSTeK Computer Inc. Kabini HDMI/DP Audio
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel
00:14.2 Audio device: Advanced Micro Devices, Inc. [AMD] FCH Azalia Controller (rev 02)
Subsystem: ASUSTeK Computer Inc. FCH Azalia Controller
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel
Codice: Seleziona tutto
Lista Righe eventualmente modificate
lspci | awk '$2 == "Audio" {system("lspci -ks " $1)}' # Controlla> Testo che potrebbe essere da verificare</Controlla
00:01.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Kabini HDMI/DP Audio
Subsystem: ASUSTeK Computer Inc. Kabini HDMI/DP Audio
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel
00:14.2 Audio device: Advanced Micro Devices, Inc. [AMD] FCH Azalia Controller (rev 02)
Subsystem: ASUSTeK Computer Inc. FCH Azalia Controller
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel
Come devo modificare lo script per conservare l'indentazione?
Ringrazio sin d'ora chi mi risponderà.