반응형

Bash 16

우리는 언제 조개 변수 주변에 곱슬곱슬한 중괄호가 필요합니까?

우리는 언제 조개 변수 주변에 곱슬곱슬한 중괄호가 필요합니까? 셸 스크립트에서 다음을 사용하는 경우{}변수를 확장할 때? 예를 들어, 다음을 보았습니다. var=10 # Declare variable echo "${var}" # One use of the variable echo "$var" # Another use of the variable 큰 차이가 있나요, 아니면 그냥 스타일인가요?어느 쪽이 다른 쪽보다 선호됩니까?이 특정 예제에서는 아무런 차이가 없습니다.하지만, 그{}에${}변수를 확장하려는 경우 유용합니다.foo현 상태에서 "${foo}bar" 부터"$foobar"대신 에 의해 식별된 변수를 확장합니다.foobar. 또한 다음과 같은 경우에는 반드시 곱슬곱슬한 중괄호가 필요합니다. 배열 요소..

it-source 2023.05.16

분할 오류에서 Linux에서 코어 덤프를 생성하는 방법은 무엇입니까?

분할 오류에서 Linux에서 코어 덤프를 생성하는 방법은 무엇입니까? Linux에 세그멘테이션 오류가 발생하는 프로세스가 있습니다.오류가 발생했을 때 코어 덤프를 생성하도록 하려면 어떻게 해야 합니까?사용하는 셸에 따라 다릅니다.bash를 사용하는 경우 ulimit 명령은 코어 덤프 여부와 같은 프로그램 실행과 관련된 몇 가지 설정을 제어합니다.입력하는 경우 ulimit -c unlimited 그러면 프로그램이 모든 크기의 코어를 덤프할 수 있다는 것을 알려줄 것입니다.원하는 경우 무제한 대신 52M과 같은 크기를 지정할 수 있지만, 실제로는 코어 파일의 크기가 문제가 되지 않을 수 있기 때문에 이는 필요하지 않습니다. tcsh에 다음과 같이 입력합니다. limit coredumpsize unlimite..

it-source 2023.05.16

Bash 백스틱과 동일한 배치

Bash 백스틱과 동일한 배치 Bash로 작업할 때 다음과 같이 한 명령의 출력을 다른 명령에 넣을 수 있습니다. my_command `echo Test` 과 같은 것일 것입니다. my_command Test (분명히 이것은 비실용적인 예에 불과합니다.) 당신도 배치에서 같은 일을 할 수 있는지 궁금합니다.에서 cmd.exe 스크립트를 사용하여 유사한 기능을 얻을 수 있습니다.for /f명령: for /f "usebackq tokens=*" %%a in (`echo Test`) do my_command %%a 네, (적어도) 분명하지 않지만, 그것이 바로 거기에 있는 것입니다. 봐for /?자세한 내용은 참고 사항:저는 "을 사용할 줄 알았어요.echo뒤통수를 치는 것처럼for /f명령은 "를 사용하여 ..

it-source 2023.05.01

Bash 배열에서 요소 제거

Bash 배열에서 요소 제거 bash 셸의 배열에서 요소를 제거해야 합니다.일반적으로 다음과 같은 작업을 수행합니다. array=("${(@)array:#}") 유감스럽게도 제거하려는 요소가 변수이므로 이전 명령을 사용할 수 없습니다.다음은 예입니다. array+=(pluto) array+=(pippo) delete=(pluto) array( ${array[@]/$delete} ) -> but clearly doesn't work because of {} 감 잡히는 게 없어요?이 원하는 대로 작동합니다.bash그리고.zsh: $ array=(pluto pippo) $ delete=pluto $ echo ${array[@]/$delete} pippo $ array=( "${array[@]/$delete}"..

it-source 2023.04.26

Bash 스크립트에 전달된 인수 수 확인

Bash 스크립트에 전달된 인수 수 확인 필요한 인수 수가 충족되지 않을 경우 Bash 스크립트에서 오류 메시지를 출력합니다. 저는 다음 코드를 시도했습니다. #!/bin/bash echo Script name: $0 echo $# arguments if [$# -ne 1]; then echo "illegal number of parameters" fi 알 수 없는 이유로 다음 오류가 발생했습니다. test: line 4: [2: command not found 내가 뭘 잘못하고 있는 거지?다른 간단한 명령과 마찬가지로[ ... ]또는test에는 인수 사이에 공백이 필요합니다. if [ "$#" -ne 1 ]; then echo "Illegal number of parameters" fi 또는 if te..

it-source 2023.04.26

bash의 코드 줄 수(공백이 아닌)

