Unix & Linux

Linux,FreeBSD和其他类似Un * x的操作系统用户的问答

4
“ passwd”和“ chpasswd”有什么区别?
我从一本书passwd中阅读了这些命令的描述 : 更改现有用户的密码。 chpasswd: 读取登录名和密码对的文件,并更新密码。 看来这些命令执行相同的工作。它们之间有区别吗? 编辑: 我想学习何时使用它们更改哪个文件。他们更改相同文件还是不同文件?如果他们更改了不同的文件,它们是什么?


3
如何将文件的不同行读取到不同变量?
我想将文本文件的不同行读取到不同的变量。例如 input.txt: line1 foo foobar bar line2 bar line3 foo line4 foobar bar 我想这个结果存储在变量var1,var2,var3和var4这样 var1=line1 foo foobar bar var2=line2 bar 等等。 有人可以告诉我它是如何完成的。我试图eval在for循环中使用。它似乎不起作用。
14 bash 

3
如何从bash的文件名扩展机制中排除某些文件?
我在根目录中有ubuntu文件系统目录,而我不小心将数百个文件复制到了根目录中。 我直觉地试图通过排除文件系统来删除复制的文件,例如 rm -rf !{bin,sbin,usr,opt,lib,var,etc,srv,libx32,lib64,run,boot,proc,sys,dev} ./. 但它不起作用。在删除整个目录时排除某些目录的正确方法是什么? 编辑:切勿在不知所措的情况下尝试此处的任何命令!

4
无法使用su将命令作为www-data运行
# su -l www-data ./http-app.py This account is currently not available. # su -l www-data -c ./http-app.py This account is currently not available. # su -c ./http-app.py www-data This account is currently not available. # su -lc ./http-app.py www-data This account is currently not available. # getent passwd www-data www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin …
14 debian  su 

4
systemd服务单元文件中的动态变量
有没有办法在systemd服务单元文件中动态分配环境变量? 我们有一台具有4个GPU的机器,并且我们希望每个GPU加速某个服务的多个实例。例如: gpu_service @ 1:1.service gpu_service @ 2:1.service gpu_service @ 3:1.service gpu_service @ 4:1.service gpu_service @ 1:2.service gpu_service @ 2:2.service gpu_service @ 3:2.service gpu_service @ 4:2.service 广告恶心 因此,1:1、2:1等实际上是服务单元文件中的%i。 为了使服务绑定到特定的GPU,服务可执行文件检查某个环境变量,例如: USE_GPU=4 有没有一种方法可以将%i放入服务单元文件中,并通过某些(外壳)函数运行它以得出GPU编号,然后可以相应地设置USE_GPU环境变量? 最重要的是,我不想/etc/systemd/system/gpu_service@x:y.service/local.conf只写多个文件的麻烦,这样我就可以启动更多实例。

1
我可以按月分组吗?
我的目录中有很多照片。具体来说,du -sh --apparent-size /path/to/myfolder给我331G。太好了 但是现在我想要按月分组的列表,例如: 2016-01 20MB 2016-02 520MB 2016-03 312MB ... 是否有(合理的)方式使用linux内置函数来执行此操作,还是我应该编写自己的Python实用程序来执行此操作?

4
exit命令如何在Unix终端上工作?
有人可以解释一下该exit命令在Unix终端中如何工作吗? 搜索man exit 并which exit没有帮助,我遇到了以下问题。 在我的新Red Hat系统上安装了Anaconda和PyCharm的附加软件包后,我注意到当我打电话exit退出终端会话时,我会遇到一系列错误,然后终端按预期方式退出。错误似乎表明我对的呼叫exit正在触发rm ~/anaconda3/.../和rm ~/PyCharm/....,从而导致错误。所有目录也似乎是我为这些程序下载的软件包的位置(即numpy),请参见下文。 $ exit rm: cannot remove ‘~/anaconda3/lib/python3.5/site-packages/numpy/core’: Is a directory ... ... 解决 在我的~/.bash_logout档案中,有一行 find ~ -xdev ( -name *~ -o -name .*~ -o -name core ) -exec \rm '{}' \; 注释掉该行可停止错误消息。它似乎可以搜索和删除所有临时文件。但是,它也尝试查找其中包含“核心”一词的目录,并将其删除。这是系统中的预设。


2
服务启动请求重复太快,拒绝启动
我已经在Debian 8.6上创建了一个服务,并且当我尝试使用service命令启动它时,出现错误。 我已经尝试过systemctl daemon-reload,但仍然得到相同的结果。 $ sudo service cloud9 start $ sudo service cloud9 status ● cloud9.service - cloud9 Loaded: loaded (/etc/systemd/system/cloud9.service; enabled) Active: failed (Result: start-limit) since Thu 2016-10-13 07:21:02 UTC; 2s ago Process: 2610 ExecStart=/opt/bitnami/nodejs/bin/node /home/user/c9sdk/server.js -w /home/user -l 0.0.0.0 -a admin:admin (code=exited, status=216/GROUP) Main PID: 2610 (code=exited, status=216/GROUP) …



2
如何传递参数以在bash脚本中起作用?
我想编写一个可以从带有许多不同变量的脚本中调用的函数。由于某些原因,我在执行此操作时遇到很多麻烦。我读过的示例始终仅使用全局变量,但就我所知,这不会使我的代码更具可读性。 预期的用法示例: #!/bin/bash #myscript.sh var1=$1 var2=$2 var3=$3 var4=$4 add(){ result=$para1 + $para2 } add $var1 $var2 add $var3 $var4 # end of the script ./myscript.sh 1 2 3 4 我尝试$1在函数中使用诸如此类,但随后只需要调用整个脚本的全局范围即可。基本上,我正在寻找类似的东西$1,$2诸如此类,但是在函数的本地上下文中。如您所知,函数可以使用任何适当的语言来工作。

1
随机图像生成器
我正在生成随机数据,并尝试使用将其转换为PNG图像: head -c 1MB < /dev/urandom | hexdump -e '16/1 "_x%02X"' | sed 's/_/\\/g; s/\\x //g; s/.*/ "&"/' | tr -d "\"" | display -depth 8 -size 1000x1000+0 rgb:- 此命令始终显示带有某些RGB像素的灰色图像。我究竟做错了什么 ? 我的最终目标是至少生成一张包含随机数据的图像。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.