小编msb*_*msb的帖子

尾状连续ls(文件列表)

我正在监视在linux中的文件夹中创建的新文件.我时不时地发出一个"ls -ltr".但我希望有一个程序/脚本可以自动打印它,只有最新的条目.我做了一个短暂的循环来列出它,但它会重复那些不是新的条目,并且当没有新文件时它会让我的屏幕滚动.我已经了解了"watch",它确实展示了我想要的东西并且每隔N秒刷新一次,但是我不想要一个ncurses接口,我正在寻找像tail这样的东西:

  • 连续
  • 只显示新的东西
  • 在我的终端打印,所以我可以在后台运行它并做其他事情,然后每隔一段时间看到输出然后混合我正在做的事情:D

总结:获取输入,与之前的输入进行比较,仅输出新的输入.这样做的东西听起来不像是一个奇怪的工具,我可以看到它也用于其他情况,所以我希望它已经存在,但我找不到任何东西.建议?

linux shell ls

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

如何为用户提供ionice级别权限?

要改变hardlimit for nice,我可以修改/etc/security/limits.conf

user - nice -11
Run Code Online (Sandbox Code Playgroud)

但是我怎样才能为ionice做同样的事情

 ionice -c 1 -p 31828
Run Code Online (Sandbox Code Playgroud)

我收到了错误

ionice: ioprio_set failed: Operation not permitted
Run Code Online (Sandbox Code Playgroud)

unix linux nice user-permissions

8
推荐指数
1
解决办法
2076
查看次数

如何暂时忽略 git pull 上未跟踪的文件?

我有一些尚未添加到 git 的新文件;我不确定我会不会,我还没有决定。但我想获得服务器中的最新信息。

但是,当我执行 a 时git pull出现错误error: Your local changes to 'XXXX' would be overwritten by merge. Aborting.,其中 XXXX 是我的新文件。

我如何告诉 git 从服务器下载更改和新文件,告诉我服务器上的内容与我对存储库中已有文件的本地修改之间可能存在的冲突,同时不中止,因为我在本地有新文件?

我不想将它们添加到 .gitignore,因为我经常遇到这种情况,而且我不想一直在 .gitignore 中添加和删除文件以用于愚蠢的东西......尤其是因为我不想冒着忘记某个文件的风险,最终我会决定将它添加到存储库中,所以我想git status继续告诉我它们。有时git status -uno当我想忽略新文件时我会运行,然后有时我会运行git status以查看新文件并决定保留哪些内容以及丢弃哪些内容。但我找不到git pull.

我在谷歌上的尝试将我带到那些想要用存储库中的内容或其他类似场景覆盖其本地更改的人。:( 在阅读文档后,我发现我可以做一个git fetch让我的本地存储库更新的操作,这没有产生任何错误,但它也没有给我的工作副本带来更改。我想不通之后的下一步。:-/无论如何,pull没有错误将是理想的......

git pull

5
推荐指数
2
解决办法
8782
查看次数

mysql 管道 tee 缓冲输出

当我以非交互模式运行 mysql 命令行工具并查看结果时,我会在执行每个查询时看到它们。但是如果我将它通过管道传输到“tee”,mysql 就会缓冲结果,我只能在最后看到这一切。如何让mysql立即输出结果?我已经尝试过“-q”但没有成功,我在帮助页面中找不到正确的选项。:(

示例:query_dates.txt 包含 200 个查询,每个查询大约需要 30 秒。

head -4 query_dates.txt | mysql -u tester -h 172.16.77.30 myDB -ss
2015-05-01      375398346
2015-05-02      375704957
2015-05-03      375992591
2015-05-04      376193384
Run Code Online (Sandbox Code Playgroud)

在本例中,我每 30 秒查看一次每一行,时间跨度为 2 分钟。

head -4 query_dates.txt | mysql -u tester -h 172.16.77.30 myDB -ss | tee 001.date_itemid.txt
2015-05-01      375398346
2015-05-02      375704957
2015-05-03      375992591
2015-05-04      376193384
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我必须等待 2 分钟,最后我得到 4 个结果。

PS:我发现这个并在 mysql 中使用stdbuf是有效的,但我仍然想知道哪个 mysql 选项可以解决这个问题......如果有的话。

mysql pipe

4
推荐指数
1
解决办法
376
查看次数

如何在Python中的列表上循环两次

我有一个包含CSV内容的字符串。我把它变成了这样的列表:

from StringIO import StringIO
import csv

f = StringIO(list_csv)
my_list = csv.reader(f, delimiter=',')
Run Code Online (Sandbox Code Playgroud)

现在,我想遍历该列表两次,但是第二次尝试遍历该代码,就像遍历列表一样:

for item in my_list:
    code = item[1]
    print "code: "+code

for item in my_list:
    desc = item[2]
    print "desc: "+desc
Run Code Online (Sandbox Code Playgroud)

(此代码出于演示目的而简化,我无法在单个循环中合并执行)

我认为该列表仍附加在StringIO上,并且在完成循环后,它已经完成读取,因此不会再次读取。是否有一个单行将其转换为内存中的常规列表,我可以循环几次?我感觉像是运行一个循环来手动复制值正在重新发明轮子....但是如果没有其他选择,我可以这样做。只是要求一些不太冗长的代码。谢谢!

python for-loop list

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

标签 统计

linux ×2

for-loop ×1

git ×1

list ×1

ls ×1

mysql ×1

nice ×1

pipe ×1

pull ×1

python ×1

shell ×1

unix ×1

user-permissions ×1