J'ai un script bash disons foo.sh que dans cet exemple minimal ressemble à ceci:En passant plusieurs commandes script d'appel de temps
#!/bin/bash
function __measure_time {
time "[email protected]"
}
__measure_time "$*"
Ce que je veux faire est maintenant passer deux commandes à ce script sont censés être exécutés après l'autre et je veux mesurer le temps. Donc, fondamentalement, je fais quelque chose comme:
./foo.sh bash -c "echo 'ss' && sleep 1"
Mais cela ne fonctionne pas comme je le veux. Je ne comprends pas le 's' de l'écho et le sommeil est fondamentalement ignoré. Y a-t-il un moyen de faire ce travail?
Pour moi cela fonctionne bien. La seule modification que j'ai faite à la commande est préfixée avec './'. Donc, ce serait './foo.sh bash -c" echo ss && sleep 1 "' –
En effet, on dirait que le script que j'ai eu est une ligne plus complexe que je ne le pensais. J'ai complètement oublié qu'il y a un appel de fonction avant l'appel du temps. Ce n'est pas moi mais j'essaie de l'utiliser. Va ajouter le code. – FlyingTeller
le temps est utilisé pour chronométrer l'exécution d'un script et non une multitude de commandes. Autrement dit, le temps n'acceptera pas plus d'une commande en tant que paramètre. –