반응형

bash 14

셸에서 프로그램 실행 시간 가져오기

셸에서 프로그램 실행 시간 가져오기 저는 몇 가지 다른 조건에서 리눅스 셸에서 무언가를 실행하고 각 실행의 실행 시간을 출력할 수 있기를 원합니다. 펄이나 파이썬 스크립트를 작성하여 이를 수행할 수 있다는 것을 알고 있습니다. 하지만 셸에서 이를 수행할 수 있는 방법이 있습니까?(우연히 bash) 제공 기능을 합니다.time키워드: 도움의 시간 시간: 시간 [-p] PIPLINEPIPELINE을 실행하고 실시간, 사용자 CPU 시간,파이프라인이 종료될 때 파이프라인을 실행하는 데 소요되는 시스템 CPU 시간입니다. 반환 상태는 PIPLINE의 반환 상태입니다.'-p' 옵션에서는 타이밍 요약을 약간 다른 형식으로 인쇄합니다.이 기능은 다음과 같습니다.TIME FORMAT 변수의 값을 출력 형식으로 지정합니..

programing 2023.05.28

Bash에서 플래그가 있는 인수를 가져오는 방법

Bash에서 플래그가 있는 인수를 가져오는 방법 bash에서 다음과 같은 매개변수를 쉽게 얻을 수 있다는 것을 알고 있습니다. $0또는$1 다음과 같은 플래그 옵션을 사용하여 각 매개 변수에 대해 지정할 수 있습니다. mysql -u user -h host 가장 좋은 방법은 무엇입니까?-u param 및 치와-h param위치가 아닌 플래그별로 값을 지정할 수 있습니까?이 예제는 Bash의 내장 명령을 사용하며 Google Shell Style Guide에서 가져온 것입니다. a_flag='' b_flag='' files='' verbose='false' print_usage() { printf "Usage: ..." } while getopts 'abf:v' flag; do case "${flag}" ..

programing 2023.05.23

"옵션", "인수" 및 "매개변수" 용어의 차이는 무엇입니까?

"옵션", "인수" 및 "매개변수" 용어의 차이는 무엇입니까? "옵션", "인수" 및 "매개 변수"라는 용어의 차이점은 무엇입니까?맨 페이지에서 이 용어들은 종종 상호 교환적으로 사용되는 것처럼 보입니다.명령은 인수라는 문자열 배열로 분할됩니다.인수 0은 (일반적으로) 명령 이름, 인수 1, 명령 뒤의 첫 번째 요소 등입니다.이러한 인수를 위치 매개 변수라고 부르기도 합니다. $ ls -la /tmp /var/tmp arg0 = ls arg1 = -la arg2 = /tmp arg3 = /var/tmp 옵션은 명령의 동작을 수정하는 문서화된1 유형의 인수입니다.-l일반적으로 "긴"을 의미합니다.-v장황한 -lv두 개의 옵션이 단일 인수로 결합되어 있습니다.다음과 같은 긴 옵션도 있습니다.--verbose..

programing 2023.05.13

로그 파일 및 콘솔에 출력 쓰기

로그 파일 및 콘솔에 출력 쓰기 유닉스 셸에는 다음 코드를 사용하여 실행된 스크립트에서 모든 출력(에코 메시지) 및 오류를 로그 파일로 리디렉션하는 env 파일(로그 파일 이름 및 경로, 로그 파일로 출력 및 오류 리디렉션, 데이터베이스 연결 세부 정보 등)이 있습니다. exec 1>>${LOG_FILE} exec 2>>${LOG_FILE} env 파일은 각 스크립트의 시작 부분에서 실행됩니다.env 파일의 위 코드로 인해 사용자 출력 또는 오류일 수 있는 모든 콘솔 출력이 로그 파일로 직접 출력됩니다. 그러나 콘솔과 로그 파일 모두에 표시하고 싶은 선택적인 사용자 출력이 있습니다.하지만 위의 코드 때문에 그렇게 할 수 없습니다. 위의 코드를 제거하면 이 경우에 원하는 결과를 얻을 수 있다는 것을 알고 ..

programing 2023.05.03

bash에서 stdout과 stderr 둘 다 배관?

