위의 명령을 이해하려고합니다.
sudo /bin/ls %s %file_path
무엇을 %
합니까? 어떤 종류의 대체 메커니즘입니까?
무엇을 sudo /bin/ls
합니까?
bash는 스크립트에서 %는 고정을 의미하지만, 그것으로 무엇을 프로그램 사이에 때때로을 다를 수 있습니다 몇 가지 매개 변수의 일부 또는 다른 . 들어 LS 는 아무것도하지 않는다. sudo의 경우 몇 가지 작업을 수행하지만이 컨텍스트에서는 수행하지 않습니다. 그것이 나에게 어떤 의미를 제작하지 않습니다 ...이 명령은 단순히 시도 (루트로, 기록을 위해, 당신은 거의 실행하지 않아도 LS 루트를, 파일 이름을 통해 일반 사용자가 액세스 할 수없는 매우 몇 군데있다 LS가 ) % s 및 % foo 디렉터리에서 파일을 검색하고 "ls는 % s에 액세스 할 수 없습니다 : 해당 파일 또는 디렉터리가 없습니다"라는 결과를 제공해야하며 % foo에 대해서도 거의 동일합니다. (디렉토리 % s는 생성하지 않는 한 존재할 수 없습니다)
스크립팅을 위해 다음을 수행합니다.
에서 http://wiki.bash-hackers.org/syntax/pe :
Anchoring 또한 식을 "고정"할 수 있습니다. # (해시 마크)는식이 문자열의 시작 부분과 일치 함을 나타내며 % (퍼센트 기호)는 끝 부분에 대해이를 수행합니다.
MYSTRING=xxxxxxxxxx
echo ${MYSTRING/#x/y} # RESULT: yxxxxxxxxx
echo ${MYSTRING/%x/y} # RESULT: xxxxxxxxxy
(코드가하는 일은 첫 번째 또는 마지막 "x"를 "y"로 거래하는 것입니다.)
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다