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-117946

Gautam Somani's questions

Martin Hope
Gautam Somani
Asked: 2024-12-24 07:01:06 +0800 CST

如果我在 head -n 中使用除 1 之外的任何其他数字,Bash 就不会使用 PATH 中定义的 PATH

  • 5

这对我来说有点搞笑。我有一个文件,我正在循环运行awk和cut命令,由head命令提供。命令是:

head -n X all.du.K.txt | while read line ; do NON_APP=$(echo ${line} | awk '{print $1}' | cut -d"," -f2) ; APP=$(echo ${line} | awk '{print $2}' | cut -d"," -f2) ; PATH=$(echo ${line} | awk '{print $3}') ; echo ${PATH},${NON_APP},${APP} ; done >> final.csv

如果 X 是 1,它可以工作,但如果 X 是 2 或任何其他数字,我就会收到以下错误:

head -n 2 all.du.K.txt | 读取行时;执行 NON_APP=$(echo ${line} | awk '{print $1}' | cut -d"," -f2) ; APP=$(echo ${line} | awk '{print $2}' | cut -d"," -f2) ; PATH=$(echo ${line} | awk '{print $3}') ; echo ${PATH},${NON_APP},${APP} ; 完成 >> final.csv

命令“cut”可在以下位置使用

  • /bin/cut
  • /usr/bin/cut 无法找到命令,因为 '/bin:/usr/bin' 未包含在 PATH 环境变量中。cut:未找到命令 命令“awk”可在以下位置使用
  • /bin/awk
  • /usr/bin/awk 无法找到命令,因为 '/bin:/usr/bin' 未包含在 PATH 环境变量中。awk:未找到命令 命令“awk”可在以下位置使用
  • /bin/awk
  • /usr/bin/awk 无法找到命令,因为 '/usr/bin:/bin' 未包含在 PATH 环境变量中。awk:未找到命令 命令“cut”可在以下位置使用
  • /bin/cut
  • /usr/bin/cut 无法找到命令,因为 '/usr/bin:/bin' 未包含在 PATH 环境变量中。cut:未找到命令 命令“awk”可在以下位置使用
  • /bin/awk
  • /usr/bin/awk 找不到命令,因为 PATH 环境变量中不包含“/usr/bin:/bin”。awk:未找到命令

我的 $PATH 环境如下:

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

