提出了一个单行方法来从bash命令行超时长时间运行的命令:
( /path/to/slow command with options ) & sleep 5 ; kill $!
Run Code Online (Sandbox Code Playgroud)
但是,给定的"长时间运行"命令可能比超时更早完成.(我们称之为"通常长时间运行但有时快速"的命令,或者称为tlrbsf.)
所以这种漂亮的1-liner方法有几个问题.首先,sleep
它不是有条件的,因此在序列完成所花费的时间上设置了不希望的下限.当tlrbsf命令在2秒内完成时,考虑30s或2m甚至5m的睡眠- 非常不受欢迎.其次,它kill
是无条件的,所以这个序列将试图杀死一个非运行的进程并发出呜呜声.
所以...
有没有办法超时通常长时间运行但有时快("tlrbsf")命令
...对于奖励积分,在前台运行tlrbsf命令,在后台运行任何"睡眠"或额外进程,这样tlrbsf命令的stdin/stdout/stderr 可以被重定向,就像它曾经被重定向一样直接跑吗?
如果是这样,请分享您的代码.如果没有,请解释原因.
我花了一段时间试图破解前面提到的例子,但我正在达到我的bash技能的极限.
我正在寻找一种简单的方法来查找文件中最长行的长度.理想情况下,它将是一个简单的bash shell命令而不是脚本.
是否有Unix命令将一些字符串数据添加到文本文件中?
就像是:
prepend "to be prepended" text.txt
Run Code Online (Sandbox Code Playgroud) 我想删除每个文件夹和子文件夹中的每个"_svn"...
例如
c:\ proyect1 _svn images _svn banner _svn buttons _svn
然后我运行类似的东西
rm-recurse c:\proyect1 _svn
Run Code Online (Sandbox Code Playgroud)
我应该得到:
c:\ proyect1 images banner buttons
理想的事情是一个小小的独立EXE或类似的东西.
- 感谢Grant,我一发布问题就看到SVN导出命令的SVN文档,但我也想删除Visual Studio创建的_vti_*文件夹,所以我也会探索for
解决方案.
你知道任何实用程序类/库,可以将Map转换为URL友好的查询字符串吗?
示例:
我有一张地图:
- "param1"= 12,
- "param2"="cat"
我想得到:__CODE__
.
PS.我知道我可以轻松地自己编写,我很惊讶我无法在任何地方找到它(我到目前为止检查了Apache Commons).
我想在一段时间后自动杀死一个命令.我记得这样的界面:
% constrain 300 ./foo args
Run Code Online (Sandbox Code Playgroud)
哪个会用"args"运行"./foo"但如果它在5分钟后仍在运行则会自动终止它.
将该想法概括为其他约束可能是有用的,例如如果它使用过多内存则自动填充进程.
是否有任何现有的工具可以做到这一点,或者有人写过这样的东西?
补充:Jonathan的解决方案正是我的想法,它在linux上的功能就像一个魅力,但我不能让它在Mac OSX上运行.我摆脱了SIGRTMIN,它让它编译得很好,但信号不会被发送到子进程.有人知道如何在Mac上完成这项工作吗?
[补充:请注意,Jonathan可以在Mac和其他地方使用更新.]
我试图使用2个mysql实用程序,mysqldiff和mysqldbcompare,并希望避免在命令行上输入我的密码
是否可以使用选项文件指定数据库连接的密码,以防止我必须指定密码?
这是我目前拥有的那种命令......
/usr/share/mysql-workbench/python/mysqldiff --server1=root@localhost --server2=root@localhost --difftype=sql db1:db2
Run Code Online (Sandbox Code Playgroud)
我在〜/ .my.cnf上也有一个具有"600"权限的文件,其中包含以下内容.
[client]
user=root
password=mypassword
Run Code Online (Sandbox Code Playgroud)
当我通过命令行连接到MySQL时,它会在我的选项文件中获取详细信息,但mysql实用程序不会: - /
我需要在我的计算机上复制数百个随机文件,并且非常谨慎地使用Windows内置的vanilla文件副本.
我不希望它挂在"你确定吗?","你真的确定吗?","甚至是zip文件?","当然也不是只读文件!" 我一走开就循环.
我不希望它工作几个小时然后意外停止:"有人曾经打开过这个文件,所以我不会复制它!" 然后取消整个副本或只是退出,没有任何迹象表明已完成的工作和剩下的工作.
您有哪些文件管理程序?你推荐哪一个?
这个问题与我的另一个问题有关:如何在我的新SATA专用计算机上使用旧的PATA硬盘?