https://dememax.dreamwidth.org/185016.html Коллега нашёл, поделился.
Можно делать иерархические представления файлов в результате вывода grep'а в консоли:
~/sources/libssh $ git grep sftp_mkdir | tree --fromfile
.
├── ChangeLog: * BUG #84 - Fix bug in sftp_mkdir not returning on error.
├── doc
│ ├── sftp.dox: rc = sftp_mkdir(sftp, "helloworld", S_IRWXU);
│ ├── sftp.dox:@subsection sftp_mkdir Creating a directory
│ └── sftp.dox:The function sftp_mkdir() takes the "SFTP session" we just created as
├── include
│ └── libssh
│ └── sftp.h:LIBSSH_API int sftp_mkdir(sftp_session sftp, const char *directory, mode_t mode);
├── src
│ ├── ABI
│ │ ├── libssh-4.5.0.symbols:sftp_mkdir
│ │ ├── libssh-4.6.0.symbols:sftp_mkdir
│ │ ├── libssh-4.7.0.symbols:sftp_mkdir
│ │ ├── libssh-4.7.1.symbols:sftp_mkdir
│ │ ├── libssh-4.7.2.symbols:sftp_mkdir
│ │ ├── libssh-4.7.3.symbols:sftp_mkdir
│ │ ├── libssh-4.7.4.symbols:sftp_mkdir
│ │ ├── libssh-4.8.0.symbols:sftp_mkdir
│ │ └── libssh-4.8.1.symbols:sftp_mkdir
│ ├── libssh.map: sftp_mkdir;
│ └── sftp.c:int sftp_mkdir(sftp_session sftp, const char *directory, mode_t mode)
└── tests
└── client
├── torture_sftp_dir.c: cmocka_unit_test_setup_teardown(torture_sftp_mkdir,
├── torture_sftp_dir.c: rc = sftp_mkdir(t->sftp, tmpdir, 0755);
└── torture_sftp_dir.c:static void torture_sftp_mkdir(void **state) {
7 directories, 19 files Страница утилиты:
http://oldmanprogrammer.net/code.php?src=tree