使用bash脚本以表格式获取特定数据

bozsi12

我有一个文本文件test.txt,其内容如下:

a:b:c:u
e:f:g:h
i:j:k:l
m:n:v:w
q:r:s:t

我想制作一个bash脚本,它将从这样的文本文件中剪切数据,例如:

./run.sh test.txt 3 2 5 3

j:k
n:v
r:s

第一个参数是文件位置,第二个是我想要的第一行,第三个是该行的列,第四个是最后一行,最后一个参数是该行的列。

我开始研究此脚本,但被卡住了。

这是我的代码:

#!/bin/bash
if [ ! -f $1 ]; then
    echo "The first parameter doesn't exist."
    exit 2
elif [ "$#" -ne 5 ]; then
    echo "Given parameter is less than five."
    exit 1
else
    i=0
    while read line; do
        test $((++i)) = $2 && cut -d':' -f$3
    done
fi

我应该如何完成我的代码以如上所述地工作?

赞娜

您可以这样管理:

#!/bin/bash
if [[ ! -f "$1" ]]; then
  echo "oops, no such file"
  exit 1
elif [[ $# -lt 5 ]]; then
  echo "oops, not enough params"
  exit 2
fi
sed -n "$2,$4p" "$1" | cut -d ':' -f$3-$5

笔记

  • sed -nsed以安静模式拨打电话-在我们要求任何东西之前不打印
  • "$2,$4p" "$1"文件开始打印行,$2直到$4包含$1
  • | cut -d ':' -f$3-$5从任何打印内容中打印$3$5包含在内的字段sed

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用伪造者刮取表格以获取特定数据

如何获取列范围内的特定数据列?Google Apps 脚本 - Google 表格

Google脚本-从网站获取特定数据

Google 表格脚本:删除大量包含特定数据的行

使用Apps脚本以Excel格式将Google表格导出到Google云端硬盘

表格帮助-获取PHP脚本以通过ajax发送电子邮件数据

使用awk从ipconfig获取特定数据

使用python从网站获取特定数据

使用 Python 从网站获取特定数据

使用 PHP 从 MYSQL 获取特定数据

bash和awk脚本以YYYY-MM-DD格式获取上个月的日期

如何使用 UrlFetchApp 编写 Google Apps 脚本以在 FinViz.com 中提取部分表格数据?

使用Bash脚本获取特定单词

如何使用特定按钮获取特定数据

获取Google表格脚本以自动重复相同的步骤

使用查询为特定数据生成脚本

使用Xpath提取特定数据的Python脚本

使用 nodejs 从数据库中获取特定数据

从curl获取特定数据

从XML获取特定数据

检索 HTML 表格中的特定数据

使用 Google 表格中的应用脚本获取网站数据

如何通过使用python脚本以特定方式操作Csv数据?

如何获取独立的python脚本以从django应用获取数据?

python:无法使用BeautifulSoup从html获取特定数据

在 Java 中使用 JSOUP 从网站获取特定数据?

如何使用 SQL 选择查询获取特定数据?

如何使用PHP从多维数组获取特定数据

如何使用 PHP 从 JSON 响应中获取特定数据