我有一个脚本尝试使用另一个程序建立数据库连接,程序的超时(2.5分钟)是长的.我想将此功能添加到脚本中.
如果连接需要5秒以上的时间,请终止进程
Else kill sleep/kill进程.
我遇到的问题是bash如何在进程被杀死时报告,这是因为进程只在后台处于同一个shell中.有没有更好的方法来执行此操作或如何使shell为kill命令静音?
DB_CONNECTION_PROGRAM > $CONNECTFILE &
pid=$!
(sleep 5; kill $pid) &
sleep_pid=$!
wait $pid
# If the DB failed to connect after 5 seconds and was killed
status=$? #Kill returns 128+n (fatal error)
if [ $status -gt 128 ]; then
no_connection="ERROR: Timeout while trying to connect to $dbserver"
else # If it connected kill the sleep and any errors collect
kill $sleep_pid
no_connection=`sed -n '/^ERROR:/,$p' $CONNECTFILE`
fi
Run Code Online (Sandbox Code Playgroud) 我正在尝试编写一个带有一些变量的bash脚本,然后使用grep对给定的文件搜索进行查找/替换,以获取具有该字符串的文件列表.我认为我遇到的问题是在sed中看到变量我不知道它可能是什么.
if [ "$searchFiles" != "" -a "$oldString" != "" -a "$newString" != "" ]; then
echo -en "Searching for '$searchFiles' and replacing '$oldString' with '$newString'.\n"
for i in `grep $oldString $searchFiles |cut -d: -f1|uniq`; do
sed -i 's/${oldString}/${newString}/g' $i;
done
echo -en "Done.\n"
else
usage
fi
Run Code Online (Sandbox Code Playgroud) 昨天我花了5个多小时试图弄清楚我的设置有什么问题.在ci213/application/controllers和views目录中,我有一个简单的site.php控制器和test.php视图.我不知道为什么这个网站不会加载.有人建议我接下来要找什么?也许记录它正常工作?如果我能得到更好的日志错误,我可以有更多的工作.
我认为它必须是codeigniter,因为我在apaches root(/ var/www)有一个index.php和index.html,在根目录有一个index2.php(/ var/www/vhosts/srp-local/htdocs),当我转到localhost/index.(php | html)或srp-local/index2.php时,页面加载并正确显示,因此php和apache正在工作.
尝试加载网站我得到一个空白页面,所以我认为它必须是CI的东西.我正在拖尾所有日志文件,唯一获得更新的是站点access.log,出现以下错误.
127.0.0.1 - - [23/Mar/2013:09:00:28 -0600] "GET / HTTP/1.1" 500 381 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:19.0) Gecko/20100101 Firefox/19.0"
Run Code Online (Sandbox Code Playgroud)
config.php文件
$config['base_url'] = 'http://srp-local/'; # My hosts file is configured for this.
$config['log_threshold'] = 4;
$config['log_path'] = '/var/www/vhosts/srp-local/logs/ci_error.log';
Run Code Online (Sandbox Code Playgroud)
控制器/ site.php
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Site extends CI_Controller
{
public function index()
{
$this->load->view('test');
}
}
Run Code Online (Sandbox Code Playgroud)
意见/ test.php的
<html>
<head>
</head>
<body>
<?php echo "PHP is working …Run Code Online (Sandbox Code Playgroud) 编辑:要求是模糊的,而不是计算pi的第n个数字,他们只是希望pi到第n个数字不超出浮动限制,所以蛮力方式适用于要求.
我需要计算第n个数字的PI,我想尝试使用BBP公式,但我遇到了困难.我输入的等式似乎没有正确地给我PI.
(1 / pow(16,n))((4 / (8 * n + 1)) - (2 / (8 * n + 4)) - (1 / (8 * n + 5)) - (1 / (8 * n + 6)))
Run Code Online (Sandbox Code Playgroud)
我成功地用蛮力的方式找到了PI,但这只是如此准确,找到第n个数字很困难.
(4 - (4/3) + (4/5) - (4/7)...)
Run Code Online (Sandbox Code Playgroud)
我想知道是否有人更好地了解如何做到这一点,或者可能有助于我的BBP方程式我搞砸了什么?
谢谢你,
LF4
功能但不准确,直到几次迭代,然后你必须取消最后几个.
#include <iostream>
using namespace std;
int main()
{
int loop_num = 0;
cout << "How many digits of pi do you want?: ";
cin >> loop_num;
double my_pi = 4.0; …Run Code Online (Sandbox Code Playgroud) 我有一个perl脚本,它一直作为守护进程循环运行.我想在perl脚本中运行一个基于时间(或计时器)的子函数,所以每运行2小时它会运行该子函数并继续它的循环.我正在考虑获取纪元时间,只是通过循环检查它几次,一旦它超过2小时就会运行子功能.在perl中有更好的方法吗?
谢谢,
LF4
我正在尝试使用Mail :: IMAPClient连接到我们的Exchange服务器,但是当我将它从运行ubuntu的临时开发桌面移动到运行centos的新开发环境时,正在运行的脚本出现问题.在那段时间里,我发现交换服务器已经升级了,我想到2010年.是否有一个交换设置允许使用换行处理命令而不是需要crlf,或者这可能是本地系统(运行脚本问题)?
这一段时间过了一段时间.
$openssl s_client -connect myhost.mydomain.net:993
...
* OK The Microsoft Exchange IMAP4 service is ready - 'myhost'
? login username password
* BYE Connection is closed. 13
read:errno=0
Run Code Online (Sandbox Code Playgroud)
命令可以正常运行.
$openssl s_client -crlf -connect myhost.mydomain.net:993
...
* OK The Microsoft Exchange IMAP4 service is ready - 'myhost'
? login username password
? OK LOGIN completed.
? select inbox
* 4 EXISTS
* 0 RECENT
* FLAGS (\Seen \Answered \Flagged \Deleted \Draft $MDNSent)
* OK [PERMANENTFLAGS (\Seen \Answered \Flagged …Run Code Online (Sandbox Code Playgroud) 我在所有服务器上安装了Perl 5.8,并希望使用DBI和DBD :: Oracle模块来访问我们的数据库.我主要担心的是更新版本的perl DBI和DBD模块将停止使用5.8.然后我必须将每台服务器升级到最新的perl版本.
我的问题是perl本身成为更高版本,并且为他们开发的模块是否仍然可以向后兼容?"如果我创建文档说运行"cpan -i DBI",如果最新版本的DBI不能与5.8一起运行,那么"CPAN不会包含Perl的所有古老版本和补丁级别".
我有一个div,根据表单是否正确提交而改变.
我想知道是否可以检查某个类的特定元素?
开始元素看起来像这样.
<div id="myerrortest" class="input text"></div>
Run Code Online (Sandbox Code Playgroud)
如果输入不正确,请添加错误类.
<div id="myerrortest" class="input text error"></div>
Run Code Online (Sandbox Code Playgroud) 我正在尝试打印整个单词,而不仅仅是第一个字母.我可以通过循环来做到这一点,但我认为有更好的方法.我正在四处搜索并看到他们将%S更改为%c的答案,但我已经在使用%c,因为它是一个字符数组.
char* words[] = {"my", "word", "list"};
printf("The word: %c",*words[2]);
Results:
The word: l
Run Code Online (Sandbox Code Playgroud) 我不知道如何使用列表从系统中记录多个指标。该$CounterList变种不工作,但该$CounterList_Working变种一样。我见过根据路径获取列表的示例,例如(Get-Counter -List Processor(*)).Paths.
我以为我可以在变量中指定路径,但这不起作用。
什么是错的$CounterList在PowerShell脚本?我收到的错误消息是“Get-Counter:在计算机上找不到指定的对象。”。这让我认为它试图将列表作为单个值读取。
$CounterList = "\Network Interface(*)\Packets/sec
\Network Interface(*)\Current Bandwidth
\Network Interface(*)\Bytes Total/sec
\Memory\Committed Bytes
\Memory\Commit Limit"
$CounterList_Working = "\Processor(*)\% Processor Time"
echo "Gathering system data and writing to file $home\system_metrics.blg"
Get-Counter -Counter $CounterList -SampleInterval 2 -MaxSamples 10 | Export-counter -Path $home\system_metrics.blg
Run Code Online (Sandbox Code Playgroud)