Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Bash Escaping läuft nicht rund

Frage Entwicklung Batch & Shell

Mitglied: marinux

marinux (Level 2) - Jetzt verbinden

13.12.2013 um 10:57 Uhr, 1547 Aufrufe

Hallo,

ich benutze unter Debian6 die Standard-Shell: GNU bash, version 4.1.5

Dort habe ich folgendes Problem in einem Script, welches mit rrdtool eine Graphik erzeugen soll. In diesem Script soll dynamisch der Kommandozeilenaufruf dazu erweitert werden mit der Variablen $GRAPH

01.
for i in ${!RRAs[*]} 
02.
do 
03.
 
04.
GRAPH="${GRAPH}  DEF:${RRAs[$i]}=${LOG_PATH}/${CLIENT}_data.rrd:${RRAs[$i]}:AVERAGE"\ 
05.
" CDEF:${RRAs[$i]}_graph=${RRAs[$i]},8,*"\ 
06.
" AREA:${RRAs[$i]}_graph#edc24080:\"yyy Downstream\"" 
07.
 
08.
done 
09.
 
10.
        rrdtool graph ${IMAGE_PATH}/${CLIENT}.png\ 
11.
         --end ${DATE_Ymd}\ 
12.
         -t "xxx"\ 
13.
         -h 320\ 
14.
         -w 1200\ 
15.
         -a PNG\ 
16.
         -v bit/s\ 
17.
"$GRAPH"

Das Problem dabei: Stelle ich $GRAPH mit doublequotes unter dem Kommandozeilenaufruf an, dann scheint meine komplette Übergabe als ein String interpretiert zu werden und rrdtool kann es nicht interpretieren. Siehe den Outptut mit bash -x:

01.
rrdtool graph /var/log//xxx.png --end 20131214 -t 'xxx' -h 320 -w 1200 -a PNG -v bit/s  '  DEF:yyy=/var/log/xxx.rrd:yyy:AVERAGE CDEF:yyy_graph=yyy,8,* AREA:yyy_graph#edc24080:"yyy Downstream"'
Stelle ich $GRAPH ohne quotes hinten an, dann bekomme ich:

01.
rrdtool graph /var/log/xxx.png --end 20131214 -t 'xxx' -h 320 -w 1200 -a PNG -v bit/s DEF:yyy=/var/log/xxx.rrd:yyy:AVERAGE 'CDEF:yyy_graph=yyy,8,*' 'AREA:yyy_graph#edc24080:"yyy' 'Downstream"' 
02.
ERROR: 'D' is not a valid function name
Dabei scheint rrdtool den String "Downstream" als Argument zu verstehen, da es als extr String übergeben wird.

Wie mache ich es richtig?

Gruß

Marinux

Ähnliche Inhalte
Batch & Shell
Bash sqlplus oder Bash Fehler? (7)

Frage von Marabunta zum Thema Batch & Shell ...

Ubuntu
Nregp ereignis für bash-script (3)

Frage von rsadmchef zum Thema Ubuntu ...

Batch & Shell
gelöst Bash Mail senden (7)

Frage von Marabunta zum Thema Batch & Shell ...

Windows 10
gelöst Kein Upgrade auf Xenial möglich bei integrierter Windows Bash? (3)

Frage von Moddry zum Thema Windows 10 ...

Neue Wissensbeiträge
Windows Server

Umstellung SHA 1 auf SHA 2 - Migration der CA von CSP auf KSP

Tipp von Badger zum Thema Windows Server ...

Windows 10

Quato DTP94 unter Windows 10 x64 installieren und verwenden

Anleitung von anteNope zum Thema Windows 10 ...

Windows 10

Win10 1703 und Nutzerkennwörter bei Ersteinrichtung - erstaunliche Erkenntnis

(15)

Erfahrungsbericht von DerWoWusste zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Windows 10
Windows 10 im Unternehmen? (26)

Frage von zorlayan zum Thema Windows 10 ...

Festplatten, SSD, Raid
Raid 1 2 SSD mit Windows Server 2016 (17)

Frage von jaywee zum Thema Festplatten, SSD, Raid ...

LAN, WAN, Wireless
Ping u. DNS geht am Rechner nicht mehr (17)

Frage von Kuemmel zum Thema LAN, WAN, Wireless ...

Voice over IP
Über Fritzfax over IP gehen nur einige Faxe (12)

Frage von shearer9 zum Thema Voice over IP ...