it-swarm-vi.com

Thủ thuật và mẹo tìm thông tin trong trang người đàn ông

Có ai có bất kỳ thủ thuật và lời khuyên cho việc tìm kiếm thông tin trong các trang người đàn ông?

82
Casebash

Hãy chú ý đến số phần: Giả sử bạn muốn trợ giúp về printf. có ít nhất hai trong số chúng: trong Shell và trong C. Phiên bản bash của printf nằm trong phần 1, phiên bản C nằm trong phần 3 hoặc 3C. Nếu bạn không biết bạn muốn cái nào, hãy nhập man -a printf Và tất cả các trang thủ công sẽ được hiển thị.

Nếu những gì bạn đang tìm kiếm là định dạng của printf với tất cả các mã% và nó không xuất hiện trên trang man printf, bạn có thể chuyển đến các trang man liên quan được liệt kê trong đoạn XEM CSONG. Bạn có thể tìm thấy một cái gì đó như formats(5), gợi ý bạn nhập man 5 formats.

Nếu bạn cảm thấy khó chịu khi man printf Cung cấp cho bạn printf (1) và tất cả những gì bạn muốn là printf (3), bạn phải thay đổi thứ tự của các thư mục được quét trong biến môi trường MANPATH và đặt chúng cho ngôn ngữ C trước những ngôn ngữ cho lệnh Shell. Điều này cũng có thể xảy ra khi các trang man của Fortran hoặc TCL/Tk được liệt kê trước các trang C.

Nếu bạn không biết bắt đầu từ đâu, hãy nhập man intro Hoặc man -s <section> intro. Điều này cung cấp cho bạn một bản tóm tắt các lệnh của phần được yêu cầu.

Các phần được xác định rõ:

  • 1 là cho các lệnh Shell,
  • 2 là cho các cuộc gọi hệ thống,
  • 3 là dành cho giao diện lập trình (đôi khi là 3C cho C, 3F cho Fortran ...)
  • 5 là cho các định dạng tệp và các quy tắc khác như định dạng printf hoặc regex.

Cuối cùng nhưng không kém phần quan trọng: thông tin được cung cấp trong các trang man không dư thừa, vì vậy hãy đọc kỹ từ đầu đến cuối để tăng cơ hội tìm thấy những gì bạn cần.

51
mouviciel

Nhập dấu gạch chéo / và sau đó nhập chuỗi để tìm kiếm. Sau đó tiếp tục nhấn n để đến mục tiếp theo

58
Alexander Pogrebnyak

người đàn ông -k tìm kiếm

Điều này sẽ cung cấp cho bạn một danh sách tất cả các trang man liên quan đến 'tìm kiếm'.

37
Kristof Provost

Như @Steven D nói, đừng quên các trang info.

Ngoài ra, không bị đe dọa bởi các trang info. Tôi biết nhiều người không sử dụng các trang thông tin vì hệ thống điều hướng tích hợp. Giải pháp yêu thích của tôi là chuyển các trang thông tin qua less:

info gpg |less

Bằng cách này, tôi có thể điều hướng các trang info bằng cách sử dụng máy nhắn tin yêu thích của mình. Các trang info bây giờ sẽ hoạt động giống như các trang man.

20
Stefan Lasiewski

Tiện ích apropos cực kỳ tiện dụng để tìm trang chủ phù hợp.

18
Hank Gay

Máy nhắn tin mặc định để đọc trang nam là less. Có tài liệu về lesstại đây .

Đặc biệt:

  • Cuộn lên/xuống bởi một trang: b / space
  • Cuộn lên/xuống một nửa trang: u / d
  • Tìm kiếm tiến/lùi: / / ?, sau đó nhập một biểu thức chính quy, [.__.]
    • sau đó đánh n để đi đến trận đấu tiếp theo hoặc
    • shiftN để đi đến trận đấu trước.
    • Nếu trang bị phủ các trận đấu không thú vị, hãy nhấn space để đi đến trang tiếp theo.
  • Thêm một @ trước biểu thức chính quy để tìm kiếm từ đầu.
16
Casebash

Luôn luôn kiểm tra những gì trong phần XEM CSONG. Các lệnh được hiển thị bên dưới phần này trong trang info có thể được chọn bằng cách đặt con trỏ trên lệnh mong muốn và sau đó nhấn phím enter. Thường xuyên tôi tìm thấy các lệnh hoặc chức năng hữu ích khác theo cách đó.

8
Neth

