我正在编写一个脚本来清理我的桌面,根据文件类型移动文件。第一步,似乎是ls -1 /Users/user/Desktop
(我在Mac OSX上)。因此,使用Python,我将如何运行命令,然后将输出写入特定目录中的文件?由于这将是无证的,我将是唯一的用户,如果它使用os.system()
,我不介意(更喜欢?)。写命令行输出到文件
5
A
回答
13
您可以使用命令中的>
将标准输出重定向到任何文件。
$ ls /Users/user/Desktop > out.txt
使用Python,
os.system('ls /Users/user/Desktop > out.txt')
但是,如果你正在使用python然后而是采用ls
命令,你可以用os.listdir
列出目录中的所有文件。
path = '/Users/user/Desktop'
files = os.listdir(path)
print files
4
略读Python文档运行外壳命令,并且获得可以使用subprocess模块与check_output
方法在该输出之后。
之后,您可以简单地将该输出写入具有标准Python IO函数的文件:File IO in python。
1
要打开文件,可以使用f = open(/Path/To/File)
命令。语法是f = open('/Path/To/File', 'type')
,其中'type'是读取的r,w是写入的,而a是附加的。执行此操作的命令是f.read()
和f.write('content_to_write')
。要从命令行命令获得输出,您必须使用popen和subprocess而不是os.system()
。 os.system()不返回值。你可以阅读更多关于popen here。
相关问题
- 1. 写命令行输出到文本文件
- 2. 使用命令行输出到文件
- 3. 输出到文件和命令行
- 4. 写作命令行输出到文件在Java
- 5. windbg:命令输出到文本文件
- 6. PHP输出到命令行
- 7. git的命令输出到文件
- 8. 在VBScript中获取命令行输出(不写入文件)
- 9. 如何将脚本输出写入文件和命令行?
- 10. 输出到命令行并写入到python脚本中的文件
- 11. 将文件的输出重定向到写入命令
- 12. 从命令行可执行文件输入/输出重定向到文件
- 13. 打印到命令行中给出的输出文件
- 14. 如何从命令行输出PID到文本文件中(Windows)
- 15. 将命令(即输入不输出)写入文件
- 16. 击:多次执行命令和输出写入标签分隔到文件
- 17. 批处理文件:存储命令的输出行而不写入文件?
- 18. 如何将curl post命令输出写入文本文件
- 19. 如果从命令行启动,则输出到命令行
- 20. 命令行输出到TXT文件(Java.exe -version)返回空白
- 21. 命令行输出不重定向到文件。
- 22. 执行命令行参数的命令和输出写入一个文本文件
- 23. 如何批量写入命令行输入到命令中?
- 24. MS DOS命令行输出重定向到文件不会产生输出
- 25. popen()将执行的命令输出写入到cout中
- 26. 力Matlab的输出到命令行
- 27. 用RSpec测试输出到命令行
- 28. 命令行打印文件名输出文件
- 29. 从前一个标准输出到文件命令行的洋文文件
- 30. 写输出到文件
你想移动哪些文件?使用Python查看http://docs.python.org/library/shutil.html文件操作。 – 2012-01-25 13:32:02
外壳脚本已足够 –
如果您使用外壳脚本,请阅读有关管道和重定向的更多信息。 –