小编Gil*_*not的帖子

在Android中获取WiFi代理设置

我正在尝试阅读WIFI代理设置

  • 代理主机
  • 代理端口
  • 代理用户(身份验证)
  • 代理密码(身份验证)

从Android版本的设备2.XX - 4.XX没有任何成功.

呼叫:

String proxy = Settings.Secure.getString(context.getContentResolver(), Settings.Secure.HTTP_PROXY);
Run Code Online (Sandbox Code Playgroud)

始终返回null.

我还添加到我的Android清单:

<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />
Run Code Online (Sandbox Code Playgroud)

仍然会返回null.

还尝试过:

android.net.Proxy. getHost(Context ctx) – which is deprecated – returns the IP
android.net.Proxy. getPortt(Context ctx) – which is deprecated – returns always -1.
Run Code Online (Sandbox Code Playgroud)

Java调用:

System.getProperty("http.proxyHost");
System.getProperty("http.proxyCall");
Run Code Online (Sandbox Code Playgroud)

也返回null.

是否有一个工作代码可以检索所有这些设置,或者至少部分来自所有Android版本的设备?

proxy android wifi

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

在bash中从键盘发送SIGINT到管道命令

如果在bash中我a | b | c | d在命令行上运行然后按^C,哪个进程获取信号?

linux bash signals

11
推荐指数
2
解决办法
870
查看次数

vim:make如果成功则编译并运行C代码

编译C程序并运行它,我使用":make"但是如果编译成功,我也想运行编译的程序.

我写

au FileType c setlocal makeprg=g++\ %\ \&\&\ ./a.out
Run Code Online (Sandbox Code Playgroud)

在vimrc中,这是有效的,但是当我的代码中出现一些错误时,我有一个vim错误,因此vim不会将光标放在好的行上.我收到此错误:

E40:无法打开errorfile/tmp/vEtUQQ2/0

是否有解决方法,修复或其他方法来实现这一目标?

c vim g++

10
推荐指数
2
解决办法
5947
查看次数

32和33杀死信号发生了什么?

如果输入kill -lbash和探测信号的数量.

32和33杀死信号发生了什么?

linux bash kill

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

如何写入CSV而不是覆盖过去的文本

下面的代码是我到目前为止的代码.当它写入.csv时,它会覆盖我之前在文件中写入的内容.如何以不擦除我之前文本的方式写入文件.(我的代码的目标是拥有一个人输入他们的名字并让程序记住它们)

def main(src):
    try:
        input_file = open(src, "r")
    except IOError as error:
        print("Error: Cannot open '" + src + "' for processing.")
    print("Welcome to Learner!")
    print("What is your name? ")
    name = input()
    for line in input_file:
        w = line.split(",")
        for x in w:    
            if x.lower() == name.lower():
                print("I remember you "+ name.upper())
            else:
                print("NO")
                a = open("learner.csv", "w")
                a.write(name)
                a.close()
                break
if __name__ == "__main__":
    main("learner.csv")
Run Code Online (Sandbox Code Playgroud)

python python-3.x

8
推荐指数
3
解决办法
2万
查看次数

Bash字符串替换让我"糟糕的替代"

我有一个变量,这是一个网址,我想在bash中替换该网址的一部分,但我不断得到"糟糕的替代"

URL="http://hostname/project/branches/Old_Branch/package"
SRC="Old_Branch"
REP="New_Branch"

echo ${$URL/$SRC/$REP};
# desired output is http://hostname/project/branches/New_Branch/package
Run Code Online (Sandbox Code Playgroud)

不确定我哪里错了...

bash replace

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

如何在有条件的ansible playbook中为dict添加键/值

假设我想InterestingVar在变量test_var存在(传递-e in command line)时添加dict键和相关值,我该怎么做?

# ansible-playbook ./add_to_dict_on_condition.yml -i 127.0.0.1, -e env=test -e test_var=123
- hosts: localhost
  gather_facts: no
  vars:
    - tags:
        InterestingVar: "{{test_var}}" # How to omit this line if test_var == '' ?
        Name: xxx
        Env: "{{ env }}"

  tasks:
    - debug: var=tags
Run Code Online (Sandbox Code Playgroud)

我测试过了

 InterestingVar: "{{test_var|default(omit)}}
Run Code Online (Sandbox Code Playgroud)

但我得到:

