小编Ste*_*itt的帖子

即使权限是完全开放的,也会出现权限错误

我在新 VM 上安装了 anaconda,但无法列出其内容。我可以将我的目录更改为 .../anaconda/ 但当我输入时,ls -l我得到:

ls: cannot open directory .: Permission denied
Run Code Online (Sandbox Code Playgroud)

但是,当我输入时:

sudo ls -l
Run Code Online (Sandbox Code Playgroud)

我得到

total 92
drwxrwxrwx.   2 gcw8 PosixUsers 12288 May 26 15:30 bin
drwxrwxrwx.   2 gcw8 PosixUsers 12288 May 26 15:30 conda-meta
drwxrwxrwx.   3 gcw8 PosixUsers  4096 Mar 27 16:33 docs
drwxrwxrwx.   2 gcw8 PosixUsers  4096 Mar 27 16:33 envs
drwxrwxrwx.   2 gcw8 PosixUsers  4096 Mar 27 16:33 etc
drwxrwxrwx.   6 gcw8 PosixUsers  4096 May 26 15:19 Examples
drwxrwxrwx.  41 gcw8 …
Run Code Online (Sandbox Code Playgroud)

ls permissions selinux

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

awk 没有结束

我在名为 的文件中有以下代码awktest1.awk

#!/bin/awk -f
BEGIN{print "start"}
{print $2, "\t", $5}
END{print "end"} employee.txt
Run Code Online (Sandbox Code Playgroud)

其中employee.txt包含以下数据:

100  Thomas  Manager    Sales  $5,000 
200  Jason   Developer  Technology  $5,500 
300  Sanjay  Sysadmin   Technology  $7,000 
400  Nisha   Manager    Marketing   $9,500 
500  Randy   DBA        Technology  $6,000
Run Code Online (Sandbox Code Playgroud)

我运行awk命令为:

awk -f awktest1.awk
Run Code Online (Sandbox Code Playgroud)

但它只是打印start,并没有结束。谁能帮我解决我在这里做错了什么?

awk shell-script

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

如何使用shell脚本在Linux中使用“diff”命令获取字符级别差异?

我有两个 SQL 文件,old.sql一个是new.sql.

假设old.sql包含一个包含三个字段的表,Emp_Id、Name 和 Address 以及存储在 old.sql 中的数据如下:

Insert into table1 values (101 ,"a", "xyz");
Insert into table1 values (102 ,"b", "pqr");
Run Code Online (Sandbox Code Playgroud)

然后我将“a”地址“xyz”更改为“xyz123”并将该数据保存在new.sql文件中。现在该new.sql文件包含如下数据:

Insert into table1 values (101 ,"a", "xyz123");
Insert into table1 values (102 ,"b", "pqr");
Run Code Online (Sandbox Code Playgroud)

当我使用这样的diff命令时:

diff old.sql new.sql
Run Code Online (Sandbox Code Playgroud)

它给出了逐行差异,但我只想要更新的数据,如 xyz123。

diff shell-script

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

Debian 9、APT 和“GPG 错误:... InRelease:以下签名无效:”

我发布了一个 Debian 存储库。它使用 4096 位 GPG 密钥进行签名,并且在 Debian 7 和 Debian 8 系统中使用了一段时间。最近,我的一位用户报告说 Debian 9 有问题。具体来说,apt-get update正在产生:

阅读包裹清单...完成
   W:GPG 错误:http: //Debian-repository.JdeBP.info。稳定的 InRelease:以下签名无效:A71733F3CEBD655CB25A0DDCE1E3A497555CE68F
   W:存储库' http://Debian-repository.JdeBP.info。稳定 InRelease' 未签名。

请注意,与“回购 APT 安全 - apt-get 更新 GPG 签名无效”和“对 aptly 和 GPG 签名感到沮丧”中的人不同,我没有使用aptly. 很明显,我没有遭受aptly任何类型的错误。(-:

那么问题是什么?

debian apt repository

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

如何在没有配置的情况下启动 tmux?

如何tmux在不允许它读取任何配置文件的情况下启动?

(我的服务器只有一个账号,所以我要共享很多程序的很多配置文件。这意味着我不能删除.tmux.conf等)

tmux

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

ps 没有显示所有进程

script在启动终端后立即使用该命令,它开始记录我当前的会话,但是当我之后使用ps命令时,它只显示两个进程,bash一个用于ps自己,一个用于自己,但它没有显示脚本命令的任何进程在后台运行,为什么会这样?以更一般的方式说,实际上我从未ps在我的终端上看到显示超过 2 个进程的命令,我的 shell 或终端设置有问题吗?我目前正在使用 Ubuntu。

scripting process ubuntu ps

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

强制 systemd 计时器立即运行?

我正在编写一个带有计时器的服务,WorkingDirectory.service文件出错了。计时器按预期运行。既然我已经重新访问了.service文件,我如何强制运行服务的计时器?

我试过了:

$ systemctl --user enable $(pwd)/mycollector.service
$ systemctl --user start mycollector.timer
$ systemctl --user reload mycollector.timer
Run Code Online (Sandbox Code Playgroud)

$ systemd-run --user mycollector.timer
Run Code Online (Sandbox Code Playgroud)

但它仍在等待:

$ systemctl --user list-timers
NEXT                         LEFT       LAST PASSED UNIT              ACTIVATES
Thu 2019-06-20 23:53:28 UTC  43min left n/a  n/a    mycollector.timer mycollector.service
Run Code Online (Sandbox Code Playgroud)

systemd

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

有没有办法就地使用 tr 命令?

我想从文件中删除所有非英文字母数字。

tr -sc '[:alnum:][:punct:]' ' ' <file
Run Code Online (Sandbox Code Playgroud)

gawksed-i标志,但我在tr手册页中找不到任何类似的内容。

我该如何就地执行此操作,即将输出存储在输入文件本身中?

sed tr gawk

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

在 Gnome 中禁用“GPU 内存不足”通知

如何禁用可用 GPU 内存不足的警告通知?下面包含一个屏幕截图。GPU 内存不足通知

\n\n

这些都非常分散注意力。由于我从不做任何需要 GPU 的事情,因此通知是唯一的症状。我没有看到这有任何其他影响。所以我想摆脱这些对我来说似乎毫无意义的通知。

\n\n

(此外,该通知可能是正确的,因为系统只有 256\xc2\xa0MB GPU 内存)。

\n\n

单击它们不会执行任何操作,并且它们会非常有规律地重复自己(每隔几分钟)。无法在设置应用程序中禁用它们。\n我已经找到了 dconf key org.gnome.settings-daemon.plugins.housekeeping,但这似乎只是关于磁盘空间不足的通知。GPU内存有类似的东西吗?我不想一起禁用通知。

\n\n

我没有机器上的根访问权限,但如果这是唯一的方法,可以让管理员应用解决方案。\n系统在 Centos7 上运行 Gnome 3.28.3。

\n

memory centos notifications gnome3 gpu

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

如何使用 jq 提取 json 文件上的第一个字段/值

我有一个包含以下内容的 JSON 文件:

{
  "Message": {
    "greeting": "hello"
  }
}
{
  "Message": {
    "greeting": "Bonjour"
  }
}
{
  "Message": {
    "greeting": "Konnichiwa"
  }
}
Run Code Online (Sandbox Code Playgroud)

我只想提取第一条包含"greeting" : "hello". 我似乎无法使用它的索引

cat "$file" | jq -c "."
Run Code Online (Sandbox Code Playgroud)

上面的命令全部返回三个消息。我想问一下如何只提取第一条消息或一条一条消息。

json jq

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

标签 统计

shell-script ×2

apt ×1

awk ×1

centos ×1

debian ×1

diff ×1

gawk ×1

gnome3 ×1

gpu ×1

jq ×1

json ×1

ls ×1

memory ×1

notifications ×1

permissions ×1

process ×1

ps ×1

repository ×1

scripting ×1

sed ×1

selinux ×1

systemd ×1

tmux ×1

tr ×1

ubuntu ×1