Tôi tò mò muốn biết bạn sử dụng thủ thuật gì để ghi nhớ các tùy chọn cho các lệnh khác nhau? Nhìn lên các trang man mọi lúc đều tốn thời gian và không quá tuyệt!
man
các trang rất tuyệt ... :)
Tôi tò mò muốn biết bạn sử dụng thủ thuật gì để ghi nhớ các tùy chọn cho các lệnh khác nhau? Nhìn lên các trang man mọi lúc đều tốn thời gian và không quá tuyệt!
man
các trang rất tuyệt ... :)
Câu trả lời:
Thủ thuật rất đơn giản: Bạn không cần. Đó là một sự lãng phí thời gian và không cần thiết. Ghi nhớ các tùy chọn lệnh không phải là một kỹ năng đặc biệt hữu ích. Điều quan trọng hơn nhiều là phải hiểu cách thức hoạt động của công cụ nói chung và có một ý tưởng mơ hồ về công cụ nào tồn tại ở nơi đầu tiên và bạn sử dụng chúng để làm gì. Một kỹ năng rất quan trọng ở đây là biết cách tìm hiểu về những thứ bạn chưa biết.
Trang man có tốn thời gian không? Không phải vậy. Không giống như bạn phải đọc chúng - ít nhất, không phải mọi lúc - có chức năng tìm kiếm. Vì vậy, nếu tôi không nhớ tùy chọn mật mã nào là tùy chọn hdparm
để vô hiệu hóa bộ đếm thời gian nhàn rỗi trên một số đĩa WD, thì tôi cũng vậy man hdparm
và /idle3
đó là -J
. Nhìn những thứ như thế rất nhanh, tôi thậm chí không nhớ là đã làm nó sau đó.
Hãy tưởng tượng ai đó thực sự ghi nhớ tất cả các hdparm
tùy chọn. Thật là lãng phí thời gian.
Sẽ tốt thôi nếu bạn tình cờ nhớ các tùy chọn vì bạn sử dụng chúng thường xuyên. Điều đó xảy ra tự động mà không cần suy nghĩ về nó. Nhưng thực sự có ý thức dành thời gian để ghi nhớ chúng ... những gì được cho là tốt cho? Một bài kiểm tra giấy?
man hdparm | less -p idle3
cũng là một cách thuận tiện để chuyển sang thuật ngữ mong muốn ...
rm -i -f -r
, ln -s
, df -s -h
, cp -r -i
, ls -l -h -a
, vv (danh sách các thay đổi từ người này sang người).
Zsh có chức năng chạy trợ giúp , theo mặc định ràng buộc với Alth. Với chức năng này, bạn có thể bắt đầu nhập một lệnh với nhiều tùy chọn phức tạp hoặc khó nhớ, rsync
ví dụ như, và sau đó man
mở trang của lệnh đó . Vì thế:
rsync Alth
đọc man
trang và tìm ra công tắc nào bạn yêu cầu, nhấn qvà sau đó bạn được đưa trở lại dấu nhắc lệnh, chính xác nơi bạn rời đi, sẵn sàng hoàn thành lệnh với các tùy chọn cần thiết:
rysnc -azP file dir/
Như wiki ghi chú:
Hàm này có thể được tùy chỉnh thêm bằng cách xác định các hàm trợ giúp của biểu mẫu run-help-lệnh. Có ba chức năng như vậy có sẵn trong bản phân phối tiêu chuẩn: run-help-git, run-help-svk và run-help-svn.
bash
có bash-complete
mà sẽ cung cấp rất nhiều tùy chọn tham số cho rất nhiều các lệnh.
zsh
bash
việc hoàn thành không hỗ trợ thêm mô tả vào danh sách hoàn thành hoặc nhóm các mục ( --classify -F -- append file type indicators
ví dụ: trong quá trình hoàn thành GNU ls của zsh) vì vậy gần như không hữu ích như zsh.
Sử dụng một lịch sử lệnh rất dài, và tìm kiếm thông qua nó, rất hữu ích.
Về cơ bản tôi thu thập tất cả các tệp lịch sử shell và grep thông qua chúng.
Các kết quả được tìm thấy trong nhiều trường hợp rất hữu ích, vì nó dễ dàng tìm kiếm các từ khóa tốt.
Tìm kiếm một đối số cụ thể mà bạn đã sử dụng, như URL, bạn cũng tìm thấy các lệnh và tùy chọn liên quan. Và tìm kiếm các tùy chọn cụ thể, bạn cũng có thể tìm thấy các đối số có liên quan.
Hầu hết các lệnh đều có - trợ giúp để tham khảo nhanh và thường đủ để nhắc nhở những gì tôi đã từng biết.
Điều đó nói rằng, có thói quen viết - trợ giúp thay vì -h hoặc thậm chí -?. Bạn không bao giờ biết -h là gì trước khi tìm trang đầu ra hoặc trang thủ công. Trong trường hợp xấu nhất, -h có thể là tay ngắn cho - hủy diệt tự động.
--help
. -?
nhu cầu trích dẫn với zsh
, csh
, tcsh
hoặc fish
hoặc nếu có các file có tên được -
theo sau bởi một nhân vật duy nhất trong thư mục hiện hành. -:
có thể thích hơn ở đó
Một tùy chọn tôi thích là tạo các bí danh có các tùy chọn giống hoặc tương tự, ví dụ:
alias rmi='rm -i'
alias rmiv='rm -iv'
alias rmv='rm -v'
alias cpr='cp -r'
alias cprv='cp -rv'
Bằng cách này, bạn có một lối tắt đẹp mà bạn sẽ sớm nhớ dễ dàng nhưng điều đó cũng sẽ giữ lại thông tin về (các) tùy chọn thực tế mà nó phản ánh.
Một cách tiếp cận khác với bí danh là chọn các tùy chọn phổ biến nhất và tạo một bí danh siêu ngắn sử dụng chúng. Ví dụ với ls
tôi gần như luôn luôn làm l
và đó là bởi vì tôi có:
alias l='ls -alFtrG'
Một tùy chọn khác là chỉ đưa các tùy chọn bạn thích vào lệnh cơ sở, vd
alias ls='ls -F --color=always'
Cuối cùng là luyện tập, luyện tập, luyện tập và kiên nhẫn. Tiếp tục gõ các tùy chọn phổ biến và cuối cùng bạn sẽ học chúng. Những cái phổ biến trong vài ngày, những cái khác trong vài tuần và có một số phải mất nhiều năm để bạn biết đến. Hãy nghĩ về điều đó như một điều trị trong chương trình unix sẽ tiếp tục giải trí cho bạn trong một thời gian dài.
Một tùy chọn khác mà tôi thích là một bí danh để giúp tìm kiếm lịch sử của tôi dễ dàng hơn và tôi có hai bí danh tương tự:
alias hg='history | tail -200 | grep -i'
alias hga='history | grep -i'
Chúng cho tôi tìm kiếm việc sử dụng một lệnh chẳng hạn:
hg ls
sẽ hiển thị bất kỳ việc sử dụng ls gần đây từ lịch sử
hga ls
sẽ hiển thị tất cả việc sử dụng ls từ toàn bộ lịch sử của tôi.
Tôi đã phát triển hg sau khi thấy rằng hga có xu hướng hiển thị quá nhiều.
rm -iv
làm, OP có lẽ cũng sẽ không nhớ những gì rmiv
làm. Tôi không nghĩ đó là dấu gạch nối đó là vấn đề.
rm -iv
để safe_delete
hoặcrm_prompt
Tôi thường làm:
man ${CMD} | grep 'what was I thinking about?'
Hoặc một số biến thể của chúng. Với một số grep
s, bạn có thể chỉ định -C / A / B cho bối cảnh , sau và trước tương ứng. Nếu không, nl
và sed
có thể được kết hợp khá tốt:
man hdparm | #hard to forget
nl -bp'idle3' -nln -w1 | #I had to grep man to put this together
sed -n '/^[0-9]/{N;N;N;s///p}' #no print until line begins w/ number, next,next,next
Drive's "idle3" timeout value. This timeout
controls how often the drive parks its heads
and enters a low power consumption state.
The factory default is eight (8) seconds,
zero (0) to disable the WD idle3 timer com‐
pletely (NOT RECOMMENDED!).
-k Get/set the "keep_settings_over_reset" flag
Các kỹ thuật tương tự hoạt động với --help
các menu nếu bạn có chúng, nhưng bạn có thể cần phải thực hiện ${CMD} --help 2>&1 | ..filter..
vì đây là một cách thực hành khá chuẩn để in những thứ như vậy stderr
.
Dù sao, tôi đoán đạo đức của câu chuyện là, ít nhất hãy nhớ man
và grep
. Có lẽ đừng đổ mồ hôi phần còn lại.
grep
các trang khi tìm kiếm một tính năng cụ thể, điều đó khá tiện dụng.