4

安装软件包后,查找该软件包中的功能的命令是什么?

例如,我安装了control软件包。但是如何找到这个包的帮助,比如它包含什么功能等等,比如 Matlab?

是否每次都必须访问http://octave.sourceforge.net/网站才能找到?可以从八度音程中找到此信息吗?

我发现 Matlab 的帮助比 octave 更好、更容易使用。

4

3 回答 3

6

用于pkg describe -verbose control从控制包中获取所有信息。

于 2012-12-04T22:55:32.820 回答
2

显示包帮助的八度函数

我写了一个简短的 octave 函数,可以解决你的问题:它创建一个对话框来显示包中的所有函数。选择一个功能后,它将在消息框中显示它的帮助文本。只需将以下 octave 函数保存到一个名为的文件pkghelp.m中,然后键入
pkghelp packagename.

例子

以下将显示包“io”的功能概述:
pkghelp io

源代码

% Script to display functions and help on functions for a package
function pkghelp(pkgname)

  % Get functions for this package
   des = pkg('describe','-verbose',pkgname);
   % Get first element
   des = des{1};

   if isempty(des)
     error('pkghelp:unknownPackage','Package "%s" was not found!',pkgname);
   endif
   
   % Create a dialog with functions
   pname = des.name;
   pvers = des.version;
   pdesc = des.description;
   
   % Number of categories
   ncat = numel(des.provides);
   list = cell(1,1);
   cnt=1;
   for i=1:ncat
     % Store category name
     list(cnt) = ['--(* ',des.provides{i}.category,' *)--'];
     % Number of functions
     nfunc = numel(des.provides{i}.functions);
     % Append functions in category
     list(cnt+1:cnt+nfunc) = des.provides{i}.functions(:);
     % Update counter
     cnt = cnt+1+nfunc;
   endfor

  ok=1;
  while ok==1  
    % Create dialog
    [sel, ok] = listdlg ('ListString', list,...
                     'SelectionMode', 'Single', ...
                     'ListSize',[300,600],...
                     'Name',pname,...
                     'PromptString','List of available functions');

    
    if (ok==1)
     % Selected function name
     selfun = list{sel};
     % Not a category?
     if selfun(1) ~= '-'
       % assure that package is loaded for help
       pkg('load',pkgname);
       % Get help text for selected function
       doc = help(selfun);
       % Open dialog with help text display
       msgbox(doc,[pname,'/',selfun],'help');
     endif
    endif
  endwhile
                     
endfunction

于 2017-10-18T13:17:46.863 回答
1

在 Linux 下,从 Octave 或 Bash(同样工作)中,检查包文件夹:

me@computer:/usr/share/octave/packages> ls -la
drwxr-xr-x 3 root root 4096 22. Okt 2011  .
drwxr-xr-x 5 root root 4096 22. Okt 2011  ..
drwxr-xr-x 4 root root 4096 22. Okt 2011  openmpi_ext-1.0.1

你的“控制”包应该出现在这里,作为一个文件夹。输入文件夹并查看详细信息...

me@computer:/usr/share/octave/packages> cd openmpi_ext-1.0.1/
me@computer:/usr/share/octave/packages/openmpi_ext-1.0.1> ls -la
drwxr-xr-x 4 root root 4096 22. Okt 2011  .                                                                                                                                                  
drwxr-xr-x 3 root root 4096 22. Okt 2011  ..                                                                                                                                                 
-rwxr-xr-x 1 root root  346 24. Nov 2010  allnodes                                                                                                                                           
drwxr-xr-x 2 root root 4096 22. Okt 2011  doc                                                                                                                                                
-rw-r--r-- 1 root root 3694 24. Nov 2010  doc-cache                                                                                                                                          
-rw-r--r-- 1 root root  967 24. Nov 2010  hello2dimmat.m                                                                                                                                     
-rw-r--r-- 1 root root 1706 24. Nov 2010  hellocell.m                                                                                                                                        
-rw-r--r-- 1 root root 1359 24. Nov 2010  hellosparsemat.m                                                                                                                                   
-rw-r--r-- 1 root root 1711 24. Nov 2010  hellostruct.m                                                                                                                                      
-rw-r--r-- 1 root root 1726 24. Nov 2010  helloworld.m                                                                                                                                       
-rw-r--r-- 1 root root 1506 24. Nov 2010  mc_example.m                                                                                                                                       
-rw-r--r-- 1 root root 4721 24. Nov 2010  montecarlo.m                                                                                                                                       
drwxr-xr-x 2 root root 4096 22. Okt 2011  packinfo                                                                                                                                           
-rw-r--r-- 1 root root 3535 24. Nov 2010  Pi.m
于 2012-12-04T15:29:50.560 回答