草庐IT

Unix-ish

全部标签

Python:编译成 Unix 命令行应用程序

我不确定我是否搜索了错误的术语,但我找不到太多关于这个主题的信息。我在osx上,我想将一个命令行python脚本编译成一个小型命令行应用程序,我可以将其放入usr/local/bin以便我可以从任何地方调用它。有没有一种直接的方法可以做到这一点?谢谢 最佳答案 最简单的方法是将文件从filename.py重命名为filename并将此行添加到文件顶部。#!/usr/bin/envpython您可能还需要设置文件的可执行位,这可以在命令行上使用chmod+x进行设置。 关于Python:编

python - 将 Django 中的 DateTimeField 转换为 Unix 时间

这个问题在这里已经有了答案:Convertpythondatetimetoepochwithstrftime(8个答案)关闭6年前。在我的Django项目中,我在模型中使用DateTimeField。这基本上有pythondatetime.datetime实例。将此转换为自纪元以来的时间(以秒为单位)的最快方法是什么?

python - 将 unix 时间戳更改为不同的时区

我在Python程序中从Web服务检索unix时间戳。此时间戳位于美国时区。为了将它与其他对象一起插入在法国本地化的MySQL数据库中,我想将此时间戳转换为法国时区。我可以用数学函数来完成,但存在夏令时的问题。我更愿意使用Python时间和日期特定函数来处理这些概念。你有什么提示吗,我在Python文档中迷路了? 最佳答案 如果它真的是一个unix时间戳,那么它是基于UTC的。只需为您的用例正确解释它。仅当您必须将此日期打印为文本时才应用时区转换。如果您也将其存储为时间戳,请保持原样。

python - 在 python 中向 unix 时间戳添加小时数

我需要向某个unix时间戳添加5个小时。这就像游戏的开始和停止时间。所以我知道开始时间和游戏持续时间。我需要把结束时间。这如何在Python中完成? 最佳答案 UNIX时间戳以秒为单位。end_timestamp=start_timestamp+5*60*60 关于python-在python中向unix时间戳添加小时数,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/139241

python - Unix 目录结构的快速、逐行 "grep -n"等价物

我正在尝试创建一个网络界面来搜索大量巨大的配置文件(大约60000个文件,每个文件的大小在20KB到50MB之间)。这些文件也经常更新(~3次/天)。要求:并发必须确定每个匹配行的行号良好的更新性能我调查的内容:Lucene:要标识行号,每一行必须存储在单独的Lucene文档中,每个文档包含两个字段(行号和行)。这会使更新变得困难/缓慢。SOLR和Sphinx:都是基于Lucene,他们有同样的问题,不能识别行号。带全文索引的SQL表:同样,无法显示行号。每行单独一行的SQL表:使用SQLite或MySQL对此进行了测试,更新性能是所有选项中最差的。更新一个50MB的文档需要一个多小时

python - Unix上的Python,判断我是不是在用我的电脑?还是闲置?

我想编写一个脚本来在后台进行大量网络上传。但是,我希望它在我使用我的计算机时暂停(通过检测网络事件或键盘事件或者我没有空闲)。在Unix上的Python上检测我正在使用计算机的最佳方法是什么? 最佳答案 使用X11/XScreenSaver获取空闲时间的Unixy解决方案:#!/usr/bin/pythonimportctypesimportosclassXScreenSaverInfo(ctypes.Structure):"""typedefstruct{...}XScreenSaverInfo;"""_fields_=[('wi

python - Unix:有没有Python脚本不断运行的最佳实践?

我有一个Python脚本,它处理来自HTTP数据流的数据,我需要这个脚本在理论上一直运行,除非我手动关闭它以更新它并再次运行它。我想知道在Unix(尤其是Ubuntu)上执行此操作的最佳做​​法是什么,这样即使终端关闭等脚本也会继续在后台运行,除非进程或服务器关闭?谢谢 最佳答案 从你的问题来看,你暗示你将从终端启动脚本,而不是通过任何Linux的启动脚本管理方法,如systemd或upstart或init.d脚本。如果您打算从终端启动您的脚本,并且希望它在您关闭终端后继续运行,您需要做两件事1.通过在脚本后附加“&”使其在后台运行

python - 在 Python 中重现 Unix cat 命令

我目前正在重现以下Unix命令:catcommand.infofort.13>command.fort.13在Python中使用以下内容:withopen('command.fort.13','w')asoutFile:withopen('fort.13','r')asfort13,open('command.info','r')ascom:forlineincom.read().split('\n'):ifline.strip()!='':print>>outFile,lineforlineinfort13.read().split('\n'):ifline.strip()!='':

python - 我如何找到 Python 在 Unix 上的位置?

我正在为一个新工作场所开发一台新服务器,我正在尝试重用今年早些时候用Python编写的CGI脚本。我的CGI脚本开始于#!/local/usr/bin/python但是当我在新服务器上运行它时,它会提示没有这样的文件夹。显然Python保存在这个盒子的不同位置,但我不知道在哪里。我之前没有做过太多的unix,只是足够绕过,所以如果有一些巧妙的技巧我应该在这里知道,我将不胜感激:)谢谢! 最佳答案 尝试:whichpython在终端中。 关于python-我如何找到Python在Unix上

python - 通过 Python/Fabric 从命令行更改 Unix 密码

我想要一种使用fabric在远程Ubuntu10.4盒子上更新我的密码的方法.我希望我的fabfile.py看起来像这样:defupdate_password(old_pw,new_pw):#Connectsoversshwithapublickeyauthenticationrun("some_passwd_cmd--old%s--new%s"%(old_pw,new_pd))不幸的是,我所知道的唯一允许更改密码的命令是passwd,在Ubuntu10.4上似乎没有任何方法可以传递新(或旧)密码,因为passwd的参数。在Ubuntu10.4上可以使用什么命令通过fabric更改用户