Nếu bạn thấy thoải mái hơn với trình soạn thảo của mình so với trình nhắn tin mặc định, bạn có thể đặt MANPAGER trong môi trường của mình. Ví dụ: tôi có dòng này trong ~/.bashrc:

export MANPAGER="col -b | vim -c 'set ft=man nomod nolist ignorecase' -"
7
Rob Hoelz

Tôi cho rằng, sử dụng hầu hết máy nhắn tin là một ý tưởng tốt. Máy nhắn tin này rất mạnh, nhưng tính năng chính đối với tôi - hiển thị các trang man màu. Tính năng này cải thiện nhận thức về văn bản đơn giản và dễ dàng tìm kiếm thông tin cần thiết.

Nhìn vào ảnh chụp màn hình đính kèm, văn bản trông rất đẹp phải không?

most pager

4
dr.

Trong Linux man, bạn có thể làm man -K string (lưu ý chữ hoa K) để thực hiện tìm kiếm vũ phu của một thuật ngữ đã cho

   -K, --global-apropos
          Search for text in all manual  pages.   This  is  a  brute-force
          search,  and is likely to take some time; if you can, you should
          specify a section to reduce the number of pages that need to  be
          searched.   Search terms may be simple strings (the default), or
          regular expressions if the --regex option is used.

rất hữu ích khi bạn không biết tìm kiếm ở đâu.

4
enzotib

Đừng bỏ qua các trang info. Nhiều công cụ GNU có các trang thông tin rộng hơn nhiều so với trang man. Thông thường, phần XEM ALSO sẽ nói "Tài liệu đầy đủ cho foo được duy trì dưới dạng hướng dẫn Texinfo. "Điều này đặc biệt đúng với mọi thứ trong gói GNU coreutils.

Ngoài ra, nếu bạn là người dùng emacs, đừng quên bạn có thể đọc các trang thông tin và hướng dẫn mà không cần rời khỏi trình chỉnh sửa của mình: M-x infoM-x woman.

3
Steven D

Đối với những trang dài hơn, phức tạp hơn, tôi thấy việc đọc chúng từ máy tính trở nên dễ dàng hơn nhiều (lẻ, tôi biết) và vì vậy tôi có các chức năng này trong .bashrc

# Print man pages 
manp() { man -t "[email protected]" | lpr -pPrinter; }

# Create pdf of man page - requires ghostscript and mimeinfo
manpdf() { man -t "[email protected]" | ps2pdf - /tmp/manpdf_$1.pdf && \
    xdg-open /tmp/manpdf_$1.pdf ;}
3
jasonwryan

Từ câu trả lời của Kristof, nếu bạn (tức là) gõ man -k chmod bạn sẽ nhận được một danh sách các possibilites. Lưu ý số trong ngoặc đơn, nó có nghĩa là phần cần tìm trong các trang hướng dẫn:

Trên UNIX, bạn có thể thử:

man -s1 chmod nó sẽ hiển thị trang man cho lệnh chmod

man -s2 chmod nó sẽ hiển thị trang man cho hàm C lib chmod ()

Trên Linux, bạn nên thay đổi -s cho -S

2
jyz

Tương tự nhưng hơi khác với câu trả lời của Rob Hoelz,

Thêm phần sau vào ~/.vimrc:

let $GROFF_NO_SGR=1
runtime ftplugin/man.vim

Bây giờ vimman là một người xem trang tuyệt vời và :Man từ trong Vim (hoặc chỉ cần nhấn K qua một từ khóa ) là một trình duyệt manpage tuyệt vời.

2
ephemient

Xem trang man trong ứng dụng đồ họa thân thiện với người dùng:

konqueror man:(command)

Đối với mục lục cấp cao nhất:

konqueror man:

Đặc trưng:

  • Nếu bạn nhập một lệnh có khớp trong nhiều phần, nó sẽ đưa bạn đến trang định hướng
  • Đây là một ứng dụng đồ họa, vì vậy bạn không cần phải nhớ các chuỗi khóa khó hiểu để điều hướng trang
  • Nó bao gồm các siêu liên kết đến các trang liên quan (bao gồm các trang "xem thêm")
  • Bạn có thể mở các trang liên quan trong các tab riêng biệt
2
nobar

Dayum, mọi người! Những câu trả lời phức tạp là gì?! Bất cứ điều gì đã xảy ra với sự đơn giản là chìa khóa cho sự sáng chói và những gì không? Hầu hết các phím vi/vim của bạn sẽ hoạt động ổn định:

/ Hoặc ? - Tìm kiếm tiến hoặc lùi (như một số kẻ đã đề cập). Trong trường hợp trước đây, một chữ thường n sẽ cuộn qua các trận đấu về phía trước, một chữ N viết hoa sẽ đi lùi. Điều ngược lại là đúng đối với câu hỏi sau - dấu hỏi.

Hơi phức tạp hơn các tìm kiếm thông qua các biểu thức thông thường. Sự khác biệt giữa man (hoặc less) và VIM là bạn phải sử dụng ký tự esc () để khai báo siêu ký tự trong biểu thức của bạn khi sử dụng biểu thức sau Tin tốt là khi bạn đang sử dụng trước đây (man hoặc less) - không quá nhiều. Vì vậy, bạn có thể dễ dàng đặt cái này để sử dụng khi tìm kiếm, ví dụ, một iptables man page cho nhiều cụm từ như vậy: /(iptables|rules). Nếu bạn không quen với các biểu thức thông thường, điều này có nghĩa là "Tìm kiếm các phiên bản của từ iptables OR = rules ". Sau khi nhập này và tiếp tục nhấn n, bạn sẽ cuộn qua các kết quả tìm kiếm xen kẽ với kết quả được tô sáng độc đáo cho bạn với các màu khác nhau (thực tế là hai. Haha). cố gắng lướt qua trang và muốn tập trung vào các thuật ngữ hoặc khái niệm cụ thể - bạn sẽ không bỏ lỡ điều gì!

Và, tất nhiên, để điều hướng nhanh hơn thông thường vi của bạn vẫn đứng (không có ý định chơi chữ): gg hoặc G - bắt đầu/kết thúc tài liệu; (Sửa! Trong man bạn có thể sử dụng tất cả các phím được đề cập bên dưới mà không cần sử dụng Ctrl. Đó chỉ là vi). Ctrl + u or d - Cuộn lên hoặc xuống; Ctrl + b or f - Điều tương tự, chỉ trong những bước nhảy lớn hơn. "Trang lùi hoặc tiến"; e hoặc y - cuộn theo một dòng duy nhất, nhưng tôi nghĩ hầu hết mọi người chỉ muốn sử dụng các phím mũi tên. Tuy nhiên, nếu bạn muốn ở lại "1337" và "không bao giờ rời khỏi nhà" (như tôi làm lol) - đó là cách để đi.

Điều tôi đang cố gắng nói là UNIX có hai hương vị chính của điều khiển chương trình bàn phím, cả hai đều là thư viện của readline: vi và emacs. Tăng số lượng của bạn trong một trong hai (nhưng, tốt nhất là - trong cả hai) và nó sẽ làm cho cuộc sống của bạn bớt phức tạp hơn rất nhiều. Hầu hết các chương trình CLI trong UNIX đều sử dụng một trong hai. BASH sử dụng các điều khiển emacs theo mặc định, nhưng nó có thể dễ dàng được đặt thành "chế độ vi" bằng cách nhập vào set -o vi. Điều tương tự cũng có thể được nói cho các biểu thức thông thường, nhưng điều đó sẽ lạc đề. Tôi thậm chí còn đi xa hơn khi nói rằng cả hai đều là "ngôn ngữ chung" của UNIX.

2
Max

Để tìm kiếm hiệu quả cho chuyển đổi ký tự đơn, ví dụ -u, bạn có thể thường xuyên sử dụng:

/^ *-u($|\s)

Tiết kiệm nhiều thời gian nếu nhiều tùy chọn có '-u' làm tiền tố.

1
matt

Hầu hết chúng ta đều đặt biến PATH. Điều này sẽ chỉ cho bạn cách tự động làm cho đường dẫn tìm kiếm của người đàn ông khớp với lệnh tìm kiếm PATH của bạn.

Giả sử bạn nối thêm đường dẫn của mình để bao gồm các tiện ích cá nhân, dành riêng cho công việc và được cài đặt cục bộ, như export PATH=$PATH:~/bin:/workgroup/bin:/opt/local/bin:. Là một tác dụng phụ, man foo sẽ không hiển thị các trang được lưu trữ tại ~/man,/nhóm làm việc/người đàn ông hoặc/opt/local/man.

Để giải quyết vấn đề này, tôi sử dụng lệnh manpath để tự động đặt đường dẫn tìm kiếm trang man. Ví dụ: ~/.bashrc của tôi có như sau. Điều này hoạt động với tôi trên hàng trăm hệ thống khác nhau chạy mọi thứ từ FreeBSD 4.x, Darwin và CentOS 5:

### PATH & MANPATH
# My personal utilities
export PATH=$PATH:$HOME/bin

