小编use*_*937的帖子

设置sqlite临时存储目录

我有一个Python二进制文件,它使用SQLite作为其后端数据库.SQLite的文档和代码表明,设置以下3个环境变量中的任何一个都应该有效:

export TMP=/var/tmp/sqlite/
export TEMP=/var/tmp/sqlite/
export TEMPDIR=/var/tmp/sqlite/
Run Code Online (Sandbox Code Playgroud)

如果我在启动Python二进制文件之前在我的bash脚本中导出上述变量,它就无济于事.

我尝试的另一个选项是putenv()通过设置调用os.environ:

os.environ['TMP'] = /var/tmp/sqlite/
os.environ['TEMP'] = /var/tmp/sqlite/
os.environ['TEMPDIR'] = /var/tmp/sqlite/
Run Code Online (Sandbox Code Playgroud)

上述选项都没有帮助说服SQLite /var/tmp/sqlite用作临时存储目录.唯一有效的选项 - SQLite的文档说不推荐 - 是设置temp_store_directorypragma语句:

PRAGMA temp_store_directory = '/egnyte/.work/sqlite_temp'
Run Code Online (Sandbox Code Playgroud)

由于使用pragma语句不是我想做的选择,还有其他技巧吗?

python sqlite

8
推荐指数
2
解决办法
3523
查看次数

沉默特定方法/ api/url的cherrypy访问日志

问题很简单,我们希望CherryPy不记录被调用的特定公开方法/ API的访问日志.

基本上,当调用此API时,URL的查询字符串中有一些参数非常敏感,如果泄露,则会暴露潜在的安全性.当然这是一个/ GET请求,不幸的是,这是参数传递的唯一方式,因为它是从外部服务到该Web服务器的重定向(302).

如果它不记录URL,那也可以达到目的.

那么,有没有一种方法可以通过API,URL等来过滤访问日志中的日志消息?

在此先感谢您的帮助.

python cherrypy

3
推荐指数
1
解决办法
402
查看次数

在每行的开头插入文本,从2到结尾 - 5

我想在文件中的每一行的开头插入一个单词后跟一个制表符(就地插入),但是从第2行到所有行但最后5行.

因此,如果一个文件有10行,我想从第2行插入到第5行 - 我希望在这种情况下保持第1行和第6-10行完好无损.

该文件可以有数百万行(目前高达1000万)

sed -i "s/^/word\t/" filename 
Run Code Online (Sandbox Code Playgroud)

以上工作,但我想插入第一行和最后5行.同样给出一个行范围,计算行数将是另一个操作.由于行号可以变化,因此这种额外的操作可能成为开销.寻找有效的解决方案.这是我到目前为止所尝试的:

COUNT=$((`wc -l test_csnap_delta.csv | cut -d ' ' -f 1` - 5))
sed -n -i '2,$COUNT s/^/word\t/' 
Run Code Online (Sandbox Code Playgroud)

但是,上面是删除整个文件数据.

提前致谢.

bash awk sed

-1
推荐指数
1
解决办法
1334
查看次数

标签 统计

python ×2

awk ×1

bash ×1

cherrypy ×1

sed ×1

sqlite ×1