Hallo,
Ik heb een scriptje geschreven dat gebruik maakt van de stdin.
Een dummy versie van dit scriptje:
Dit werkt nu, maar ik heb echter héél lang gesukkeld tot ik ervoor kon zorgen dat de inhoud van stdin niet geinterpreteerd werd door bash.
Ik deed eerst dit:
Dit werkte wel voor inhoud zonder speciale tekens, maar van zodra er een speciaal teken in de stdin content staat, dan wordt deze expanded door bash.
Bv: Een * teken wordt vertaald naar de inhoud van de werkdir ...
Ik vroeg me af hoe je dan de inhoud van stdin in een variabele krijgt, ZONDER bash expansion?
Ik heb een scriptje geschreven dat gebruik maakt van de stdin.
Een dummy versie van dit scriptje:
code:
1
2
3
4
| #!/bin/bash # Neem de input en mail deze naar ergens cat - | mail -s 'Test' iemand@ergens.com |
Dit werkt nu, maar ik heb echter héél lang gesukkeld tot ik ervoor kon zorgen dat de inhoud van stdin niet geinterpreteerd werd door bash.
Ik deed eerst dit:
code:
1
2
3
4
5
6
| #!/bin/bash MESSAGE=`cat -` # Neem de input en mail deze naar ergens echo $MESSAGE | mail -s 'Test' iemand@ergens.com |
Dit werkte wel voor inhoud zonder speciale tekens, maar van zodra er een speciaal teken in de stdin content staat, dan wordt deze expanded door bash.
Bv: Een * teken wordt vertaald naar de inhoud van de werkdir ...
Ik vroeg me af hoe je dan de inhoud van stdin in een variabele krijgt, ZONDER bash expansion?