【问题标题】:In bash scripting, count1 = `cat $affected_ip|wc -l`;echo $count1;在 bash 脚本中,count1 = `cat $affected_ip|wc -l`;echo $count1;
【发布时间】:2019-01-07 11:48:14
【问题描述】:
count1=`cat $affected_ip|wc -l`;
echo $count1;

这些代码行会从名为 afffected_ip 的文件中获取计数并打印输出吗?

需要帮助来执行上述任务。

【问题讨论】:

  • 不,这行语法不正确。
  • “=”号两边不能有空格,应该帮你解决。
  • 顺便说一句,在 bash 中,您不需要在行尾使用分号,如果您在单个文本行上有多个命令,则仅在命令之间使用分号。
  • 文件实际上是名为“affected_ip”还是 $affected_ip 变量中的名称?

标签: linux bash syntax


【解决方案1】:

我想您正在尝试计算受影响的 ips 数量等,因此您每行有 1 个 ip。

其实你离得并不远。

首先(正如用户 simon3270 所提到的),在这个 sn-p 中你不需要这些分号。在这种情况下,bash 中的赋值变量也不需要 $。

在你的情况下,在 bash shell 上运行

wc - l < affected_ips.txt

您将获得线路/IP 的数量。如果您有特定的模式需要辨别,Grepping 等可以帮助您。

如果您需要更多帮助,请分享更多信息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-04-11
    • 2019-12-19
    • 1970-01-01
    • 2021-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-30
    相关资源
    最近更新 更多