리눅스 분류
awk 실행결과를 변수에 넣는 방법 입니다.
작성자 정보
- 소두 작성
- 작성일
컨텐츠 정보
- 6,134 조회
- 6 댓글
- 0 추천
- 목록
본문
#!/bin/bash
set string=`awk -F: '$3 > 99 && $3 < 60000 { print $1"%"$6; }' /etc/passwd`
echo $string
사용자 계정과 홈디렉토리 경로를 string변수에 넣고 출력하는 예제인데
에코 출력이 아무것도 없네요.
왜 출력이 안될까요?
set string=`awk -F: '$3 > 99 && $3 < 60000 { print $1"%"$6; }' /etc/passwd`
echo $string
사용자 계정과 홈디렉토리 경로를 string변수에 넣고 출력하는 예제인데
에코 출력이 아무것도 없네요.
왜 출력이 안될까요?
관련자료
-
이전
-
다음
댓글 6
문종영님의 댓글
- 문종영
- 작성일
set 을 빼고 실행해보세요.
자세한 내용은 메뉴얼을 보시구요.
자세한 내용은 메뉴얼을 보시구요.
소두님의 댓글의 댓글
- 소두
- 작성일
set 빼고 실행해도 안됩니다.; 답글 감사하지만 메뉴얼을 봐도 모르겠고 딱 저위에 실행 방법이 아니라 $string 도 해보고 xport string 해봐도 안되서 저런식으로 결과값을 얻을려면 어떤 방법이 있는지 알고싶어서 질문 올렸어요;
소두님의 댓글
- 소두
- 작성일
참고로 awk 내 스크립트에 { string=$1 } 해서 각행마다 $1을 string변수에 저장하는 방법을 알고 싶어요;ㅠㅠ
남성훈님의 댓글의 댓글
- 남성훈
- 작성일
각 행마다 변수를 저장 하려고 하면 배열로 저장 하시면 될거 같습니다.
배열을 정의하고 스크립트 결과를 받아서 그걸 뿌려 주면 각행마다 저장 된걸 보여 줄수 있습니다.
배열을 정의하고 스크립트 결과를 받아서 그걸 뿌려 주면 각행마다 저장 된걸 보여 줄수 있습니다.
남성훈님의 댓글
- 남성훈
- 작성일
쉘 스크립트 쉽지 않죠..
저도 항상 헷갈립니다. ㅋ
일단 쉘을 작성하시면 스크립트를 디버깅 해줘야 합니다.
sh -vx script.sh 로 하면 실제로 스크립트를 실행한것을 보여 줍니다.
거기서 에러가 나는 부분에서 멈추기 때문에 어디가 에러가 났는지 알 수 있습니다.
참고 바랍니다.
저도 항상 헷갈립니다. ㅋ
일단 쉘을 작성하시면 스크립트를 디버깅 해줘야 합니다.
sh -vx script.sh 로 하면 실제로 스크립트를 실행한것을 보여 줍니다.
거기서 에러가 나는 부분에서 멈추기 때문에 어디가 에러가 났는지 알 수 있습니다.
참고 바랍니다.
다낚아님의 댓글
- 다낚아
- 작성일
set을 왜 썻는지 몰겠네요. -_- set만 빼시고 그대로 돌려보면 정상적으로 원하는 출력물이 나옵니다. 돌려보니깐 잘나오네요.