### Set the manpath based on the PATH, after man(1) parses man.conf
# - No need to modify man.conf or manually modify MANPATH_MAP
# - Works on Linux, FreeBSD & Darwin, unlike /etc/manpaths.d/
# See "SEARCH PATH FOR MANUAL PAGES" in man(1)
# Just set the man search path. Don't print output to screeen.
manpath >/dev/null

Một số hệ thống (Like Apple Leopard) tự động đặt MANPATH, nhưng điều đó có nghĩa là hệ thống của bạn sẽ sử dụng biến MANPATH thay vì sử dụng manpath. Kết quả là, các trang man cho ' MacPorts '(/ opt/local/man) bị bỏ qua. Tôi muốn tự mình kiểm soát điều này, vì vậy tôi bỏ đặt MANPATH:

unset MANPATH
manpath >/dev/null
1
Stefan Lasiewski

man -a printf chỉ mặc định là man 1 trên máy Linux Mint của tôi. whatis printf cung cấp cho tôi thông tin thích hợp.

1
stu

Nếu bạn đang tìm kiếm thông tin liên quan đến bash dựng sẵn (chẳng hạn như time, disown, set hoặc [[), thay vì slogging thông qua trang thông tin chi tiết bash hoặc man bash, bạn có thể nhập help {builtin-keyword} và nhận thông tin cú pháp cơ bản một cách nhanh chóng.

1
LawrenceC

Tôi chỉ sử dụng grep. Nếu tôi tự hỏi tùy chọn -s Của lệnh read đã làm gì, tôi sẽ thử các lệnh này theo thứ tự cho đến khi tôi nhận được câu trả lời:

info read |grep \\-s

man read |grep \\-s

help read |grep \\-s

Trong trường hợp này, chỉ có lệnh info cung cấp câu trả lời rõ ràng. Câu trả lời xuất sắc này cung cấp chi tiết về các hệ thống trợ giúp khác nhau.

1
Cees Timmerman

Nếu bạn cảm thấy khó chịu khi man printf cung cấp cho bạn printf (1) và tất cả những gì bạn muốn là printf (3), bạn có thể nói với người đàn ông bạn muốn printf từ phần 3 bằng cách đặt phần trước printf, như vậy: man 3 printf, mà không phải thay đổi thứ tự của các thư mục được quét trong biến môi trường MANPATH và đặt các thư mục cho ngôn ngữ C trước các thư mục Shell.

1
Li Lo

Và đối với những người thích đọc các trang thông tin và người đàn ông trong màn hình cảm ứng, bạn có thể chuyển man/thông tin sang yad hoặc zquil và sử dụng tất cả các tính năng gtk3 như cuộn ngón tay bản địa. Cũng hoạt động tuyệt vời với màn hình refular và chuột:

man cat |yad --text-info 

Bạn cũng có thể sử dụng tiện nghi hoặc bạn có thể thêm các tùy chọn yad như:

man cat |yad --text-info --height=500 --width=800 --center --wrap --show-uri --no-markup &

Mẹo: bằng cách hiển thị uri yoh có thể nhấp vào liên kết web bên trong trang người dùng bằng chuột/ngón tay.

0
George Vasiliou

enter image description here Nếu bạn cảm thấy khó đọc các trang web vì tất cả văn bản màu trắng, bạn có thể tô màu chúng. Hầu hết các trang man mở bằng less. Đối với less, tôi sử dụng các cài đặt màu sau trong .bashrc từ tại đây :

man() {
    LESS_TERMCAP_md=$'\e[01;31m' \red
    LESS_TERMCAP_me=$'\e[0m' \
    LESS_TERMCAP_se=$'\e[0m' \
    LESS_TERMCAP_so=$'\e[01;44;33m' \yellow on blue
    LESS_TERMCAP_ue=$'\e[0m' \
    LESS_TERMCAP_us=$'\e[01;32m' \green
    command man "[email protected]"
}

Đây là cho bash và zsh. Đối với most, fish, xtermrxvt xem liên kết ở trên.

Để đọc thêm:

0
vikram99

Lệnh apropos (1) được sử dụng để tìm kiếm các trang man. Tuy nhiên, hầu hết các triển khai của apropos (1) chỉ tìm kiếm trong phần NAME, điều này rất hạn chế.

NetBSD có triển khai tìm kiếm toàn văn bản của apropos (1), có khả năng tìm kiếm nội dung đầy đủ của các trang man. Ngoài ra còn có một giao diện dựa trên web cho nó: man-k.org , mà bạn có thể dùng thử.

0
Abhinav Upadhyay