标签: python

如何获取启动`sudo`的用户名

我的问题:我有一个 Python 程序,用户使用sudo. 有时我必须得到用户的家,我只能知道它的名字才能做到这一点:

import pwd

pwd.getpwnam(username)
Run Code Online (Sandbox Code Playgroud)

那么:我怎样才能获得启动该程序的用户的姓名?

users sudo python

17
推荐指数
1
解决办法
6998
查看次数

作为默认安装的一部分,Python 安装在哪些 Unix 发行版上?

有谁知道一个概述可以记录默认情况下哪些(最近的)UNIX 发行版 Python 可用,即默认安装的一部分?

PS:在问题移到这里之前,来自 StackOverflow 的答案:

  • 不知道所有 Unix 操作系统,但对于 Linux,您可以随时查看 distrowatch.org。但这不是发布此类问题的正确站点:请将其移至 unix.stackexchange.com – vstrien 2 小时前
  • 我想不出任何默认情况下没有安装它的发行版。如今,许多基本的系统工具都是用 Python 编写的。– 丹尼尔罗斯曼 1 小时前
  • 默认情况下,LFS 中未安装它... – Oz123 1 小时前

python portability

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

grep -v 的 Python 等价物是什么?

我喜欢grep -v。我用它所有的时间。但我也在用 python 做一些文本处理,我缺少一件至关重要的事情。

通常,我grep -v习惯从文本中去除无关的东西。

例如,

$ grep -v '[a-z]'
# (I manually review this output to confirm that I don't want those lines)

$ grep '[a-z]' > linesiwanted
Run Code Online (Sandbox Code Playgroud)

但是如何在 Python 中匹配正则表达式的补码?例如,\w?

grep python text-processing regular-expression

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

为什么python被删除后仍然可以工作?

在 Debian 8 jessie 上,我删除了 python:

perry@perry:~$ sudo apt-get remove python
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package 'python2.7' is not installed, so not removed
0 upgraded, 0 newly installed, 0 to remove and 35 not upgraded.
Run Code Online (Sandbox Code Playgroud)

但不知何故,我仍然可以从终端启动 python。

perry@perry:~$ python
Python 2.7.9 (default, Apr 29 2015, 18:34:06) 
[GCC 4.9.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> 
Run Code Online (Sandbox Code Playgroud)

我没有从源代码或任何其他地方安装它,但 apt。这怎么可能,我怎样才能完全删除 python?

debian python apt

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

tmux 导致 anaconda 使用不同的 python 源

好的,所以我在我的 anaconda 环境中,我运行了 which python。我得到

/home/comp/anaconda3/envs/env1/bin/python
Run Code Online (Sandbox Code Playgroud)

现在,如果我启动 tmux,然后运行 ​​source activate env1,然后运行哪个 python,我会得到

/home/comp/anaconda3/bin/python
Run Code Online (Sandbox Code Playgroud)

即使我确实激活了我的环境。如何让 anaconda 在 tmux 中看到相同的路径?

tmux python

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

鉴于 EXIF 数据,如何重命名照片?

假设我有一堆照片,所有照片都有正确的 EXIF 信息,并且照片是随机命名的(因为我遇到了问题)。我有一个名为的小程序jhead,它给了我以下输出:

$ jhead IMG_9563.JPG

File name    : IMG_9563.JPG
File size    : 638908 bytes
File date    : 2011:02:03 20:25:09
Camera make  : Canon
Camera model : Canon PowerShot SX210 IS
Date/Time    : 2011:02:03 20:20:24
Resolution   : 1500 x 2000
Flash used   : Yes (manual)
Focal length :  5.0mm  (35mm equivalent: 29mm)
CCD width    : 6.17mm
Exposure time: 0.0080 s  (1/125)
Aperture     : f/3.1
Focus dist.  : 0.29m
ISO equiv.   : 125
Exposure bias: -1.67
Whitebalance : Manual …
Run Code Online (Sandbox Code Playgroud)

bash python rename exif

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

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

为什么 pip 将包安装到 ~/.local/bin 中?

当我用 pip 安装这个“Taurus Blazemeter 'bzt'”程序时,它最终被安装到~/.local/bin 文件夹中。

mkdir ~/bzt && cd ~/bzt
sudo apt-get install python default-jre-headless python-tk python-pip python-dev libxml2-dev libxslt-dev zlib1g-dev
sudo pip install bzt
Run Code Online (Sandbox Code Playgroud)

有谁知道这个~/.local文件夹的用途以及为什么会安装这样的 Python 程序?

python software-installation files pip lsb

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

CentOS 上的 iotop 命令出错

在我新安装的 CentOS 7.5 的终端中使用sudo iotop(latest version 0.6-2.el7) 时,我收到以下错误消息:

Traceback (most recent call last):
  File "/sbin/iotop", line 17, in <module>
    main()
  File "/usr/lib/python2.7/site-packages/iotop/ui.py", line 620, in main
    main_loop()
  File "/usr/lib/python2.7/site-packages/iotop/ui.py", line 610, in <lambda>
    main_loop = lambda: run_iotop(options)
  File "/usr/lib/python2.7/site-packages/iotop/ui.py", line 508, in run_iotop
    return curses.wrapper(run_iotop_window, options)
  File "/usr/lib64/python2.7/curses/wrapper.py", line 43, in wrapper
    return func(stdscr, *args, **kwds)
  File "/usr/lib/python2.7/site-packages/iotop/ui.py", line 501, in run_iotop_window
    ui.run()
  File "/usr/lib/python2.7/site-packages/iotop/ui.py", line 155, in run
    self.process_list.duration)
  File "/usr/lib/python2.7/site-packages/iotop/ui.py", line 434, in refresh_display
    lines …
Run Code Online (Sandbox Code Playgroud)

centos python iotop

16
推荐指数
1
解决办法
8120
查看次数

从没有 .py 扩展名的终端运行 python 脚本

我想通过简单地输入script从终端调用 python 脚本script.py。这可能吗?如果是这样,如何?

我知道我可以通过在脚本顶部添加#!/usr/bin/env python来避免输入python script.py,但我仍然必须添加后缀.py才能运行脚本。

command-line python executable filenames

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