bash의 코드 줄 수(공백이 아닌) Bash에서 프로젝트의 비어 있지 않은 코드 줄 수를 계산하려면 어떻게 해야 합니까?cat foo.c | sed '/^\s*$/d' | wc -l 그리고 댓글에 빈 줄이 있다고 가정합니다. cat foo.pl | sed '/^\s*#/d;/^\s*$/d' | wc -l 하지만, 그것은 언어에 따라 다릅니다. #!/bin/bash find . -path './pma' -prune -o -path './blog' -prune -o -path './punbb' -prune -o -path './js/3rdparty' -prune -o -print | egrep '\.php|\.as|\.sql|\.css|\.js' | grep -v '\.svn' | xargs cat | s..

it-source 2023.04.26

폴더가 존재하지 않는 경우 Bash를 사용하여 폴더를 작성하려면 어떻게 해야 합니까?

폴더가 존재하지 않는 경우 Bash를 사용하여 폴더를 작성하려면 어떻게 해야 합니까? #!/bin/bash if [!-d /home/mlzboy/b2c2/shared/db]; then mkdir -p /home/mlzboy/b2c2/shared/db; fi; 이거 안 되는 것 같아.누구 도와줄 사람?먼저 Bash에서[명령어일 뿐이며 이 명령어에서는]마지막 인수로서 괄호 앞의 공백(및 그 사이의 공백)!그리고.-d2개의 독립된 인수도 필요합니다). if [ ! -d /home/mlzboy/b2c2/shared/db ]; then mkdir -p /home/mlzboy/b2c2/shared/db; fi 둘째, 당신이 사용하고 있기 때문에-p로 바꾸다.mkdir이 체크는 쓸모가 없습니다.처음에는 이렇게 되어 ..

it-source 2023.04.21

스크립트 기간 동안만 환경변수를 설정하려면 어떻게 해야 합니까?

스크립트 기간 동안만 환경변수를 설정하려면 어떻게 해야 합니까? Bash의 Linux(Ubuntu 11.04(Natty Narwhal))에서는 스크립트 기간 동안 일반 변수와 다른 환경 변수를 일시적으로 설정할 수 있습니까? 예를 들어 셸 스크립트에서 HOME에 저장하는 응용 프로그램을 현재 작업 디렉토리의 폴더로 임시로 설정한 후 응용 프로그램을 실행하여 이식할 수 있도록 합니다.VAR1=value1 VAR2=value2 myScript args ... env VAR=value myScript args ... 그냥 넣어주세요 export HOME=/blah/whatever 스크립트 내에서 변경을 실행하는 시점에서 선택합니다.각 프로세스에는 독자적인 환경변수 세트가 있기 때문에 스크립트가 종료될 때(및 ..

it-source 2023.04.21

모든 파일에 파일 확장자를 재귀적으로 추가하다

모든 파일에 파일 확장자를 재귀적으로 추가하다 파일 확장자가 없는 파일이 포함된 디렉토리 및 하위 디렉토리가 몇 개 있습니다.추가하고 싶다.jpg이 디렉토리에 포함된 모든 파일로 이동합니다.파일 확장자를 변경하기 위한 bash 스크립트를 본 적이 있지만 파일 확장자를 하나만 추가하기 위한 스크립트는 아닙니다.재귀적이어야 하는데 누가 좀 도와주시겠어요?명시적 루프()man find가 없는 대체 명령어: find . -type f -exec mv '{}' '{}'.jpg \; 설명: 모든 파일을 재귀적으로 검색합니다(-type f)는 현재 디렉토리에서 시작합니다(.move 명령()mv을 적용합니다.또, 주위의 견적도 주의해 주세요.{}공백이 있는 파일 이름(새 행도 포함)이 올바르게 처리되도록 합니다.확장자..

it-source 2023.04.16

UNIX 쉘 스크립트의 목록에서 고유 값 또는 고유 값 선택

UNIX 쉘 스크립트의 목록에서 고유 값 또는 고유 값 선택 ksh 스크립트는 긴 값 목록을 반환하고 줄 바꿈을 구분하여 고유한 값/구체적인 값만 표시합니다.이거 할 수 있어? 예를 들어, 내 출력이 디렉토리 내의 파일서픽스라고 합니다. tar gz java gz java tar class class 다음과 같은 목록을 봅니다. tar gz java class 여기 보시면uniq그리고.sort적용들. ./yourscript.ksh | sort | uniq (참고로, 이 명령어라인에서는 이러한 분류가 필요합니다.uniq서로 바로 뒤에 있는 중복된 라인만 제거합니다.) 편집: 에런 디굴라가 올린 글과는 달리uniq의 명령줄 옵션: 다음과 같은 입력이 주어집니다. 학급항아리항아리항아리휴지통휴지통자바 uniq는..

it-source 2023.04.16
반응형