«bash» 태그된 질문

다른 Bourne / POSIX 쉘과 달리 GNU의 Bourne Again에 대한 질문. 일반적인 유닉스 쉘에 대한 질문은 / shell 태그를 대신 사용하십시오.

3
경로 슬래시 후 괄호 확장
중괄호 확장을 사용하여 파일을 다른 이름으로 동일한 디렉토리에 복사하려고합니다. bash 4.4.18을 사용하고 있습니다. 내가 한 일은 다음과 같습니다. cp ~/some/dir/{my-file-to-rename.bin, new-name-of-file.bin} 하지만이 오류가 발생합니다. cp: cannot stat '/home/xyz/some/dir/{my-file-to-rename.bin,': No such file or directory 이와 같은 간단한 중괄호 확장조차도 같은 오류가 발생합니다. cp {my-file-to-rename.bin, new-name-of-file.bin} 내가 도대체 ​​뭘 잘못하고있는 겁니까?


4
bash는 포인터 사용을 지원합니까?
간단한 질문입니다. bash 쉘이 쉘 스크립트를 작성할 때 포인터 사용을 지원합니까? ${var[@]}배열을 반복 할 때 확장 표기법에 익숙 $var하지만 이것이 배열 인덱스를 반복하는 포인터를 사용하고 있는지는 확실하지 않습니다. bash는 다른 언어와 같은 메모리 주소에 대한 액세스를 제공합니까? bash가 포인터 사용을 지원하지 않으면 다른 쉘은 무엇을합니까?
12 bash 

6
다른 문자로 문자열에서 후행 공백을 패딩
hello world20 자 이상 을 출력하고 싶습니다 . printf "%-20s :\n\n" 'hello world!!' # Actual output hello world!! : # Wanted output hello world!!========: 그러나 공백으로 완료하고 싶지 않지만 대신 " = " 로 완료하고 싶습니다 . 어떻게해야합니까?
12 bash  shell  string  printf 


1
작성중인 파일을 제외한 폴더의 모든 파일을 복사하는 방법은 무엇입니까?
HTTPiedownloading 통해 폴더에 여러 파일을 다운로드합니다 . bash 스크립트는 다운로드 한 파일을 처리하는 것을 목표로하며 다운로드 한 파일을 다른 폴더에 복사하려고했습니다. find /folder/downloading -type f -exec mv '{}' /folder/downloaded \; 그러나 이것은 아직 완료되지 않은 파일도 복사합니다. -mmin +5명령 에 추가 하여 이전 파일로의 전송을 제한하려고했습니다 . 파일을 남겨두고 다운로드 …


3
“$ {PS1-}”은 유효한 구문이며 일반“$ PS1”과 어떻게 다릅니 까?
나는 다음을 가진 스크립트를보고있다 : if [ "${PS1-}" ]; then 그 후행 -은 Posix 나 Bash 표준 구문처럼 보이지 않기 때문에 약간의 버그가 있습니다. 영원히 사용되어 왔던 오묘한 구문입니까, 아니면 오타입니까? 표준 / 문서에 대한 언급이 있으면 감사하겠습니다. 일반적으로 코드를 작성합니다. if [ "$PS1" ]; then 어느 것이 더 정확하거나 …


3
bash 스크립트에서 / dev / stdout 대상 위치를 저장하는 방법은 무엇입니까?
/dev/stdout첫 번째 파일 설명자를 다른 위치로 바꾸기 전에 원래 위치 를 유지하려는 특정 bash 스크립트가 있습니다. 그래서 저는 자연스럽게 다음과 같이 썼습니다 old_stdout=$(readlink -f /dev/stdout) 그리고 그것은 작동하지 않았습니다. 문제가 무엇인지 매우 빨리 이해합니다. test@ubuntu:~$ echo $(readlink -f /dev/stdout) /proc/5175/fd/pipe:[31764] test@ubuntu:~$ readlink -f /dev/stdout /dev/pts/18 분명히, $()부모 쉘로 파이프되는 서브 …

1
디버깅을위한 Bash 변수 확장을 참조하십시오.
bash 코드를 쉽게 읽을 수 있도록 변수를 확장하는 데 사용할 수있는 도구 / 트릭이 있습니까? 예를 들어 다음을 변환합니다. DIR=/var/tmp FILE=${DIR}/file SCRIPT_ROOT=/opt/root TOOL=${SCRIPT_ROOT}/tool.sh ${TOOL} ${FILE} 에: DIR=/var/tmp FILE=/var/tmp/file SCRIPT_ROOT=/opt/root TOOL=/opt/root/tool.sh /opt/root/tool.sh /var/tmp/file BASH 코드를 Python으로 변환하고 BASH 구문을 읽는 것은 지루합니다.

4
Bash의 exec exec 사용 사례 / 실제 예
Bash의 내장 실행 파일 문서에서 이것을 고려하십시오. exec는 새로운 프로세스를 생성하지 않고 쉘을 대체합니다 사용 사례 / 실제 사례를 제공하십시오. 이것이 어떻게 이해되는지 이해가되지 않습니다. Google에서 I / O 리디렉션 에 대해 발견했습니다 . 더 잘 설명 할 수 있습니까?


4
쉘 스크립트에서 logrotate를 구현하는 방법
test.sh #!/bin/bash echo "Hello World" test2.sh #!/bin/bash while true do sh test.sh >> /script_logs/test.log & done 로그 파일 크기를 제어하기 위해 logrotate를 구현하고 싶습니다. 그래서 상황이 위와 같은 경우 logrotate를 구현하는 방법은 무엇입니까?

1
외부 명령이 아닌 bash에서 내장“time”명령 사용
이 time명령으로 작업하면서 time외부 GNU 시간 명령 대신 내장 기능을 사용해야하는 상황을 발견했습니다 /usr/bin/time. 어떻게해야합니까? 어딘가에서 사용 enable하거나 command도움을 줄 수있는 것을 보았지만 도움이되지 않았습니다. 이것은 유스 케이스입니다. watch "time ls" /usr/bin/time내가 원하지 않는 외부 명령 을 사용합니다 ! 때 발생 time내가 실행할 때 내부 bash는 함수를 호출 time ls과 …

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