小编Ini*_*ian的帖子

如何在 bash --login -i 上更改 bash 中的目录

我正在使用Cygwin并希望使用 diff 参数运行它,这样我就可以在 Windows 中启动后立即更改目录。

例如

bash --login -i ; cd /
Run Code Online (Sandbox Code Playgroud)

或者

bash --login -i ; cd /tmp
Run Code Online (Sandbox Code Playgroud)

cd不起作用,我如何将更改目录传递给

bash --login -i
Run Code Online (Sandbox Code Playgroud)

仅供参考,我无法将其放入cd.bash,它必须传入

尝试过这个但没有运气

bash --login -i -s cd /tmp;
Run Code Online (Sandbox Code Playgroud)

linux bash cygwin

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

如何在 shell 脚本中回显包含路径的文本

我正在尝试将特定文本回显到文件中。但它最终以另一种方式呼应了它。我不知道我哪里错了。

我想要回显的文字是

export PATH=$PATH:/usr/lib/java/jdk1.8.0_121/bin/
Run Code Online (Sandbox Code Playgroud)

在脚本文件中我将其设置为

echo "export PATH=$PATH:/usr/lib/java/jdk1.8.0_121/bin/" >> /home/$USER/Desktop/output.txt
Run Code Online (Sandbox Code Playgroud)

但在output.txt文件中,我得到

export PATH=/home/lijin/bin:/home/lijin/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/lib/java/jdk1.8.0_121/bin/:/usr/lib/java/jdk1.8.0_121/bin/
Run Code Online (Sandbox Code Playgroud)

我希望将确切的文本回显到文件 output.txt

我正在使用 echo,因为我必须附加已经存在的文件内容,然后将其打印到文件中。

bash shell

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

用 bash 中内容的 MD5 哈希字符串替换文件的完整文件名

问题:

我在一个文件夹中有一堆文件,我想将它们全部重命名为文件内容的 md5。

我试过的:

这是我试过的命令。

for i in $(find /home/admin/test -type f);do mv $i $(md5sum $i|cut -d" " -f 1);done
Run Code Online (Sandbox Code Playgroud)

但这在一段时间后因错误而失败,只有一些文件被重命名,其余部分保持不变。