bash에서 stdout과 stderr 둘 다 배관? 최신 버전의 bash는&>연산자, (내가 올바르게 이해한 경우) stdout과 stderr를 모두 파일로 리디렉션합니다.&>>대신 파일에 추가됩니다. 다른 명령어로 연결하는 대신 동일한 작업을 수행하는 가장 간단한 방법은 무엇입니까? 예를 들어, 다음 행에서: cmd-doesnt-respect-difference-between-stdout-and-stderr | grep -i SomeError 나는 grep가 instdout과 stderr 둘 다 콘텐츠에서 일치하기를 원합니다(효과적으로, 그것들을 하나의 스트림으로 결합합니다). 참고: 이 질문은 리디렉션이 아니라 배관에 대한 질문이므로 현재 중복으로 표시된 질문과 중복되지 않습니다.(참고:&>>fil..

programing 2023.05.03

bash에서 부동소수점 산술을 어떻게 사용합니까?

bash에서 부동소수점 산술을 어떻게 사용합니까? Bash 스크립트에서 두 개의 이미지 폭을 나누려고 하는데 bash가 표시됩니다.0결과적으로: RESULT=$(($IMG_WIDTH/$IMG2_WIDTH)) 저는 배시 가이드를 공부했고 제가 사용해야 한다는 것을 알고 있습니다.bc은 인넷의모예그에사들다용니합은서터든다니▁in를 사용합니다.bcecho나는 같은 것을 내 안에 넣으려고 노력했습니다.SCALE하지만 그것은 작동하지 않았다. 튜토리얼에서 찾은 예는 다음과 같습니다. echo "scale=2; ${userinput}" | bc 어떻게 하면 배시가 나에게 그런 플로트를 줄 수 있습니까?0.5?할 수 없습니다. bash는 정수만 수행합니다. 다음과 같은 도구에 위임해야 합니다.bc.다음을 수행할 수 있..

programing 2023.04.28

Bash의 기존 파일 하단에 파일 내용 추가

Bash의 기존 파일 하단에 파일 내용 추가 이 질문에는 이미 다음과 같은 답이 있습니다. 마감됨10년 전에. 중복 가능성: 각 파일에 텍스트를 추가할 셸 스크립트? SHELL 스크립트에서 텍스트 파일의 끝에 출력을 추가하는 방법은 무엇입니까? 기존 구성에 api 세부 정보를 삽입하는 최선의 방법을 찾고 있습니다.제가 생각한 것은sedapi 텍스트 파일의 내용을 config.inc 파일의 맨 아래에 삽입합니다.스크립트를 시작했는데 작동하지 않고 파일이 지워집니다. #!/bin/bash CONFIG=/home/user/config.inc API=/home/user/api.txt sed -e "\$a $API" > $CONFIG 내가 뭘 잘못하고 있는 거지?이렇게 하면 됩니다. cat "$API" >> "$..

programing 2023.04.28

Bash의 단일 행 동안 루프 구문

Bash의 단일 행 동안 루프 구문 세미콜론 및/또는 교정기의 올바른 조합을 찾는 데 문제가 있습니다.이 작업을 수행하고 싶지만 명령줄에서 한 줄로 수행할 수 있습니다. while [ 1 ] do foo sleep 2 done while true; do foo; sleep 2; done 그런데 명령 프롬프트에서 (표시한 대로) 여러 줄로 입력한 다음 위로 화살표가 있는 내역을 호출하면 한 줄로 올바르게 구두점이 표시됩니다. $ while true > do > echo "hello" > sleep 2 > done hello hello hello ^C $ while true; do echo "hello"; sleep 2; done 의 상태에서 sleep 명령어를 사용할 수도 있습니다.원라이너를 더 깨끗하게 ..

programing 2023.04.28

스크립트 자체 내에서 Bash 스크립트가 있는 디렉토리를 가져오려면 어떻게 해야 합니까?

스크립트 자체 내에서 Bash 스크립트가 있는 디렉토리를 가져오려면 어떻게 해야 합니까? Bash 스크립트가 있는 디렉토리의 경로를 해당 스크립트 내에서 가져오려면 어떻게 해야 합니까? Bash 스크립트를 다른 응용 프로그램의 시작 프로그램으로 사용하고 싶습니다.작업 디렉토리를 Bash 스크립트가 있는 디렉토리로 변경하여 다음과 같이 해당 디렉토리의 파일을 작업할 수 있도록 합니다. $ ./application #!/usr/bin/env bash SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) 는 스크립트가 어디에서 호출되는지에 관계없이 스크립트의 전체 디렉터리 이름을 제공하는 유용한 단일 행입니다. 스크립트를..

programing 2023.04.28

[](대괄호)의 [: 너무 많은 인수] 오류의 의미

[](대괄호)의 [: 너무 많은 인수] 오류의 의미 다음의 BASH 쉘 에러의 의미와 수정을 나타내는 간단한 자원을 찾을 수 없었기 때문에, 조사해 보고 투고하고 있습니다. 오류: -bash: [: too many arguments Google 화적 google : bash open square bracket colon too many arguments. 콘텍스트: 단일 대괄호 안의 if 조건과 등호, 등호, 등호 등의 단순 비교 연산자가 있는 경우.다음은 예를 제시하겠습니다. VARIABLE=$(/some/command); if [ $VARIABLE == 0 ]; then # some action fi 의 '' ''가$VARIABLE공백 또는 기타 특수문자를 포함하는 문자열로, 단일 대괄호가 사용됩니다..

programing 2023.04.23
반응형