如果在set -x on 的情况下运行上述循环,我会得到以下输出,仅供大家参考:

  • head -n 2 all.du.K.txt
  • 读取行 ++ echo /var/opt/gitlab/gitlab-rails/shared/artifacts/e0/e7/e0e72896f2d07d134de6efb2d6541bed7e297e17f010f67f30247abc56d92c6c,5375K /var/opt/gitlab/gitlab-rails/shared/artifacts/e0/e7/e0e72896f2d07d134de6efb2d6541bed7e297e17f010f67f30247abc56d92c6c,17086K /var/opt/gitlab/gitlab-rails/shared/artifacts/e0/e7/e0e72896f2d07d134de6efb2d6541bed7e297e17f010f67f30247abc56d92c6c ++ awk'{打印$ 1}' ++ cut -d,-f2
  • NON_APP = 5375K ++ echo /var/opt/gitlab/gitlab-rails/shared/artifacts/e0/e7/e0e72896f2d07d134de6efb2d6541bed7e297e17f010f67f30247abc56d92c6c,5375K /var/opt/gitlab/gitlab-rails/shared/artifacts/e0/e7/e0e72896f2d07d134de6efb2d6541bed7e297e17f010f67f30247abc56d92c6c,17086K /var/opt/gitlab/gitlab-rails/shared/artifacts/e0/e7/e0e72896f2d07d134de6efb2d6541bed7e297e17f010f67f30247abc56d92c6c ++ awk'{打印$ 2}' ++ cut -d,-f2
  • APP = 17086K ++ echo /var/opt/gitlab/gitlab-rails/shared/artifacts/e0/e7/e0e72896f2d07d134de6efb2d6541bed7e297e17f010f67f30247abc56d92c6c,5375K /var/opt/gitlab/gitlab-rails/shared/artifacts/e0/e7/e0e72896f2d07d134de6efb2d6541bed7e297e17f010f67f30247abc56d92c6c,17086K /var/opt/gitlab/gitlab-rails/shared/artifacts/e0/e7/e0e72896f2d07d134de6efb2d6541bed7e297e17f010f67f30247abc56d92c6c ++ awk'{打印$ 3}'
  • PATH = / var / opt / gitlab / gitlab-rails /共享/artifacts / e0 / e7 / e0e72896f2d07d134de6efb2d6541bed7e297e17f010f67f30247abc56d92c6c
  • 回显/var/opt/gitlab/gitlab-rails/shared/artifacts/e0/e7/e0e72896f2d07d134de6efb2d6541bed7e297e17f010f67f30247abc56d92c6c,5375K,17086K
  • 读取行 ++ echo /var/opt/gitlab/gitlab-rails/shared/artifacts/e0/38/e03865e0382175da3126eb126534c2d3c9b4cf69483fa8a167d05c070360edc4,145K /var/opt/gitlab/gitlab-rails/shared/artifacts/e0/38/e03865e0382175da3126eb126534c2d3c9b4cf69483fa8a167d05c070360edc4,191K /var/opt/gitlab/gitlab-rails/shared/artifacts/e0/38/e03865e0382175da3126eb126534c2d3c9b4cf69483fa8a167d05c070360edc4 ++ awk '{print $1}' ++ '[' -x /usr/lib/command-not-found ']' ++ cut -d, -f2 ++ /usr/lib/command-not-found -- awk ++ '[' -x /usr/lib/command-not-found ']' ++ /usr/lib/command-not-found -- cut 命令 'cut' 可在以下位置使用
  • /bin/cut
  • /usr/bin/cut 无法找到命令,因为 '/usr/bin:/bin' 未包含在 PATH 环境变量中。cut:未找到命令 命令“awk”可在以下位置使用
  • /bin/awk
  • /usr/bin/awk 找不到命令,因为 '/usr/bin:/bin' 未包含在 PATH 环境变量中。awk:未找到命令 ++ 返回 127 ++ 返回 127
  • NON_APP = ++ 回显/var/opt/gitlab/gitlab-rails/shared/artifacts/e0/38/e03865e0382175da3126eb126534c2d3c9b4cf69483fa8a167d05c070360edc4,145K /var/opt/gitlab/gitlab-rails/shared/artifacts/e0/38/e03865e0382175da3126eb126534c2d3c9b4cf69483fa8a167d05c070360edc4,191K /var/opt/gitlab/gitlab-rails/shared/artifacts/e0/38/e03865e0382175da3126eb126534c2d3c9b4cf69483fa8a167d05c070360edc4 ++ awk '{print $2}' ++ '[' -x /usr/lib/command-not-found ']' ++ /usr/lib/command-not-found -- awk ++ cut -d, -f2 ++ '[' -x /usr/lib/command-not-found ']' ++ /usr/lib/command-not-found -- cut 命令'cut'可在以下位置使用
  • /bin/cut
  • /usr/bin/cut 无法找到命令,因为 '/bin:/usr/bin' 未包含在 PATH 环境变量中。cut:未找到命令 命令“awk”可在以下位置使用
  • /bin/awk
  • /usr/bin/awk 找不到命令,因为 '/usr/bin:/bin' 未包含在 PATH 环境变量中。awk:未找到命令 ++ 返回 127 ++ 返回 127
  • APP = ++ echo /var/opt/gitlab/gitlab-rails/shared/artifacts/e0/38/e03865e0382175da3126eb126534c2d3c9b4cf69483fa8a167d05c070360edc4,145K /var/opt/gitlab/gitlab-rails/shared/artifacts/e0/38/e03865e0382175da3126eb126534c2d3c9b4cf69483fa8a167d05c070360edc4,191K /var/opt/gitlab/gitlab-rails/shared/artifacts/e0/38/e03865e0382175da3126eb126534c2d3c9b4cf69483fa8a167d05c070360edc4 ++ awk '{print $3}' ++ '[' -x /usr/lib/command-not-found ']' ++ /usr/lib/command-not-found -- awk 命令 'awk' 可在以下位置使用
  • /bin/awk
  • /usr/bin/awk 找不到命令,因为 PATH 环境变量中不包含“/usr/bin:/bin”。awk:未找到命令 ++ 返回 127
  • 路径=
  • 回音,,
  • 读行

来自我的输入文件的示例:

/var/opt/gitlab/gitlab-rails/shared/artifacts/e0/e7/e0e72896f2d07d134de6efb2d6541bed7e297e17f010f67f30247abc56d92c6c,5375K /var/opt/gitlab/gitlab-rails/shared/artifacts/e0/e7/e0e72896f2d07d134de6efb2d6541bed7e297e17f010f67f30247abc56d92c6c,17086K /var/opt/gitlab/gitlab-rails/shared/artifacts/e0/e7/e0e72896f2d07d134de6efb2d6541bed7e297e17f010f67f30247abc56d92c6c /var/opt/gitlab/gitlab-rails/shared/artifacts/e0/38/e03865e0382175da3126eb126534c2d3c9b4cf69483fa8a167d05c070360edc4,145K /var/opt/gitlab/gitlab-rails/shared/artifacts/e0/38/e03865e0382175da3126eb126534c2d3c9b4cf69483fa8a167d05c070360edc4,191K /var/opt/gitlab/gitlab-rails/shared/artifacts/e0/38/e03865e0382175da3126eb126534c2d3c9b4cf69483fa8a167d05c070360edc4 /var/opt/gitlab/gitlab-rails/shared/artifacts/e0/f2/e0f23d7875aff9c6b4ef20f27e7d38c4e312811ae627319267f566a4dc244636,168K /var/opt/gitlab/gitlab-rails/shared/artifacts/e0/f2/e0f23d7875aff9c6b4ef20f27e7d38c4e312811ae627319267f566a4dc244636,555K /var/opt/gitlab/gitlab-rails/共享/artifacts/e0/f2/e0f23d7875aff9c6b4ef20f27e7d38c4e312811ae627319267f566a4dc244636

