小编Aar*_*ron的帖子

按名称杀死进程?

我正试图杀死一个进程(特别是iChat).在命令行中,我使用以下命令:

ps -A | grep iChat 
Run Code Online (Sandbox Code Playgroud)

然后:

kill -9 PID
Run Code Online (Sandbox Code Playgroud)

但是,我不确定如何将这些命令转换为Python.

python kill process

84
推荐指数
6
解决办法
19万
查看次数

在python脚本中查找电话号码

以下python脚本允许我使用正则表达式从给定文件中删除电子邮件地址.

我怎么能添加这个以便我也可以获得电话号码?比如说,如果它是7位数或10位数(带区号),还算括号括号?

我目前的脚本可以在下面找到:

# filename variables
filename = 'file.txt'
newfilename = 'result.txt'

# read the file
if os.path.exists(filename):
        data = open(filename,'r')
        bulkemails = data.read()
else:
        print "File not found."
        raise SystemExit

# regex = something@whatever.xxx
r = re.compile(r'(\b[\w.]+@+[\w.]+.+[\w.]\b)')
results = r.findall(bulkemails)
emails = ""
for x in results:
        emails += str(x)+"\n"

# function to write file
def writefile():
        f = open(newfilename, 'w')
        f.write(emails)
        f.close()
        print "File written."
Run Code Online (Sandbox Code Playgroud)

正则表达式的电话号码:

(\d{3}[-\.\s]\d{3}[-\.\s]\d{4}|\(\d{3}\)\s*\d{3}[-\.\s]\d{4}|\d{3}[-\.\s]\d{4})
Run Code Online (Sandbox Code Playgroud)

电话号码的另一个正则表达式:

(?:(?:\+?1\s*(?:[.-]\s*)?)?(?:\(\s*([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9])\s*\)|([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9]))\s*(?:[.-]\s*)?)?([2-9]1[02-9]|[2-9][02-9]1|[2-9][02-9]{2})\s*(?:[.-]\s*)?([0-9]{4})(?:\s*(?:#|x\.?|ext\.?|extension)\s*(\d+))?
Run Code Online (Sandbox Code Playgroud)

python regex

20
推荐指数
4
解决办法
5万
查看次数

在Python中访问相对路径

我正在运行Mac OS X环境,习惯使用〜/来提供对当前用户目录的访问.

例如,在我的python脚本中,我只是想尝试使用

os.chdir("/Users/aaron/Desktop/testdir/")
Run Code Online (Sandbox Code Playgroud)

但是想用

os.chdir("~/Desktop/testdir/")
Run Code Online (Sandbox Code Playgroud)

尝试运行时,我得到一个没有这样的文件或目录错误.有任何想法吗?

python path

13
推荐指数
1
解决办法
9349
查看次数

Python帮助读取csv文件因行结尾而失败

我正在尝试创建此脚本来检查计算机主机名,然后在主列表中搜索该值以返回csv文件中的相应值.然后打开另一个文件并找到替换.我知道这应该很简单,但之前没有在python中做过这么多.这是我到目前为止所拥有的......

masterlist.txt  (tab delimited)
Name                 UID
Bob-Smith.local      bobs
Carmen-Jackson.local carmenj
David-Kathman.local  davidk
Jenn-Roberts.local   jennr
Run Code Online (Sandbox Code Playgroud)

这是我到目前为止创建的脚本

#GET CLIENT HOST NAME
import socket
host = socket.gethostname()
print host

#IMPORT MASTER DATA
import csv, sys
filename = "masterlist.txt"
reader = csv.reader(open(filename, "rU"))

#PRINT MASTER DATA
for row in reader:
  print row

#SEARCH ON HOSTNAME AND RETURN UID



#REPLACE VALUE IN FILE WITH UID
#import fileinput
#for line in fileinput.FileInput("filetoreplace",inplace=1):
#   line = line.replace("replacethistext","UID")
#   print line
Run Code Online (Sandbox Code Playgroud)

现在,它只是设置打印主列表.我不确定列表是否需要解析并放入字典或什么.我真的需要弄清楚如何在第一个字段中搜索主机名,然后在第二列中返回该字段.

先谢谢你的帮助,亚伦


更新:我从masterlist.txt中删除了第194行和最后一行,然后重新运行了脚本.结果如下:

回溯(最近调用最后一次):
文件"update.py",第3行,用于csv.DictReader中的行(open(fname),delimiter ='\ …

python csv line-endings universal

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

用Python替换文件中的文本

我正在尝试使用值替换文件中的某些文本.一切正常,但是当我在文件完成后查看文件时,文件中的每一行后面都有一个新的(空白)行.我能做些什么来防止这种情况发生.

这是我拥有的代码:

  import fileinput
    for line in fileinput.FileInput("testfile.txt",inplace=1):
       line = line.replace("newhost",host)
       print line
Run Code Online (Sandbox Code Playgroud)

谢谢你,亚伦

python text replace file

6
推荐指数
1
解决办法
2785
查看次数

设备上没有Jenkins和Docker的空间 - 如何正确清理

我们在Ubuntu 16.04.1服务器上运行Jenkins(版本2.60.1).我们最近遇到的一个问题是我们经常得到错误" 设备上没有剩余空间 ".

我知道在使用Docker时需要进行严格的清理过程,因为文件会留下并占用不必要的空间.

我们使用CloudBees Docker Build and Publish插件来处理构建并推送到AWS ECS.我想删除所有未使用的图像.问题是如果我登录Jenkins实例(通过SSH)并尝试运行它提供的docker命令 - "无法连接到Docker守护程序.这个主机上是否运行了docker守护程序?"

我想我需要在Jenkins环境或插件的一部分中做到这一点?

有人之前处理过此事或有过一些建议吗? - 我真的很感激.

jenkins jenkins-plugins cloudbees docker jenkins-docker

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

将文件夹中的文件复制到python中的一个目录中

我有一个文件夹,包含一些文件,我想复制一个目录(这个文件夹也有一些我不想复制的文件).我知道有os.chdir("..")命令将我移动到目录.但是,我不确定如何将我需要的文件复制到此目录中.任何帮助将不胜感激.


更新:

这就是我现在拥有的:

from shutil import copytree, ignore_patterns

copytree("/Users/aaron/Desktop/test/", "/Users/aaron/Desktop/", ignore=ignore_patterns('*.py', '*.txt'))
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

Traceback (most recent call last):
  File "update.py", line 61, in <module>
    copytree("/Users/aaron/Desktop/test/", "/Users/aaron/Desktop/", ignore=ignore_patterns('*.py', '*.txt'))
  File "/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/shutil.py", line 146, in copytree
    os.makedirs(dst)
  File "/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/os.py", line 157, in makedirs
    mkdir(name, mode)
OSError: [Errno 17] File exists: '/Users/aaron/Desktop/'
Run Code Online (Sandbox Code Playgroud)

python copy file

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

文件获取内容无法打开流未经授权

我正在尝试使用file_get_contents.I确保在php.ini中启用了allow_url_fopen.截至目前,它告诉我:

[function.file-get-contents]:无法打开流:HTTP请求失败!HTTP/1.1 401未经授权

我正在做的就是以下内容,我可以通过浏览器访问它而没有任何问题.

$url=('http://site/@api/users/=john_smith@site.com/properties');
$xmlString=file_get_contents($url);
Run Code Online (Sandbox Code Playgroud)

我相信这是一个身份验证问题,但不确定如何从脚本本身提供正确的凭据.任何想法将不胜感激.

php http httpwebrequest file-get-contents

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