.txt 데이터 파일에 상수를 곱하는 방법은 무엇입니까?


9

하나의 열이있는 .txt 파일이 있습니다. 약 8000 개의 숫자입니다. 이 데이터 열에 1000000을 어떻게 곱할 수 있습니까?


3
숫자가 엄격하게 정수라면sed 's/$/000000/' file.txt
glenn jackman

6
@ glennjackman : 대답처럼 보입니다. :-]
David Foerster 2018 년

숫자가 정수가 아닌 경우 어떻게합니까?
copper.hat

답변:


24

다음 awk명령 을 사용할 수 있습니다 .

awk '{print $1*1000000}' file.txt

16

파일의 숫자가 정수 또는 단순 부동 소수점 값인 경우 numfmt유틸리티를 사용 --from-unit=하여 원하는 스케일링을 표시 할 수 있습니다 .

전의. 주어진

$ cat file
1.23
5
3.45
17
6.78
23

그때

$ numfmt --from-unit=100000 < file
123000.00
500000
345000.00
1700000
678000.00
2300000

다양한 printf스타일 형식을 출력에 추가 할 수 있습니다. 예 :

$ numfmt --from-unit=100000  --format="%'12.2f" < file
  123,000.00
  500,000.00
  345,000.00
1,700,000.00
  678,000.00
2,300,000.00

또한,과 sedbc:

sed 's/$/ * 100000/' file | bc

또는 (역 광택 변형)

sed 's/$/ 100000 * p/' file | dc

bc마지막 명령 이어야합니까 dc아니면 다른 것입니까?
PerlDuck

3
@PerlDuck dc은 다른 것입니다. 예를 들어 bc는 dc와 어떻게 다른가요?
스틸 드라이버

LOL, 나는 충분히주의 깊게 읽지 않았고 무언가를 반짝이는 것처럼 광택 을 생각했습니다 . 설명을 위해 타이.
PerlDuck

3
하가 "역 폴란드어"그래서 "뭔가 만들려면 반짝 (더 진흙을)?" IMO, 직류는 요구 사항을 충족
글렌 잭맨

이 링크를 참조하십시오. Wikipedia : Reverse Polish 표기법 -1970 년대 세계 최초의 휴대용 과학 계산기 인 HP-35와 다음 계산기 시리즈를 통해 인기를 얻었습니다.
sudodus
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.