• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright 2016 The Chromium Authors
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5
6import os
7import subprocess
8import sys
9
10# This script executes a command and redirects the stdout to a file. This is
11# equivalent to |command... > output_file|.
12#
13# Usage: python redirect_stdout.py output_file command...
14
15if __name__ == '__main__':
16  if len(sys.argv) < 2:
17    print("Usage: %s output_file command..." % sys.argv[0], file=sys.stderr)
18    sys.exit(1)
19
20  # This script is designed to run binaries produced by the current build. We
21  # may prefix it with "./" to avoid picking up system versions that might
22  # also be on the path.
23  path = sys.argv[2]
24  if not os.path.isabs(path):
25    path = './' + path
26
27  with open(sys.argv[1], 'w') as fp:
28    sys.exit(subprocess.check_call([path] + sys.argv[3:], stdout=fp))
29