小编yuk*_*ude的帖子

如何列出所有用户的所有cron作业?

是否有命令或现有脚本可以让我一次查看所有*NIX系统的预定cron作业?我希望它包括所有用户crontabs,以及/etc/crontab,以及其中的任何内容/etc/cron.d.这也将是很高兴看到通过运行特定命令run-parts/etc/crontab.

理想情况下,我希望以一种漂亮的列形式输出并以一些有意义的方式排序.

然后,我可以合并来自多个服务器的这些列表,以查看整个"事件安排".

我本来就要写这样一个剧本,但是如果有人已经麻烦了......

unix cron

820
推荐指数
19
解决办法
82万
查看次数

您对使用UUID作为数据库行标识符有何看法,尤其是在Web应用程序中?

为了简单和(假设)速度,我总是倾向于使用长整数作为数据库中的主键.但是当对象实例使用类似于REST或Rails的URL方案时,我最终会得到这样的URL:

http://example.com/user/783
Run Code Online (Sandbox Code Playgroud)

然后假设有ID为782,781,......,2和1的用户.假设有问题的Web应用程序足够安全,可以防止人们输入其他号码未经授权查看其他用户,简单的顺序分配的代理键也"泄漏"实例的总数(早于这一个),在这种情况下是用户,这可能是特权信息.(例如,我是stackoverflow中的用户#726.)

将一个UUID/GUID是一个更好的解决方案吗?然后我可以像这样设置URL:

http://example.com/user/035a46e0-6550-11dd-ad8b-0800200c9a66
Run Code Online (Sandbox Code Playgroud)

不完全简洁,但显示的用户隐含信息较少.当然,它隐藏着"通过默默无闻的安全",这无法取代适当的安全性,但它似乎至少更安全一点.

这种好处是否值得为Web可寻址对象实例实现UUID的成本和复杂性?我认为我仍然希望使用整数列作为数据库PK来加速连接.

还有UUID的数据库内表示问题.我知道MySQL将它们存储为36个字符的字符串.Postgres似乎有更高效的内部表示(128位?)但我自己没有尝试过.有人对此有经验吗?


更新:对于那些询问只是在URL中使用用户名的人(例如,http://example.com/user/yukondude),这适用于名称独特的对象实例,但是对于数以万计的网络来说呢?真正只能用数字识别的app对象?订单,交易,发票,重复图像名称,stackoverflow问题,......

database uuid web-applications

74
推荐指数
4
解决办法
2万
查看次数

你如何杀死所有超过一定年龄的Linux进程?

我在某个服务器上遇到类似僵尸的进程有问题需要时不时地被杀死.如何才能最好地识别运行时间超过一小时的那些?

unix linux bash process

66
推荐指数
6
解决办法
8万
查看次数

如何使用bash找到给定进程的顶级父PID?

假设我运行ps axf,我可以看到我的命令的进程树看起来像这样:

  800 ?        Ss     0:00 /usr/sbin/sshd
10186 ?        Ss     0:00  \_ sshd: yukondude [priv]
10251 ?        S      0:00      \_ sshd: yukondude@pts/0
10252 pts/0    Ss     0:00          \_ -bash
10778 pts/0    S      0:00              \_ su -
10785 pts/0    S      0:00                  \_ -su
11945 pts/0    R+     0:00                      \_ ps axf
Run Code Online (Sandbox Code Playgroud)

我知道我可以检查$$当前shell的PID(10785)或$PPID父PID(10778).

但我只想要顶级父PID,在这个例子中它将是800(SSH守护进程).有没有办法轻松做到这一点?

我从这个SO回答中了解到,我可以递归检查/proc/PID/stat文件中的第4个条目,以查找每个进程的父PID:

# cut -f4 -d' ' /proc/10785/stat
10778
# cut -f4 -d' ' /proc/10778/stat
10252
# cut -f4 -d' ' …
Run Code Online (Sandbox Code Playgroud)

bash process

19
推荐指数
3
解决办法
2万
查看次数

使用MS Access作为MySQL数据库后端的前端的问题?

两个用户希望共享最初使用MS Access编写的同一数据库,而不会在单个MDB文件上相互冲突.

我使用其Migration Toolkit将表从简单的MS Access数据库移动到MySQL (顺便说一下,它运行良好)并设置Access以通过ODBC链接到这些表.

到目前为止,我遇到了以下问题:

  • 如果没有主键,您不能在表中插入/更新/删除行(这并不奇怪).
  • MS Access中的AutoNumber字段必须是主键,否则它们最终会以MySQL中的整数列结束(natch,为什么它不是PK?)
  • 这些表被迁移到MySQL的InnoDB表类型,但Access关系没有成为MySQL外键约束.

一旦数据库正在使用中,我可以期待任何其他问题吗?特别是当两个用户都在同一张桌子上工作时?

mysql database ms-access

14
推荐指数
2
解决办法
3万
查看次数

如何将bash中的文件大小相加,按日期将结果分组?

在我使用的Linux服务器上,进程以随机间隔写入随机命名的文件.这是一个小样本,显示文件大小,修改日期和时间以及文件名:

27659   2009-03-09  17:24  APP14452.log
0       2009-03-09  17:24  vim14436.log
20      2009-03-09  17:24  jgU14406.log
15078   2009-03-10  08:06  ySh14450.log
20      2009-03-10  08:06  VhJ14404.log
9044    2009-03-10  15:14  EqQ14296.log
8877    2009-03-10  19:38  Ugp14294.log
8898    2009-03-11  18:21  yzJ14292.log
55629   2009-03-11  18:30  ZjX14448.log
20      2009-03-11  18:31  GwI14402.log
25955   2009-03-12  19:19  lRx14290.log
14989   2009-03-12  19:25  oFw14446.log
20      2009-03-12  19:28  clg14400.log
Run Code Online (Sandbox Code Playgroud)

(请注意,有时文件大小可以为零.)

我想要的是一个bash脚本来总结文件的大小,按日期细分,产生这样的输出(假设我的算法是正确的):

27679 2009-03-09
33019 2009-03-10
64527 2009-03-11
40964 2009-03-12
Run Code Online (Sandbox Code Playgroud)

结果将显示随时间变化的活动趋势,并突出显示异常繁忙的日子.

在SQL中,操作将是一个简单的操作:

SELECT SUM(filesize), filedate
FROM files
GROUP BY filedate;
Run Code Online (Sandbox Code Playgroud)

现在,这在Perl或Python中可能都很简单,但我真的更喜欢bash shell或awk解决方案.在bash中按日期对文件进行分组似乎特别棘手(特别是如果你不能假设特定的日期格式).总结大小可以在我想的循环中完成,但是有更简单,更优雅的方法吗?

bash file

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

对于定期或重复日期,什么是良好的数据结构?

是否存在用于存储定期或重复日期的已发布数据结构?可以处理的东西:

  1. 泵需要每五天回收一次.
  2. 发薪日是每隔一个星期五.
  3. 感恩节是10月的第二个星期一(美国:11月的第四个星期四).
  4. 情人节是每年的2月14日.
  5. Solstice(通常)每年6月21日和12月21日.
  6. 复活节是在春分之日或之后的第一个满月之后的星期日(好吧,这个有点拉伸).

我认为cron内部数据结构可以处理#1,#4,#5(两个规则),也许#2,但我还没有看过它.MS Outlook和其他日历似乎能够处理前五个,但我没有那个源代码.

date recurring data-structures

10
推荐指数
1
解决办法
1684
查看次数

各种工具和语言的正则表达式语法差异摘要?

我永远不会记得像grepAWK这样的工具使用的正则表达式语法的差异,或者像Python和PHP这样的语言.通常,Perl具有最广泛的语法,但我常常被偶数egrep("扩展" grep)的限制所束缚.

是否有一个网站以简洁易读的方式列出差异?

regex grep

8
推荐指数
3
解决办法
3076
查看次数

Django表单 - 如何不验证?

说我有这个简单的形式:

class ContactForm(forms.Form):
    first_name = forms.CharField(required=True)
    last_name = forms.CharField(required=True)
Run Code Online (Sandbox Code Playgroud)

我有一个字段的默认值,但没有另一个字段的默认值.所以我这样设置:

default_data = {'first_name','greg'}
form1=ContactForm(default_data)
Run Code Online (Sandbox Code Playgroud)

但是现在当我去显示它时,Django显示一个验证错误,说明需要last_name:

print form1.as_table()
Run Code Online (Sandbox Code Playgroud)

这样做的正确方法是什么?由于这不是用户提交的数据,只是我想要预填的数据.

注意: required = False不起作用,因为我确实希望在用户提交数据时需要它.就在我第一次在页面上显示表单时,我没有默认值.

python forms django

7
推荐指数
1
解决办法
1942
查看次数

你如何将一个文本div包装在另一个文本div中作为DOM中的兄弟?

假设我有这个HTML:

<div id="a">
  a aa aaa a aa aaa a aa aaa a aa aaa a aa aaa a aa aaa a aa aaa
  a aa aaa a aa aaa a aa aaa a aa aaa a aa aaa a aa aaa a aa aaa
  a aa aaa a aa aaa a aa aaa a aa aaa a aa aaa a aa aaa a aa aaa
</div>
<div id="b">
  b bb bbb b bb bbb b bb bbb b bb …
Run Code Online (Sandbox Code Playgroud)

html css

6
推荐指数
1
解决办法
1347
查看次数

除了 SQL*Plus 中指定的列之外,是否可以 BREAK ON 一列?

这个很难解释,所以我将尝试使用示例来展示我的意思。请注意,我并不是在问是否可以在一个BREAK语句中使用多个列——我知道可以。

假设我有如下查询:

SELECT  invoice_no, invoice_date, vendor, account, amount
FROM    invoice
ORDER   BY vendor, invoice_no, account
Run Code Online (Sandbox Code Playgroud)

假设结果集是:

INVOICE_NO INVOICE_DATE VENDOR  ACCOUNT AMOUNT
---------- ------------ ------- ------- ------
0001       30-JAN-2009  Alpha   1000     50.00
0003       30-JAN-2009  Alpha   1000    125.00
0003       30-JAN-2009  Alpha   3000     33.33
0006       02-FEB-2009  Alpha   2000     40.00
0005       31-JAN-2009  Bravo   1000     40.00
0002       30-JAN-2009  Charlie 2000    120.75
0002       30-JAN-2009  Charlie 3000      5.00
0004       30-JAN-2009  Charlie 1000    900.50
Run Code Online (Sandbox Code Playgroud)

所以你可以看到有的供应商有多张发票,有的发票有多个账户。

要隐藏重复的供应商名称和发票号码,我可以使用 SQL*Plus 的BREAK命令,如下所示:

BREAK ON vendor ON invoice_no
Run Code Online (Sandbox Code Playgroud)

产生这个结果集: …

reporting sqlplus

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