mv: missing destination file operand after /home/admin/test/help.txt
Try `mv --help' for more information.
Run Code Online (Sandbox Code Playgroud)

实施是否正确?我在脚本中做错了什么吗?

bash shell md5

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

如何最大限度地利用 Jekyll 生成的网页中的屏幕空间?

我已经设法下载和设置 Jekyllminima主题以在我的博客中记录我的日常任务更新。目前它看起来像下面

在此处输入图片说明

我想让可编辑的内容全屏显示,以便我在页面上有更多空间来写很长的博客文章。我找到了文件_site/assets/main.css并尝试修改容器

文件内容如下。我不是 SaaS 和页面样式方面的专家,但我尝试修改.container属性以增加.padding.margin随机高值并在此jekyll build之后执行并仍在加载页面时,它没有反映所做的更改。

那么如何制作此页面以最大限度地利用屏幕空间?

/**
 * Reset some basic elements
 */
body, h1, h2, h3, h4, h5, h6,
p, blockquote, pre, hr,
dl, dd, ol, ul, figure {
  margin: 0;
  padding: 0; }

/**
 * Basic styling
 */
body {
  font: 400 16px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  color: #111;
  background-color: #fdfdfd; …
Run Code Online (Sandbox Code Playgroud)

jekyll jekyll-theme

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

JQ - 如何通过jq插入数组对象的中间

您能提示一下如何通过 jq 在数组对象中间插入新元素吗?

1.json 文件:-

[ {
    "name": "Dependencies",
    "asyncInstallation": false,
    "failOnError": true,
    "yamls": [
      "dependency.yaml",
          ]
  },
  {
    "name": "Management Configuration",
    "asyncInstallation": false,
    "failOnError": true,
    "yamls": [
      "mgmt-job.yaml"
    ]
  },
  {
    "name": "Data Configuration",
    "asyncInstallation": false,
    "failOnError": true,
    "yamls": [
      "data-job.yaml"
    ]
  }, 
  {
    "name": "Tools",
    "asyncInstallation": true,
    "failOnError": false,
    "yamls": [
      "tools-job.yaml"
    ]
  }
]
Run Code Online (Sandbox Code Playgroud)

我想在管理配置后插入以下文本。

 {
    "name": "NEW Configuration",
    "asyncInstallation": false,
    "failOnError": true,
    "yamls": [
      "newfile.yaml"
    ]
  }, 
Run Code Online (Sandbox Code Playgroud)

您能否建议我们如何使用 jq 或 sed 来做?

谢谢萨拉瓦南

json sed jq

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

如何提取jq中特定子字符串之后的所有文本

我有这个JSON:

{"item":2, "url":"domain/house/23/bedroom"}
Run Code Online (Sandbox Code Playgroud)

我正在尝试使用jq获取此新的JSON:

{"item":2, "number":"23", "room":"bedroom"}
Run Code Online (Sandbox Code Playgroud)

可以在jq中这样做吗?第一步,我尝试使用捕获功能来捕获“ / house /”之后的子字符串,但是它不起作用:

cat myjson.json | jq -c '{item:.item,substring:(.url | capture("/house/.*").substring)}'
Run Code Online (Sandbox Code Playgroud)

有没有办法提取两个值并将它们放在两个不同的字段中?

json jq

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

如果下一行与 sed 匹配模式,如何删除下一行?

如果下一行与模式匹配,我有删除下一行的问题。例如 :

define service{
host_name               A
notification_period     F
}


define service{
host_name               A
notification_period     metrologie
notification_period     F
}
Run Code Online (Sandbox Code Playgroud)

我检查模式计量。如果下一行包含notification_period,我想删除行notification_period F。

我尝试使用命令 sed '/metrologie/{h;d;};/notification_period/{x;!d;}' $file

但它将字符串转换为:

define service{
host_name               A

}


define service{
host_name               A
notification_period     metrologie
}
Run Code Online (Sandbox Code Playgroud)

我想要这个输出:

define service{
host_name               A
notification_period     F
}


define service{
host_name               A
notification_period     metrologie
}
Run Code Online (Sandbox Code Playgroud)

sed

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

使用 jq 解析和映射 2 个数组

我正在使用类似于以下的 JSON 文件:

{   "Response" : {
    "TimeUnit" : [ 1576126800000 ],
    "metaData" : {
      "errors" : [ ],
      "notices" : [ "query served by:1"]
    },
    "stats" : {
      "data" : [ {
        "identifier" : {
          "names" : [ "apiproxy", "response_status_code", "target_response_code", "target_ip" ],
          "values" : [ "IO", "502", "502", "7.1.143.6" ]
        },
        "metric" : [ {
          "env" : "dev",
          "name" : "sum(message_count)",
          "values" : [ 0.0]
        } ]
      } ]
    }   } }
Run Code Online (Sandbox Code Playgroud)

我的目标是显示标识符和值的映射,例如:

apiproxy=IO
response_status_code=502
target_response_code=502 
target_ip=7.1.143.6
Run Code Online (Sandbox Code Playgroud)

我已经能够解析名称和值 …

json jq

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

Bash 脚本在匹配后打印单词

我正在尝试通过 bash 脚本检查时钟是否同步。

所以首先我执行了timedatectl输出以下内容的命令:

Local time: Mi 2021-03-17 12:52:53 CET
              Universal time: Mi 2021-03-17 11:52:53 UTC
                    RTC time: Mi 2021-03-17 11:52:53
                   Time zone: Europe/Berlin (CET, +0100)
   System clock synchronized: yes
   systemd-timesyncd.service active: yes
             RTC in local TZ: no
Run Code Online (Sandbox Code Playgroud)

因此我们的目标是获得的价值System clock synchronizedyes,它分配给一个变量并打印。因此我做了以下工作:

1-# check if time synchronized
2-syncTime="$(timedatectl | grep 'System clock')" # returns the whole line
3-echo "$syncTime"# make sure the line is saved
4-ifTimeSynched="$( $syncTime | grep -oP 'synchronized: \K\w+')"  # this supposes …
Run Code Online (Sandbox Code Playgroud)

grep

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

awk 按最后一列排序并打印整行

如何按排序$NF|"sort -u"然后打印整行

原始数据:

column1                 COlumn2                 column3
ov0002 1.40 Feb 05 2019 I42 v2.04 (04/18/2019)  ov0002
ov0002 1.40 Feb 05 2019 I42 v2.04 (04/18/2019)  ov0002
ov0002 1.40 Feb 05 2019 I42 v2.04 (04/18/2019)  ov0002
ov0002 1.40 Feb 05 2019 I42 v2.04 (04/18/2019)  ov0002
ov0002 1.40 Feb 05 2019 I42 v2.04 (04/18/2019)  ov0002
ov0002 1.40 Feb 05 2019 I42 v2.04 (04/18/2019)  ov0002
ov0001 1.46 Jul 25 2019 I42 v2.14 (09/05/2019)  ov0001
ov0001 1.45 Jun 27 2019 I42 v2.32 (03/09/2020)  ov0001 …
Run Code Online (Sandbox Code Playgroud)

awk

1
推荐指数
2
解决办法
109
查看次数

标签 统计

bash ×3

jq ×3

json ×3

sed ×2

shell ×2

awk ×1

cygwin ×1

grep ×1

jekyll ×1

jekyll-theme ×1

linux ×1

md5 ×1