知道这里发生了什么有趣的事情吗? Bash 版本是“GNU bash,版本 5.0.17(1)-release (x86_64-pc-linux-gnu)”

bash
  • 1 个回答
  • 16 Views
Martin Hope
Gautam Somani
Asked: 2018-01-14 05:27:51 +0800 CST

将 Ambari-Server 备份文件创建重定向到不同的位置

  • 1

我正在使用命令备份我的 Ambari 服务器

ambari-server backup 

这会在/var/lib/ambari-server/位置创建备份文件

我希望备份转到不同的位置,但我找不到这样做的方法。该ambari-server命令的帮助选项没有多大帮助。请指导。

backup
  • 1 个回答
  • 92 Views
Martin Hope
Gautam Somani
Asked: 2016-02-17 02:43:57 +0800 CST

增加“ssh:连接到主机 xxxxx 端口 22:连接超时”的连接超时

  • 0

我需要对网络中的 20k+ 台机器(所有 linux)执行某种扫描,并且我正在使用 ssh 连接到每台机器,在其上运行一个小命令,然后收集输出。我正在运行并行线程,每个线程大约有 3k 到 4k 台机器。

问题是对于某些机器,登录不起作用,在我的情况下,这表明机器没有正确配置。SSH 大约需要一分钟才能超时,这 1 分钟会延迟过度扫描。

是否有任何选项可以减少 ssh 在结束尝试连接和显示消息之前必须等待的超时时间:

ssh: connect to host xxxxx port 22: Connection timed out

并转移到下一台机器?这将显着加快整体扫描速度,不仅是在我在太多机器上进行扫描时,甚至在少数机器上也是如此。

ssh
  • 1 个回答
  • 1820 Views
Martin Hope
Gautam Somani
Asked: 2014-01-20 03:34:27 +0800 CST

ls -l 显示不断更新带有几分钟旧时间戳的日志文件(修改时间)

  • 0

我给出了命令ls -lt来查看哪些日志文件不断被写入,因为如果它们被写入,修改时间将几乎非常接近 date 命令的输出。

但奇怪的是,对于所有不断修改(写入)的日志文件,ls命令输出中的修改时间显示为 12 分钟。例如,如果我给出命令

date ; echo ; ls -lt *log

如果获取日期的输出为Sun Jan 19 16:48:16 IST 2014,则 ls -lt *log 命令的输出会在给出命令时写入一段时间,将文件详细信息显示为:

-rw-r--r-- 1 root 12014 6.2M Jan 19 16:36 Imap.log

现在这里的 Imap.log 文件不断被写入,所以修改的时间应该也非常非常接近16:48,但是可以看出,正好是16:36。足足相差12分钟。

date 命令的输出是正确的。我尝试使用简单的ls -l以及stat filename来查看那里的详细信息,甚至stat命令也显示Modify时间戳为 12 分钟。

正在写入日志文件的分区安装在 NFS 上。那是罪魁祸首吗?我需要检查什么?

操作系统是 CentOS 5.4。内核为 2.6.18-164.el5。

nfs
  • 1 个回答
  • 241 Views
Martin Hope
Gautam Somani
Asked: 2012-12-24 05:46:35 +0800 CST

为什么 rsync 会分叉自己?为什么一个这样的分叉进程几乎有点空闲(如 iotop 中所见)?

  • 11

这是指这里所说的事情,我也遇到了同样的事情。

在我的一台服务器上,我运行了一个 rsync,以将一个巨大的目录(大小大于 300 Gb)备份到安装在同一台机器上的不同磁盘。正在同步的目录包含数千个目录和文件。我使用“nohup”发出了一个 rsync 命令,然后使用“&”命令将其推送到后台。在远程 bash shell 上给出的完整命令(使用 putty)是:

nohup rsync -avh /some/local/dir /backup/ >> /opt/rsync.dec22.log &

然后为了检查数据被复制的速率,我使用了“iotop”命令,发现有 3 个 rsync 以相同的参数运行。在搜索时我发现上面的链接说这是正常的。

但是做一个 iotop 只监视系统上运行的那些和唯一的 rsync 进程,我看到一个进程正在读取文件,一个正在写入文件,但一个是空闲的。行为似乎很好,因为一个进程一次只做一件事,但是第三个进程在做什么(见下图中的中间进程)?

我使用的 iotop 命令是:

iotop -p22250 -p22251 -p22252

这是 iotop 命令输出的屏幕截图:

显示 3 个 rsync 进程的 iotop 命令输出

我问这个是因为我经常使用 rsync,并且想了解它的行为以获得长期利益。我什至阅读了手册,但它只字未提分叉。

linux
  • 1 个回答
  • 4014 Views

Sidebar

Stats

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

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

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

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve