AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-255251

Prvt_Yadav's questions

Martin Hope
Prvt_Yadav
Asked: 2019-09-21 03:47:12 +0800 CST

sed 命令适用于 e 标志,但不适用于 E

  • 2

我有一个字符串,我需要#在开头添加 , 即转换[ -n "$ID" -a "$ID" -le 200 ] && return为#[ -n "$ID" -a "$ID" -le 200 ] && return. 我可以使用以下命令:

echo '[ -n "$ID" -a "$ID" -le 200 ] && return'| sed -n -e 's/\[ -n "$ID" -a "$ID" -le 200 \] && return/#&/p'

有用。现在我有两个问题,关于E, flag。

  1. 对于 string [ -n "$ID" -a "$ID" -le 200 ],如果我转义括号,它就不起作用;但是,当我不逃避它们时它会起作用,即

    sed -n -E 's/[ -n "$ID" -a "$ID" -le 200 ]/#&/p'
    

    工作时

     sed -n -E 's/\[ -n "$ID" -a "$ID" -le 200 \]/#&/p'
    

    不起作用。

  2. 因为,完整的字符串[ -n "$ID" -a "$ID" -le 200 ] && return,当我不逃避它们时,它给了我错误的答案:

    echo '[ -n "$ID" -a "$ID" -le 200 ] && return'| sed -n -E 's/[ -n "$ID" -a "$ID" -le 200 ] && return/#&/p'
    

    它给了我输出:

     [ -n "$ID" -a "$ID" -le 200 #] && return
    

我想知道它是如何工作的。

sed
  • 1 个回答
  • 235 Views
Martin Hope
Prvt_Yadav
Asked: 2019-06-19 01:07:13 +0800 CST

如何将列转换为每列具有多个值的行?

  • 0

我有一个文件,其中包含如下数据:

1,2,3 4,5,6 7,8,9 12,22,0

有 4 列我想创建一个有 4 列的表a,b,c,d,例如该列a具有来自第一列的值,列b具有来自第二列的对应值,依此类推..

在上面的示例中,列将如下所示:

a   b   c   d
1   4   7   12
2   5   8   22
3   6   9   0

也没有。特定行的列中的条目数将相同。然而,这些条目对于不同的行可能是不同的,例如,有些行每列只能有 1 个逗号分隔的条目,有些甚至可以有 10 个。

text-processing sed
  • 2 个回答
  • 651 Views
Martin Hope
Prvt_Yadav
Asked: 2019-02-21 10:35:36 +0800 CST

为什么终端逐行输入?

  • 2

如果我使用:

strace echo 'a
b
c' > file

底线是:

write(1, "a\nb\nc\nd\n", 8)             = 8

但在

strace echo 'a
b
c
d' > /dev/pts/0

这些行是:

write(1, "a\n", 2)                      = 2
write(1, "b\n", 2)                      = 2
write(1, "c\n", 2)                      = 2
write(1, "d\n", 2)                      = 2

在第二种情况下,为什么它是逐行写,而在第一种情况下是一起写。可能是因为终端是字符设备,但我将字符设备定义为:

字符 (char) 设备是可以作为字节流(如文件)访问的设备。 char 设备和常规文件之间的唯一相关区别是您始终可以在常规文件中来回移动,而大多数字符设备只是数据通道,您只能按顺序访问。

编辑:Shell 是 bash。

shell devices
  • 1 个回答
  • 243 Views
Martin Hope
Prvt_Yadav
Asked: 2019-01-20 09:57:24 +0800 CST

使用 sed 替换文本并添加单引号 [重复]

  • 1
这个问题在这里已经有了答案:
如何在shell中转义引号? (5 个回答)
3年前关闭。

我回答了这个问题,但我被困在我必须添加单引号的部分。

像原始文件是:

$$BATCHCTRL=TEST-012017
$$STATE=CA AZ
$$FROM_DATE=01/10/2017
$$TO_DATE=01/30/2017

新文件应该是:

$$BATCHCTRL=TEST-012017
$$STATE='CA'
$$FROM_DATE=01/10/2017
$$TO_DATE=01/30/2017

我用了

sed -Ei 's/^\$\$STATE=([A-Z]{2}) ([A-Z]{2})/\$\$STATE=\1/g' sed_file

所以我得到了:

$$BATCHCTRL=TEST-012017
$$STATE=CA
$$FROM_DATE=01/10/2017
$$TO_DATE=01/30/2017

但现在我无法在其中添加单引号。我尝试转义,使用双引号而不是单引号,尝试不使用引号,但没有一个有效。

text-processing sed
  • 3 个回答
  • 7953 Views
Martin Hope
Prvt_Yadav
Asked: 2018-12-04 08:32:29 +0800 CST

是否可以获得仅 sudo 命令的输出?

  • 1

我想仅将 sudo 命令的输出写入某个文件,即我在编写 sudo 后在终端上得到的行,即

[sudo] password for user:

如果我使用sudo ls > fileorsudo ls 2> file然后我分别得到整个命令的 stdout 和 stderr 。我也不能使用sudo > fileor sudo 2> file,然后我会得到错误,我应该在 sudo 之后使用一些选项或命令。那么,有没有可能实现呢?

sudo io-redirection
  • 1 个回答
  • 703 Views
Martin Hope
Prvt_Yadav
Asked: 2018-08-05 00:53:31 +0800 CST

为什么 systemctl halt 要求输入密码但 systemctl reboot 和 systemctl poweroff 没有?

  • 2

我正在使用 Debian 9.5。每当我输入命令systemctl halt时,它都会从终端显示:

Authentication is required to start halt.target

它会要求输入密码。但是我可以使用命令systemctl reboot,systemctl poweroff并且它们不会要求输入密码并且会成功执行。我认为如果它要求输入密码,那么它也应该要求poweroff。

shutdown systemctl
  • 1 个回答
  • 1354 Views
Martin Hope
Prvt_Yadav
Asked: 2018-07-08 08:31:56 +0800 CST

tty 和恢复模式终端工作正常时卡在登录循环

  • 0

我有 linux mint 18。我不小心删除了/bin/bash. 因此,在删除它之后,我将用户的默认 shell 从终端(从/bin/bash到/bin/sh和/bin/sh链接到dash)更改为/etc/passwd. 现在重新启动后,我陷入了登录循环。输入凭据后,获得空白屏幕 10 秒钟,再次获得相同的登录屏幕。也不tty1 tty2...工作。当我输入我的凭证时,它们会消失,并在这些终端上再次得到相同的东西。

问题 2

当我进入恢复模式时,我将获得与普通用户相同的登录屏幕。我没有得到恢复模式选项。它只是让我进入登录屏幕。

编辑 1

我在 grub 菜单上按下 e 并rw init=/bin/dash在 linux /boot/vmlinuz.... 的行尾添加。

的输出ls -l /etc/passwd是rw-r--r-- root root

如果我做cat /etc/passwd用户输入是

user:x:1000:1000:user,,,:/home/user:/bin/dash

ls -l /bin/dash表明它不指向/bin/bash. 正如一个答案所说,检查它。

编辑 2

我在我的windows系统中下载了bash包,复制到外部硬盘,然后从硬盘复制到linux系统。编译并安装它。将可执行文件复制到/bin/bash.

现在使用chsh -s /bin/bash user

现在我可以进入恢复模式,它工作正常。我可以使用tty1..它们也工作正常。我可以切换到使用su userin的用户tty1,它工作正常。如果我这样做echo $SHELL了/bin/bash,但仍然无法进入图形环境。客人和用户都不能登录图形系统。用户可以轻松使用终端它在那里工作但不能使用图形环境。

shell login
  • 1 个回答
  • 2071 Views
Martin Hope
Prvt_Yadav
Asked: 2018-07-05 05:06:46 +0800 CST

对 groupid 为 1 的孩子使用 waitpid

  • 0

我搜索了很多,但没有找到解决方案。所以这可能是个愚蠢的问题。

waitpid 的格式为

pid_t waitpid (pid_t pid, int *status, int options)

pid 参数准确指定要等待的进程。它的价值观分为四个阵营:

< -1
Wait for any child process whose process group ID is equal to the absolute value of this value.

-1
Wait for any child process. This is the same behavior as wait( ).

0
Wait for any child process that belongs to the same process group as the calling process. 

> 0
Wait for any child process whose pid is exactly the value provided.

现在的问题是,如果父母和孩子有不同的组 id 并且孩子的组 id 是 1 怎么办。如何为这个特定的孩子使用 waitpid?因为我们不能使用 -1 它会告诉等待任何孩子。

process system-calls
  • 2 个回答
  • 1080 Views
Martin Hope
Prvt_Yadav
Asked: 2018-06-09 05:36:43 +0800 CST

bash中的变量错误

  • 4

我正在用 bash 编写我的第一个代码。我被困了2个小时。这是我的代码:

#!/bin/bash
declare -i l=0
declare -i d=0
declare -i s1=0
declare -i s2=0
declare -i t=0
declare -i o=0
declare -i p=0
for i in demo_room/subject_1/?*
do
    if [ "${i:0:1}" = "l" ];
    then
            ((l++));
            echo "l=$l"
            python motempl_n.py $i $l

    elif [  "${i:0:1}" = "d" ];
    then
            ((d++));
            echo "d=$d"
            python motempl_n.py $i $d

    elif [  "${i:0:1}" = "o" ];
    then
            o=$((o+1));
            echo "o=$o"
            python motempl_n.py $i $o

    elif [ "${i:0:1}" = "p" ];
    then
            p=$((p+1));
            python motempl_n.py $i $p

    elif [  "${i:0:1}" = "t" ];
    then
            t=$((t+1));
            python motempl_n.py $i $t

    elif [  "${i:0:7}" = "slide_1" ];
    then
            s1=$((s1+1));
            python motempl_n.py $i $s1

    #elif [  "${i:0:7}" == 'slide_2' ]
    else
            s2=$((s2+1));
            python motempl_n.py $i $s2

   fi 
done

所以我有一个文件夹demo_room/subject_1。在这个文件夹中,我有 140 个 avi 视频,它们的名称是:

20 个视频的名称:dislike_01todislike_20

20 个视频的名称:like_01tolike_20

20 个视频的名称:ok_01took_20

20 个视频的名称:point_01topoint_20

20 个视频的名称:slide_1_01toslide_1_20

20 个视频的名称:slide_2_01toslide_2_20

20 个视频的名称:take_a_picture_01totake_a_picture_1_20

我想要做的是首先找到输入视频的类,然后将它的出现作为 python 文件的输入。subject_1文件夹的前 20 个视频是dislike一个,因此此代码工作正常,但第 21 个视频是like_01,但它传递给 python 代码的参数是 21。

但它应该是 1,因为这是 for 循环中同类课程的第一个视频。并且每次打印$d. 这意味着每次进入 2nd if condition。在 python 代码中,我可以验证视频的名称是,like_01但传递的第二个值是21. 为什么?这发生在所有 140 个视频中。

shell-script python
  • 3 个回答
  • 727 Views
Martin Hope
Prvt_Yadav
Asked: 2018-05-06 08:00:47 +0800 CST

什么是固件超时?

  • 5

我找到了一个文件/sys/class/firmware/timeout,这个文件只包含一个单词60。这个超时是否与bootloaderlike相关GRUB timeout?它的实际用途是什么?

linux firmware
  • 1 个回答
  • 985 Views
Martin Hope
Prvt_Yadav
Asked: 2018-05-04 23:25:25 +0800 CST

w 命令不显示所有伪终端会话

  • 3

如果我打开终端并执行w命令,那么它将显示:

user   tty7     :0               12:04   39:56  36.87s  0.06s /sbin/upstart -

现在,如果打开terminator或xterm执行w命令,那么它将在w命令的输出中显示它的条目,例如

user   tty7     :0               12:04   39:56  36.87s  0.06s 
/sbin/upstart -
user   pts/2    :0.0             12:50    1.00s  0.02s  0.00s w

gnome-terminal但是当我打开或时它不会显示新条目xfce4-terminal。为什么它为终结者而不是 xfce4-terminal 显示新会话?

login session
  • 2 个回答
  • 1979 Views
Martin Hope
Prvt_Yadav
Asked: 2018-02-23 05:36:09 +0800 CST

如何以 root 身份运行 jhbuild

  • 2

我已经安装了 jhbuild 并将 PATH 变量设置为 $PATH:~/.local/bin。现在,当我运行 jhbuild 命令时,出现错误:您不应该将 jhbuild 用作 root 用户,当我将用户更改为非 root 用户并再次将 PATH 值更改为大于一个时,将 ~ 替换为 /root,我得到错误jhbuild command not成立。 我使用的是 kali linux,所以默认用户是 root 用户。

gnome python
  • 3 个回答
  • 580 Views
Martin Hope
Prvt_Yadav
Asked: 2018-01-14 07:38:58 +0800 CST

ACPI 异常:找不到/解析命名包元素:AMD 3(dspkginit-381)

  • 2

我一个接一个地面临问题,首先我在Ubuntu上遇到这个问题我没有得到解决所以我安装了fedora并删除了Ubuntu。现在在启动时我得到了这个在此处输入图像描述。启动后显示错误:

BOOT_IMAGE=/boot/bmlinuz-4.14.13-300.fc27.x86_64 crashed,

在其描述中,它表明这是硬件问题而不是软件问题。我有AMD RADEON 显卡。

我认为这使我的系统在执行任务时变慢。

PS 这是联想笔记本。

kernel fedora
  • 1 个回答
  • 4939 Views
Martin Hope
Prvt_Yadav
Asked: 2018-01-12 09:44:53 +0800 CST

如何反转二进制文件的内容?

  • 14

我正在解决一个挑战,我发现一个没有文件扩展名的数据文件。该file命令显示它是一个data file (application/octet-stream). 该hd命令显示GNP。在最后一行。因此,如果我反转此文件,那么我将获得.PNG格式的文件,我到处搜索,但没有找到解释如何反转二进制文件内容的解决方案。

binary
  • 5 个回答
  • 22701 Views
Martin Hope
Prvt_Yadav
Asked: 2017-11-30 02:14:09 +0800 CST

sudo nautilus 和 sudo -E nautilus 的区别

  • -5

最新安装的 ubuntu 17.04 我无法运行命令 sudo nautilus 它给出了错误。然后我在谷歌上搜索并尝试了 sudo -E nautilus 并且它有效。两者有什么区别。

ubuntu sudo
  • 1 个回答
  • 1339 Views
Martin Hope
Prvt_Yadav
Asked: 2017-11-25 02:09:07 +0800 CST

并行安装多个 linux 发行版

  • 1

我有 Ubuntu,我想并行安装 opensuse,将两个引导加载程序都保留在 MBR 中是否很好,或者我应该将 opensuse 引导加载程序保留在我在安装过程中分配给它的其他分区中。在这种情况下,我将看到登录 ubuntu/opensuse 的选项。

ubuntu partition
  • 2 个回答
  • 1539 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

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

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve