Printf 숫자 형식 오류

Printf 숫자 형식 오류

grep몇 번의 ing과 ing 후에 sedcsv 셀에서 값을 가져와 변수(DBR)에 할당했습니다.

여기 이상한 발견이 있습니다

echo $DBR
echo "$DBR",
printf "%f" $DBR

산출:

9.1
,.1
: invalid numbersh: line 25: printf: 9.1

답변1

ing grepseding이 값에서 후행 캐리지 리턴을 제거하지 못했습니다 DBR(원본 CSV 파일의 DOS 스타일 줄 끝에서 발생했을 수 있음).

전임자. 주어진

$ printf -vDBR '9.1\r'
$ echo "$DBR" | xxd
00000000: 392e 310d 0a                             9.1..

그 다음에

$ echo $DBR
9.1
$ echo "$DBR",
,.1
$ printf '%f\n' "$DBR"
: invalid number1
0.000000

관련 정보