1 votes

comment lire les données d'un fichier dans Shell Shell

J'ai deux fichiers Shell Shell test1.sh et test2.sh . J'ai un autre fichier appelé translogs.txt .
Maintenant, je dois copier les valeurs de deux variables dans test1.sh vers translog.txt et les mêmes variables doivent être copiées vers les valeurs correspondantes dans test2.sh .

test1.sh

#!/bin/sh
ONE="000012"
TIME="2013-02-19 15:31:06"
echo -e "$ONE\n$TIME">translog.txt;

translog.txt

ONE="000012"
TIME="2013-02-19 15:31:06"

Mais ici, à test2.sh Je veux que la même valeur que dans translog.txt soit attribuée à la variable correspondante, par exemple ONE et TIME doivent avoir la même valeur que dans translog.txt.

test2.sh

#!/bin/sh
ONE="000012"
TIME="2013-02-19 15:31:06"

1voto

Dennis Points 46916

Si vous voulez le contenu de translog.txt pour qu'il ressemble à celui de votre exemple et que cela ne vous dérange pas de passer de dash à bash, vous pouvez utiliser source (voir Shell en coup d'homme ) pour exécuter simplement le contenu de translog.txt dans le Shell actuel.

test1.sh :

#!/bin/bash
ONE="000012"
TIME="2013-02-19 15:31:06"
echo -e "ONE=\"$ONE\"\nTIME=\"$TIME\"">translog.txt;

test2.sh

#!/bin/bash
source translog.txt
echo "ONE:  $ONE"
echo "TIME: $TIME"

Test

$ ./test1.sh
$ cat translog.txt 
ONE="000012"
TIME="2013-02-19 15:31:06"
$ ./test2.sh
ONE:  000012
TIME: 2013-02-19 15:31:06

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X