我正在尝试编写一个Perl脚本,它将改变一个看起来像这样的行......
<li><em>01 – Chapters 1-4</em> – 00:14:36 <br />
Run Code Online (Sandbox Code Playgroud)
......让它看起来像这样......
01 – Chapters 1-4
Run Code Online (Sandbox Code Playgroud)
......没什么大不了的?我只是\(.*\)在我的Perl脚本中做这样的事情:
#!/usr/bin/perl -w
use strict;
while(<DATA>) {
my $line = $_;
chomp($line);
if ( $line =~ /^<li>/ ) {
$line =~ s/<em>\(.*\)<\/em>/$1/g;
print "[" . $line . "]\n";
}
}
__DATA__
<li><em>01 – Chapters 1-4</em> – 00:14:36 <br />
<li><em>02 – Chapters 5-8</em> – 00:10:52 <br />
<li><em>03 – Chapters 9-14</em> – 00:19:16 <br />
<li><em>04 – Chapters 15-18</em> – 00:13:30 <br />
<li><em>05 …Run Code Online (Sandbox Code Playgroud) 我需要一个更紧凑的,最好是单行的,用于以下 bash 脚本:
#/bin/sh
service openstack-keystone status > /dev/null
service_rc=$?
keystone token-get 2>&1 | grep "^Authentication Failed" > /dev/null
keystone_rc=$?
if [ $service_rc != 0 -o $keystone_rc == 0 ]
then
echo "need to restart"
else
echo "ok"
fi
Run Code Online (Sandbox Code Playgroud)
我最终必须将此逻辑放入傀儡服务中,其中标准状态检查是不够的。
更新。抱歉,我最初的问题没有说得更清楚,感谢您的评论和回答。:)
我有这个HTML档案...
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>simple II</title>
</head>
<body>
<div id="results"><!-- Results are displayed here -->
<form method="post" name="start" target="_blank">
<p>Enter thing1: <input type="text" id="thing1" name="thing1" size="10" /></p>
<p>Enter thing2: <input type="text" id="thing2" name="thing2" size="10" /></p>
<p>Enter thing3: <input type="text" id="thing3" name="thing3" size="10" /></p>
<p>Check thing4: <input type="checkbox" id="thing4" name="thing4" value=1>
<input type="hidden" id="state" name="state" value="one" /></p>
</form>
<button id='clickme' name='clickme'>Click me</button>
</div>
<script src="simple2.js?0000000000002"></script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
...以及此javascript源文件...
document.querySelector("#results button").addEventListener("click", function(e) {
e.preventDefault();
var inputs = document.querySelectorAll("input");
var params; …Run Code Online (Sandbox Code Playgroud) 我已经查看了如何模拟 REST API并阅读了答案,但我似乎仍然无法理解如何处理执行多个 GET 和 POST 请求的方法。下面是我的一些代码。
我有课,UserAliasGroups(). __init__()执行其方法requests.post()以登录外部 REST API。我在单元测试中使用此代码来处理登录的模拟,并且它按预期工作。
@mock.patch('aliases.user_alias_groups.requests.get')
@mock.patch('aliases.user_alias_groups.requests.post')
def test_user_alias_groups_class(self, mock_post, mock_get):
init_response = {
'HID-SessionData': 'token==',
'errmsg': '',
'success': True
}
mock_response = Mock()
mock_response.json.return_value = init_response
mock_response.status_code = status.HTTP_201_CREATED
mock_post.return_value = mock_response
uag = UserAliasGroups(auth_user='TEST_USER.gen',
auth_pass='FakePass',
groups_api_url='https://example.com')
self.assertEqual(uag.headers, {'HID-SessionData': 'token=='})
Run Code Online (Sandbox Code Playgroud)
我还定义了几种方法,如obtain_request_id()、has_group_been_deleted()、does_group_already_exists()等。我还定义了一个名为的方法,create_user_alias_group()该方法调用obtain_request_id()、has_group_been_deleted()和does_group_already_exists()其他方法。
我的单元测试中还有代码来模拟对 REST API 的 GET 请求,以测试我的has_group_been_deleted()方法,如下所示:
has_group_been_deleted_response = { …Run Code Online (Sandbox Code Playgroud) 我试图了解Perl的eval功能.这是我写的测试脚本:
[red@tools-dev1 ~]$ cat evaltest.pl
#!/usr/local/bin/perl -w
use strict;
while(<DATA>) {
chomp;
my ($arg1, $arg2, $op ) = split /,/;
my $cmd = "$arg1 $op $arg2";
print "$cmd\n";
my $rc = eval { $cmd };
print "rc is [$rc]\n";
}
__DATA__
1,2,!=
1,1,!=
1,2,=
1,1,=
1,2,==
2,3,>
3,2,>
3,3,>
2,3,>=
3,2,>=
3,3,>=
2,3,<
3,2,<
3,3,<
2,3,<=
3,2,<=
3,3,<=
Run Code Online (Sandbox Code Playgroud)
当我执行时,我得到这个输出...
[red@tools-dev1 ~]$ ./evaltest.pl
1 != 2
rc is [1 != 2]
1 != 1
rc is [1 != 1] …Run Code Online (Sandbox Code Playgroud) 我知道这个问题有很多答案说我应该尝试在另一个端口上运行我的服务器,如下所示:python manage.py runserver 0.0.0.0:8080 我已经尝试过但没有解决它。我已经关闭了 Windows Norton 防火墙:
我已以管理员身份启动 PyCharm。让我认为这些解决方案对我不起作用的是其他 API 端点工作得很好: 也http://localhost:8000/accounts/login/能工作http://localhost:8000/accounts/logout/。但是,当我填写表单并将数据发布到时,http://localhost:8000/accounts/signup出现此错误:
OSError at /accounts/signup/
[WinError 10013] An attempt was made to access a socket in a way forbidden by its access permissions
Request Method: POST
Request URL: http://127.0.0.1:8000/accounts/signup/
Django Version: 2.2.7
Exception Type: OSError
Exception Value:
[WinError 10013] An attempt was made to access a socket in a way forbidden by its access permissions
Run Code Online (Sandbox Code Playgroud)
有人可以告诉我我在这里缺少什么吗?
有没有相当于Python的in条件运算符的Javascript ?
good = ['beer', 'pizza', 'sushi']
thing = 'pizza'
if thing in good:
print 'hurray'
Run Code Online (Sandbox Code Playgroud)
在Javascript中编写上述Python代码的好方法是什么?