ruby somescript.rb somehugelonglistoftextforprocessing
Run Code Online (Sandbox Code Playgroud)
这是一个坏主意吗?我应该创建一个单独的平面文件包含somehugelonglistoftextforprocessing,并让somescript.rb读取它?
如果脚本参数是非常长的文本(1KB~300KB),这有关系吗?如果有的话会出现什么问题.
只要不超过命令行处理代码(例如,bash或者ruby自身)的限制,您就不会遇到任何技术问题.
这是一个好主意是另一回事.你是否真的想在每次运行程序时输入几百千字节?如果数据包含空格,您是否需要记住在数据周围加上引号?
有很多方法我已经看过这个你可能想要考虑的方法(这个清单并非详尽无遗):
更改您的代码,以便,如果没有参数,请从标准输入中读取信息 - 这将允许您执行任一操作
ruby somescript.rb myData
或
ruby somescript.rb <myFile.txt.
使用特殊字符表示文件输入(我已经看过@以这种方式使用).因此,
ruby somescript.rb myData
将使用命令行上提供
ruby somescript.rb @myFile.txt
的数据,同时从文件中获取数据.
我的建议是对该大小的数据使用基于文件的方法,并允许在指定时使用参数.这包括两种可能的情况: