小编G-M*_*ca'的帖子

如何指示 yum 安装特定版本的软件包 X?

如果 YUM 存储库中有两个(或更多)版本的给定 RPM 可用,我如何指示yum安装我想要的版本?

查看 Koji 构建服务,我注意到有几个版本。

    党卫军#1

yum package-management

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

为什么在 UNIX/Linux 中不允许硬链接到目录?

我在教科书中读到 Unix/Linux 不允许硬链接到目录,但允许软链接。是不是因为,当我们有循环,如果我们创建硬链接,一段时间后我们删除原始文件,它会指向一些垃圾值?

如果循环是不允许硬链接的唯一原因,那么为什么允许软链接到目录?

filesystems directory hard-link symlink

137
推荐指数
6
解决办法
7万
查看次数

如何获取软符号链接的原始文件的完整路径?

我想要 scp一个文件到服务器。该文件是一个符号链接,实际上我想做的是复制源文件。

我不想手动跟踪源文件的路径,因为它可以被替换。

我如何获得源文件的绝对路径,以便我可以scp使用它?

scp symlink

123
推荐指数
6
解决办法
22万
查看次数

如何将 GPG 私钥和公钥导出到文件

我通过执行以下命令使用 GPG 生成了密钥

gpg --gen-key
Run Code Online (Sandbox Code Playgroud)

现在我需要将密钥对导出到一个文件中;即分别是private.pgp和 的私钥和公钥public.pgp。我该怎么做?

gpg pgp openpgp

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

如何将命令的输出分配给 shell 变量?

我想将表达式的结果(即命令的输出)分配给一个变量,然后对其进行操作——例如,将它与一个字符串连接起来,然后回显它。这是我所拥有的:

#!/bin/bash
cd ~/Desktop;
thefile= ls -t -U | grep -m 1 "Screen Shot";
echo "Most recent screenshot is: "$thefile;
Run Code Online (Sandbox Code Playgroud)

但是输出:

Screen Shot 2011-07-03 at 1.55.43 PM.png
Most recent screenshot is: 
Run Code Online (Sandbox Code Playgroud)

因此,它看起来没有分配给$thefile,并且在执行时正在打印。

我错过了什么?

bash io-redirection shell-script variable

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

如何在SSHFS中指定密钥?

我有一个我无法找到答案的问题。我有两台计算机,都运行 Ubuntu Linux 12.04。我已经设置了我的第一台计算机(“家”),以便能够使用公共/私有 RSA 密钥身份验证通过 SSH 连接到我的第二台计算机(“远程”)。

这不是第一个在我的家用计算机上使用密钥身份验证建立的 SSH 连接,因此我的家用计算机有几个 id_rsa 私钥文件(每个文件都用于不同的计算机以进行 SSH 连接)。因此,我能够成功SSH只有当我指定(在密钥文件ssh,该-i选项),使用ssh username@ipaddress -i path/to/keyfile/id_rsa.2

这很好用。但是,我也想使用sshfs挂载远程文件系统的 。虽然ssh使用多个密钥似乎很好,但我找不到sshfs使用正确私钥(“id_rsa.2”)的方法。

有没有办法sshfs做到这一点?

ssh key-authentication sshfs

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

grep里面少?

我目前正在筛选许多不熟悉的日志以寻找一些问题。我查看的第一个文件是 Events.log,我得到了至少三个页面,less其中似乎在不同时间显示相同的事件 - 一个看起来相当温和的事件。我想过滤掉这个事件,目前我退出less并做一些类似的事情

grep -v "event text" Events.log | less
Run Code Online (Sandbox Code Playgroud)

这现在带来了一些我也想过滤掉的其他常见的、无趣的事件。有没有一种方法可以让我grep -v 里面less?而不是必须做

egrep -v "event text|something else|the other thing|foo|bar" Events.log | less
Run Code Online (Sandbox Code Playgroud)

在查看任何类型的日志文件时,它给我的印象是一个有用的功能——如果less不是这个工具,是否还有另一个具有我所寻求的品质?只是一个less内置grep.

less grep bash logs

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

在单行 bash 循环中使用 &(与号)

我一直在成功使用此命令,它更改了配置文件中的变量,然后在循环中执行 Python 脚本:

for((i=114;i<=255;i+=1)); do echo $i > numbers.txt; python DoMyScript.py; done
Run Code Online (Sandbox Code Playgroud)

由于每个DoMyScript.py实例在终止前运行大约需要 30 秒,我想将它们降级到后台,同时可以生成下一个。

我已经尝试了我熟悉的方法,添加了一个&符号,如下所示:

for((i=114;i<=255;i+=1)); do echo $i > numbers.txt; python DoMyScript.py &; done
Run Code Online (Sandbox Code Playgroud)

但是,这会导致以下错误:

-bash: syntax error near unexpected token `;'
Run Code Online (Sandbox Code Playgroud)

command-line bash process shell-script

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

如何将不区分大小写的模式与 ls 匹配?

我想列出与某个模式匹配的所有文件,同时忽略大小写。

例如,我运行以下命令:

ls *abc*
Run Code Online (Sandbox Code Playgroud)

我想查看所有将“abc”作为文件名一部分的文件,忽略大小写,例如

-rw-r--r-- 1 mtk mtk 0 Sep 21 08:12 file1abc.txt
-rw-r--r-- 1 mtk mtk 0 Sep 21 08:12 file2ABC.txt
Run Code Online (Sandbox Code Playgroud)

笔记

我已经在手册页中搜索了案例,但找不到任何内容。

ls shell wildcards case-sensitivity

74
推荐指数
4
解决办法
10万
查看次数

延迟将数据写入磁盘背后的理念是什么?

在 Linux 中,诸如cp或之类的命令的完成执行dd并不意味着数据已写入设备。例如,必须调用sync或调用驱动器上的“安全删除”或“弹出”功能。

这种方法背后的哲学是什么?为什么不一次写入数据?是否存在因 I/O 错误而导致写入失败的危险?

drivers kernel io unix-philosophy

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