ubuntu linux shell脚本更改文本文件中一行的列值

什么

所有这些都是为了防万一:

情况1:

 echo "${name}:${identity}:${hp}:$now:"0"" >> info.txt      # write to info.txt

所以我会有这样的事情: Tom:8:987654:commission:0 # i assign it to 0 first

情况2:

echo -n "Enter employee's name:"
read name

S=`grep $name info.txt`;    

    if test -z $S 
then
echo "No details with employee name  $name"
else
echo "$S" | cut -d: -f4 // display 4th column.
echo 
echo -n "Enter hourly wage: "; read wage;
echo -n "Enter hours worked this week: "; read hours;

pay=$hours-40*$wage;          

echo -n "To update next payroll : press Y else N to go main menu: "     

read option
case "$option" in 
[Yy]*)  echo "Payroll have been updated."
    echo grep $name | sed -i s/\:*$/$pay/n info.txt //error         
    ;;
[Nn]*) 
    echo "Press Enter to view the Main"     
esac
fi

我的文本文件如下所示:

Tom:8:987654:commission:0
Tommy:7:12379813:hourly:0
Fan:5:2132131:salaried:0

我试图将最后一列的值替换为$ pay(并非所有列仅由用户指定名称)假设$ pay是10,$ name是Tommy

这是预期的文本文件:

   Tom:8:987654:commission:0
    Tommy:7:12379813:hourly:10
    Fan:5:2132131:salaried:0

但是我得到了这个错误:sed: -e expression #1, char 15: unknown option tos'`

我正在在Ubuntu终端上进行操作。

Ipor警报器

替换整行:

sed -e "/$name/s/[0-9]*$/$pay/" -i info.txt

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何从linux shell脚本中的文本文件合并同一行中的两行

来自分类Dev

如何基于一列加入文本文件并删除linux中的第一行?

来自分类Dev

在Ubuntu 20.10中基于文本文件的第一行(内容)重命名/批量重命名文本文件?

来自分类Dev

基于 Ubuntu 20.10 中文本文件的第一行(内容)批量/批量重命名文本文件?

来自分类Dev

在 shell/linux 中的文本文件的第一列中搜索特定字符串

来自分类Dev

通过文本文件进行AWK / Linux脚本计算

来自分类Dev

Linux Bash和脚本编制-计算文本文件中的行

来自分类Dev

我们如何在 Ubuntu 20.10 中同一目录中的每个文本文件的最后一行(内容)的末尾附加星号(*)?

来自分类Dev

在Linux Snappy Ubuntu Core上更改密码

来自分类Dev

将Linux Mint更改为Ubuntu

来自分类Dev

将Linux Mint更改为Ubuntu

来自分类Dev

Linux替换文本文件中的行

来自分类Dev

在Linux中合并文本文件的两列

来自分类Dev

Linux Ubuntu 14.04.1文件权限

来自分类Dev

在 linux/ubuntu 中重新排序名称文件

来自分类Dev

无法读取文件 Matlab Linux Ubuntu

来自分类Dev

将文件从Linux复制到Linux(Ubuntu)

来自分类Dev

VBNET读取文本文件中一行的特定列

来自分类Dev

我们如何在Ubuntu 20.10的同一目录中的每个文本文件的最后一行(内容)的最后一行末尾附加星号(*)?

来自分类Dev

linux比较文本文件

来自分类Dev

在Ubuntu上编写bash脚本以按列将数字文本文件读取为数组

来自分类Dev

Linux将多个文本文件脚本化为单个PostScript文件

来自分类Dev

使用批处理更改文本文件中一行内的字符串

来自分类Dev

使用bash脚本从Linux中的文本文件导出信息

来自分类Dev

OS X / Linux单行代码/脚本在文本文件中查找最大的重复行行?

来自分类Dev

Linux脚本从文本文件中提取用户名

来自分类Dev

Swift SQLite Linux / Ubuntu

来自分类Dev

Amazon Linux AMI与Ubuntu

来自分类Dev

Linux Ubuntu 16.04.0 与 16.04.3

Related 相关文章

  1. 1

    如何从linux shell脚本中的文本文件合并同一行中的两行

  2. 2

    如何基于一列加入文本文件并删除linux中的第一行?

  3. 3

    在Ubuntu 20.10中基于文本文件的第一行(内容)重命名/批量重命名文本文件?

  4. 4

    基于 Ubuntu 20.10 中文本文件的第一行(内容)批量/批量重命名文本文件?

  5. 5

    在 shell/linux 中的文本文件的第一列中搜索特定字符串

  6. 6

    通过文本文件进行AWK / Linux脚本计算

  7. 7

    Linux Bash和脚本编制-计算文本文件中的行

  8. 8

    我们如何在 Ubuntu 20.10 中同一目录中的每个文本文件的最后一行(内容)的末尾附加星号(*)?

  9. 9

    在Linux Snappy Ubuntu Core上更改密码

  10. 10

    将Linux Mint更改为Ubuntu

  11. 11

    将Linux Mint更改为Ubuntu

  12. 12

    Linux替换文本文件中的行

  13. 13

    在Linux中合并文本文件的两列

  14. 14

    Linux Ubuntu 14.04.1文件权限

  15. 15

    在 linux/ubuntu 中重新排序名称文件

  16. 16

    无法读取文件 Matlab Linux Ubuntu

  17. 17

    将文件从Linux复制到Linux(Ubuntu)

  18. 18

    VBNET读取文本文件中一行的特定列

  19. 19

    我们如何在Ubuntu 20.10的同一目录中的每个文本文件的最后一行(内容)的最后一行末尾附加星号(*)?

  20. 20

    linux比较文本文件

  21. 21

    在Ubuntu上编写bash脚本以按列将数字文本文件读取为数组

  22. 22

    Linux将多个文本文件脚本化为单个PostScript文件

  23. 23

    使用批处理更改文本文件中一行内的字符串

  24. 24

    使用bash脚本从Linux中的文本文件导出信息

  25. 25

    OS X / Linux单行代码/脚本在文本文件中查找最大的重复行行?

  26. 26

    Linux脚本从文本文件中提取用户名

  27. 27

    Swift SQLite Linux / Ubuntu

  28. 28

    Amazon Linux AMI与Ubuntu

  29. 29

    Linux Ubuntu 16.04.0 与 16.04.3

热门标签

归档