«bash» 태그된 질문

Bash 명령 셸용으로 작성된 스크립트에 대한 질문 오류 / 구문 오류가있는 셸 스크립트의 경우 여기를 게시하기 전에 shellcheck 프로그램 (또는 https://shellcheck.net의 웹 셸 검사 서버)에서 확인하십시오. Bash의 대화식 사용에 대한 질문은 스택 오버플로보다 수퍼 유저에 대한 주제 일 가능성이 높습니다.

4
Bash를 사용하여 존재하지 않는 하위 디렉토리를 재귀 적으로 만드는 방법은 무엇입니까?
일부 데이터베이스를 멋지고 깔끔한 디렉토리 구조로 덤프하는 빠른 백업 스크립트를 작성 중이며 디렉토리를 작성하기 전에 디렉토리가 존재하는지 테스트해야 함을 깨달았습니다. 내가 가지고있는 코드는 작동하지만 더 좋은 방법이있는 것 같습니다. 어떤 제안? [ -d "$BACKUP_DIR" ] || mkdir "$BACKUP_DIR" [ -d "$BACKUP_DIR/$client" ] || mkdir "$BACKUP_DIR/$client" [ -d "$BACKUP_DIR/$client/$year" ] || …

9
기본값으로 bash에서 변수 읽기
bash 스크립트로 터미널에서 값을 읽어야합니다. 사용자가 변경할 수있는 기본값을 제공하고 싶습니다. # Please enter your name: Ricardo^ 이 스크립트에서 프롬프트는 "이름을 입력하십시오 :"입니다. 기본값은 "Ricardo"이며 커서는 기본값 뒤에 있습니다. bash 스크립트에서 이것을 수행하는 방법이 있습니까?
191 bash  shell 

16
Bash 스크립트에서 현재 디렉토리 변경
스크립트에서 현재 디렉토리를 변경할 수 있습니까? Bash에서 디렉토리 탐색을위한 유틸리티를 만들고 싶습니다. 다음과 같은 테스트 스크립트를 작성했습니다. #!/bin/bash cd /home/artemb Bash 쉘에서 스크립트를 실행할 때 현재 디렉토리는 변경되지 않습니다. 스크립트에서 현재 쉘 디렉토리를 변경할 수 있습니까?
190 bash  environment 

3
실패 할 때까지 쉘 명령을 반복해서 실행 하시겠습니까?
신뢰할 수없는 퍼지 테스트를 작성했습니다 . 디버그 코드를 추가했지만 이제는 실패 할 때까지 테스트를 실행하여 디버그 출력을 수집하려고합니다. 다음을 사용하여 테스트를 실행할 수 있도록 테스트를 설정했습니다. ./runtest 내 현재 해결책은 untilfail스크립트 를 작성하는 것입니다 . #!/bin/bash $@ while [ $? -eq 0 ]; do $@ done 그런 다음 사용하십시오. untilfail …
190 bash 

6
stdin 입력이 비어 있으면 xargs 명령을 무시하는 방법은 무엇입니까?
이 명령을 고려하십시오. ls /mydir/*.txt | xargs chown root 모든 텍스트 파일의 소유자 mydir를 루트 로 변경하는 것이 목적입니다. 문제는 .txt파일 이 없으면 mydirxargs는 경로가 지정되지 않았다는 오류를 발생시키는 것입니다. 이것은 오류가 발생하기 때문에 무해한 예이지만, 여기에서 사용해야하는 스크립트와 같은 경우 빈 경로가 현재 디렉토리로 간주됩니다. 따라서 그 명령을 실행 …
189 bash  centos  xargs 





13
bash에서 배열을 매개 변수로 전달
bash 함수에 배열을 매개 변수로 전달하려면 어떻게해야합니까? 참고 : 스택 오버플로에 대한 답변을 찾지 못한 후 다소 조잡한 솔루션을 직접 게시했습니다. 하나의 배열 만 전달할 수 있으며 매개 변수 목록의 마지막 요소입니다. 실제로, 그것은 배열을 전혀 전달하지 않고, 그 요소의 목록을, called_function ()에 의해 배열로 다시 어셈블하지만, 그것은 나를 위해 …
188 arrays  bash 

13
bash에 함수가 존재하는지 확인
현재 bash에서 실행되는 단위 테스트를 수행하고 있습니다. 단위 테스트는 bash 스크립트에서 초기화, 실행 및 정리됩니다. 이 스크립트는 보통 init (), execute () 및 cleanup () 함수를 포함합니다. 그러나 필수 사항은 아닙니다. 그것들이 정의되어 있는지 여부를 테스트하고 싶습니다. 나는 이전에 소스를 greping하고 seding 하여이 작업을 수행했지만 잘못된 것 같습니다. 더 우아한 …

4
sed를 사용하여 이스케이프 기간이 있음에도 불구하고 잘못된 명령 코드.
현재 클라이언트에 대해 CVS를 사용해야하고 원격 리포지토리에 대해 주소가 변경되었습니다. 로컬 코드에서 원격 주소를 변경하는 유일한 방법은 재귀 검색 및 바꾸기입니다. 그러나 sed 명령을 사용하면 다음과 같이 작동합니다. find ./ -type f -exec sed -i "s/192.168.20.1/new.domain.com/" {} \; 모든 파일에 대해 오류가 발생합니다. sed: 1: ".//file/path ...": invalid command code …
187 bash  macos  sed 

6
while 루프 안에서 수정 된 변수는 기억되지 않습니다
다음 프로그램 $foo에서 첫 번째 if명령문 내 에서 변수 를 값 1로 설정 하면 if 문 뒤에 값이 기억된다는 의미에서 작동합니다. 그러나 명령문 if내에있는 내부의 값 2로 동일한 변수를 설정 while하면 while루프 후에 잊어 버립니다 . 루프 $foo내에서 일종의 변수 사본을 사용 while하고 특정 사본 만 수정 하는 것처럼 작동 …
187 bash  while-loop  scope  sh 

14
리눅스에서 -exec 쉘 기능을 찾으십니까?
find셸에서 정의한 함수를 실행 하는 방법이 있습니까? 예를 들면 다음과 같습니다. dosomething () { echo "doing something with $1" } find . -exec dosomething {} \; 그 결과는 다음과 같습니다. find: dosomething: No such file or directory 얻을 수있는 방법이 있습니까 find의를 -exec볼 수는 dosomething?
185 linux  bash  shell  find  bsd 


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.