다음 스크립트는 출력을 인쇄합니다.
/var/lib/ambari-server/resources/scripts/configs.sh get localhost c1 yarn-env
스크립트 출력:
"yarn_log_dir_prefix" : "/var/log/hadoop-yarn",
"yarn_pid_dir_prefix" : "/var/run/hadoop-yarn",
"yarn_user" : "yarn",
"yarn_user_nofile_limit" : "32768",
"yarn_user_nproc_limit" : "65536"
파이프라인 awk 또는 perl oneline 선형을 추가하고 싶습니다.원사 환경출력의 첫 번째 필드에는 다음이 포함됩니다. (예상 결과)
/var/lib/ambari-server/resources/scripts/configs.sh get localhost c1 yarn-env | awk ...
yarn-env "yarn_log_dir_prefix" : "/var/log/hadoop-yarn",
yarn-env "yarn_pid_dir_prefix" : "/var/run/hadoop-yarn",
yarn-env "yarn_user" : "yarn",
yarn-env "yarn_user_nofile_limit" : "32768",
yarn-env "yarn_user_nproc_limit" : "65536"
답변1
/var/lib/ambari-server/resources/scripts/configs.sh get localhost c1 yarn-env |
awk '{ print "yarn-env", $0 }'
이 짧은 스크립트는 명령 입력의 각 줄 앞에 awk
문자열을 추가합니다 . yarn-env
사용되는 구분 기호는 awk
변수 OFS
("출력 필드 구분 기호", 기본적으로 단일 공백임)이므로 사이에 탭 문자를 추가하려면 다음을 사용하세요.
/var/lib/ambari-server/resources/scripts/configs.sh get localhost c1 yarn-env |
awk -vOFS="\t" '{ print "yarn-env", $0 }'
또는 다음을 사용하십시오 sed
.
/var/lib/ambari-server/resources/scripts/configs.sh get localhost c1 yarn-env |
sed 's/^/yarn-env /'
답변2
Perl을 사용하여 이를 수행하는 한 가지 방법은 다음과 같습니다.
perl -pe 's/^/yarn_env /'
아시다시피, TIMTOWTDI.