답변:
jordanm의 답변이 마음 에 들지만 경험이 적은 Linux
사용자에게 그러한 질문에 스스로 대처하는 방법을 보여주는 것이 똑같이 중요하다고 생각합니다 .
제안 된 방법은 Google 검색 결과 페이지에 표시되는 임의의 페이지에서 답변을 찾는 것보다 더 빠르고 다양합니다.
먼저, Bash
명시적인 경로를 입력하지 않고 실행할 수있는 모든 명령 ( 예 ./command
: Bash shell builtins
및) 을 두 가지 범주로 나눌 수 있습니다 external commands
. Bash shell builtins
와 함께 설치되어 있으며 Bash
그 일부 external commands
는 아니지만 일부입니다 Bash
. 이것은 Bash shell builtins
내부에 문서화되어 있기 때문에 중요 man bash
하며 문서 는 일반적으로 자체적으로 문서화 되거나 깃발의 일부를 차지 help
하면서 명령으로 호출 할 수 있습니다 . 명령이 또는 인지 확인하려면 :external commands
manpages
-h, --help
Bash shell builtin
external command
$ type local
local is a shell builtin
how command would be interpreted if used as a command name
(부터 help type
) 가 표시됩니다 . 여기에서 우리는 볼 수 local
입니다 shell builtin
. 다른 예를 보자.
$ type vim
vim is /usr/bin/vim
여기에 있는 외부 명령 vim
이 아니라는 것을 알 수 있습니다 . 그러나 때로는 같은 명령을 동시에 및 동시에 설치할 수 있습니다 . 추가 하는 예를 들어, 모든 가능성을 나열합니다 :shell builtin
/usr/bin/vim
external command
shell builtin
-a
type
$ type -a echo
echo is a shell builtin
echo is /usr/bin/echo
echo is /bin/echo
여기서 우리는 echo
a shell builtin
와 a 둘 다임을 알 수 있습니다 external command
. 그러나 방금 입력 echo
하고 누른 경우 Returna shell builtin
가이 목록의 첫 번째 항목이기 때문에 호출됩니다. 이 모든 버전이 echo
동일 할 필요는 없습니다. 예를 들어 내 시스템 /usr/bin/echo
에서 --help
플래그를 사용하지만 플래그를 사용 builtin
하지 않습니다.
자, 이제 우리는 그것이 local
쉘 내장 이라는 것을 알았을 때 그것이 어떻게 작동하는지 알아 봅시다.
$ help local
local: local [option] name[=value] ...
Define local variables.
Create a local variable called NAME, and give it VALUE. OPTION can
be any option accepted by `declare'.
Local variables can only be used within a function; they are visible
only to the function where they are defined and its children.
Exit Status:
Returns success unless an invalid option is supplied, an error occurs,
or the shell is not executing a function.
첫 번째 줄에 유의하십시오 name[=value]
. [
와 사이의 모든 것]
있다 선택 . 세계의 많은 manpages
문서 형식 에서 사용되는 일반적인 규칙 *nix
입니다. 즉, 질문에서 당신이 묻는 명령은 완벽하게 합법적입니다. 차례로 ...
문자는 이전 인수를 반복 할 수 있음을 의미합니다. 일부 버전의 경우이 규칙에 대해 읽을 수도 있습니다 man man
.
The following conventions apply to the SYNOPSIS section and can be used
as a guide in other sections.
bold text type exactly as shown.
italic text replace with appropriate argument.
[-abc] any or all arguments within [ ] are optional.
-a|-b options delimited by | cannot be used together.
argument ... argument is repeatable.
[expression] ... entire expression within [ ] is repeatable.
따라서 하루가 끝날 무렵에는 다양한 명령이 어떻게 Linux
작동 하는지 쉽게 이해할 수 있기를 바랍니다 .
local
합니까?
man bash
있습니다. 일단 거기에 입력 /Arrays$
하면 배열의 섹션으로 이동합니다. (후행는 $
이후 Arrays
섹션에있는 텍스트 참조를 순환 방지하는 것입니다.) 당신이 거기에 입력 할 수 있습니다에서 f
앞으로 페이지를 이동하거나 b
뒤로 이동. q
완료되면 매뉴얼 페이지를 종료하려면 입력 하십시오.
help
args없이 실행 하면 더 많은 것을 알고 싶다면 모든 bash 내장을 나열합니다.
local
주 실행 환경이 값을 "볼"수 없도록 현재 정의 된 함수에서만 범위를 가지도록 변수를 선언합니다. local
함수 외부에서는 사용할 수 없습니다 . 예
func() {
nonlocal="Non local variable"
local onlyhere="Local variable"
}
func
echo $nonlocal
echo $onlyhere
출력 : 비 로컬 변수
따라서 $onlyhere
함수 범위 밖에서는 보이지 않았습니다.
var=()
알 수 있기를 바랍니다.하지만 찾고있는 이름을 알지 못하고 알아내는 것이 조금 있다고 생각합니다. . ;)