
내 PC에서는 Windows7과 Matlab R2013a를 사용하고 있습니다. Matlab에서 복사/붙여넣기가 불가능하다는 것을 알았습니다.창 도움말또는도움말 브라우저:
그래서 나는 클릭한다페이지 주소 가져오기명령을 복사하고
web([docroot '/matlab/ref/plot.html'])
arg를 추가하여 '-browser'
시스템 브라우저에 로컬 doc 파일을 표시합니다.
>> web([docroot '/matlab/ref/plot.html'], '-browser')
그런데 그건 꽤 귀찮은 일이군요! 그래서 내 폴더에 로컬 문서 파일을 편리하게 표시할 수 있는 방법이 있나요?시스템 브라우저F1을 누르면? 미리 감사드립니다 ;)
답변1
나는 이 질문으로 어려움을 겪었고 아마도 당신이 찾고 있는 것을 찾았을 것 같습니다. MATLAB에서 바로가기를 만들고 거기서 코딩하면 다음을 달성할 수 있습니다. 원하는 이름으로 레이블을 지정한 다음 간단히 클릭하여 실행할 수 있습니다.
코드와 관련하여 저는 틀에 얽매이지 않는 전략을 사용했지만 매우 효율적인 전략을 사용했으며 Windows에서만 테스트했지만 특정 구현을 변경하면 Unix 시스템에서도 테스트할 수 있습니다.
사용자에게 원하는 문서를 입력하라는 메시지를 표시합니다.
helpdoc=input('Input the doc file: ','s');
그런 다음 시스템 명령(DIR)을 실행하여 Matlab 설명서에서 사용하는 .html 파일을 찾으세요. 기본 문서 디렉터리는 docroot 함수에서 사용할 수 있으므로 다음과 같이 dir 명령을 연결하여 Matlab의 시스템 함수에 전달되어야 하는 문자열을 얻을 수 있습니다.
DirCmd=['dir /s /b "',docroot,'\',helpdoc,'html'];
/s /b 옵션은 docroot의 모든 하위 디렉터리에서 .html 파일을 찾고 기본 콘텐츠(파일의 전체 경로)를 표시하는 데 사용됩니다. 여기에서 더 많은 정보를 얻을 수 있습니다:https://isc.sans.edu/diary/Finding+Files+and+Counting+Lines+at+the+Windows+Command+Prompt/2244
[Status,CmdOut]=system(DirCmd);
실행된 시스템 명령 출력은 문자 배열에 할당됩니다. 다중 일치의 경우 해당 배열을 필터링하고 개별 경로로 분리해야 합니다. 이를 위해 분할 옵션과 함께 REGEXP 함수를 사용할 수 있습니다.
Paths=regexp(CmdOut,'.html','split')
그러면 분할 항 없이 numel=numel(strings)+1(추가 셀에 null 내용이 표시됨)이 포함된 셀 배열이 반환됩니다. 이제 이를 분할 용어와 연결하고 시스템 브라우저에서 열어야 합니다.
for ii=1:numel(Paths)-1; DocWeb=[Paths{ii},'.html']; web(DocWeb,'-browser'); end
나는 문서에서 문서를 찾아 이를 테스트했으며 내 시스템 브라우저(Chrome)에 기호 수학 도구 상자에 대한 문서 및 문서와 관련된 두 개의 웹 페이지를 표시하는 데 QuadCore 16Gb RAM 컴퓨터에서 0.7266초가 걸렸습니다.
이것이 도움이 되기를 바랍니다.