"InterestingVar": "__omit_place_holder__caca01e207397883640613b08e8ce3a8fbdd6"
Run Code Online (Sandbox Code Playgroud)

而不是没有.

任何帮助将不胜感激.

我用 ansible 1.8

jinja2 ansible ansible-playbook

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

更好的正则表达式来获取括号中的值

我有一个 M3U 播放列表,如下所示:

#EXTM3U
#EXTINF:-1 tvg-id="wsoc.us" tvg-name="ABC 9 (Something) (WSOC)" tvg-logo="" group-title="US Locals",ABC 9 (Something) WSOC (WSOC) 
http://some.url/1
#EXTINF:-1 tvg-id="wbtv.us" tvg-name="CBS 3 WBTV (WBTV)" tvg-logo="" group-title="US Locals",CBS 3 WBTV (WBTV)
http://some.url/2
#EXTINF:-1 tvg-id="wcnc.us" tvg-name="NBC (Hey) 36 WCNC (WCNC)" tvg-logo="" group-title="US Locals (Something here)",NBC 36 (Hey) WCNC (WCNC)
http://some.url/3
#EXTINF:-1 tvg-id="wjzy.us" tvg-name="FOX 46 WJZY (Shout Out) (WJZY)" tvg-logo="" group-title="US Locals",FOX 46 WJZY (Shout Out) (WJZY)
http://some.url/4
Run Code Online (Sandbox Code Playgroud)

我希望获取 tvg-name 字段中不带括号的最后一个条目 - 例如,WSOC 和 WBTV 和 WCNC 等。

这有效:

grep -Po 'tvg-name=\".*?\"'  Playlist.m3u …
Run Code Online (Sandbox Code Playgroud)

regex awk grep

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

在bash中检查XML的内容

我无法解决这个问题并希望得到你的帮助.

在bash脚本中,我使用curl命令,该命令应该从服务器获取数据.curl响应被放入bash变量中,因为我想检查响应.

响应如下:

<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
  <env:Body><dp:response xmlns:dp="http://www.datapower.com/schemas/management">
    <dp:timestamp>2018-02-28T13:31:36+01:00</dp:timestamp>
    <dp:result> OK </dp:result>
    </dp:response>
  </env:Body>
</env:Envelope>
Run Code Online (Sandbox Code Playgroud)

重要的是:

<dp:result> OK </dp:result>
Run Code Online (Sandbox Code Playgroud)

如何在我的bash脚本中检查这个确切的字符串是否在变量中(或不是)?我尝试了几种具有不同类型逃逸的方法,然而,到目前为止失败了(总是以一个特殊字符的问题结束).

谢谢您的帮助!

variables bash shell curl

7
推荐指数
1
解决办法
85
查看次数

无法从 Ldapmain 对您进行身份验证,因为“user.name 的凭据无效”

我用

\n\n
    \n
  • Debian 9
  • \n
  • gitlab-ce 11.10.4-ce.0
  • \n
  • 通过 apt 进行综合安装
  • \n
  • openldap 2.4.44
  • \n
\n\n

ldap配置

\n\n

已配置/etc/ldap/ldap.conf

\n\n
BASE    dc=serverX,dc=lan\nURI     ldap://serverX.lan\nTLS_CACERT  /etc/ssl/certs/ca-certificates.crt\n
Run Code Online (Sandbox Code Playgroud)\n\n

已配置/etc/gitlab/gitlab.rb

\n\n
gitlab_rails[\'ldap_enabled\'] = true\ngitlab_rails[\'ldap_servers\'] = YAML.load <<-EOS\n  label: \'Gitlab LDAP\'\n  host: \'10.0.0.1\'\n  port: 389\n  uid: \'sAMAccountName\'\n  method: \'plain\' #\xc2\xa0"tls" or "ssl" or "plain"\n  bind_dn: \'cn=admin,ou=users,dc=serverX,dc=lan\'\n  password: \'xxxx\'\n  encryption: \'plain\'\n  active_directory: false\n  allow_username_or_email_login: true\n  block_auto_created_users: false\n  base: \'ou=users,dc=serverX,dc=lan\'\nEOS\n
Run Code Online (Sandbox Code Playgroud)\n\n

输出gitlab-rake gitlab:ldap:check正常:

\n\n
# gitlab-rake gitlab:ldap:check\nChecking LDAP ...\n\nLDAP: …
Run Code Online (Sandbox Code Playgroud)

authentication ldap gitlab

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