gpt4 book ai didi

linux - 读取文件的 Bash 脚本

转载 作者:IT王子 更新时间:2023-10-29 00:59:22 32 4
gpt4 key购买 nike

不确定为什么最后一行没有从脚本中删除 ":

#!/bin/bash

FILENAME=$1
while read line
do
cut -d '"' -f2
echo $line
done < $FILENAME

$ cat file

"1" test
"2" test
"3" test
"4" test
"5" test

如果我使用以下命令运行此脚本:

$ ./test file

2
3
4
5
"1" test

最佳答案

循环执行一次。

  • 它将“1”测试读入变量$line
  • 它执行 cut -d '"' -f2 读取文件的第 2-5 行(因为那是当时的标准输入)并打印数字。
  • 它呼应了第一行的内容。

修复:

cut -d '"' -f2 $FILENAME

另一方面,如果您想将数字放入变量中,可以通过多种方式实现,包括:

cut -d '"' -f2 $FILENAME |
while read number
do # What you want
echo $number
done

或:

while read line
do
number=$(echo "$line" | cut -d '"' -f2)
echo $number
done

关于linux - 读取文件的 Bash 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3267252/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com