다양한 명령의 옵션을 기억하기 위해 어떤 트릭을 사용하는지 알고 싶습니다. 맨 페이지를 항상 찾는 것은 시간이 많이 걸리고 그렇게 시원하지는 않습니다!
man
페이지 매우 :) ... 멋지다
다양한 명령의 옵션을 기억하기 위해 어떤 트릭을 사용하는지 알고 싶습니다. 맨 페이지를 항상 찾는 것은 시간이 많이 걸리고 그렇게 시원하지는 않습니다!
man
페이지 매우 :) ... 멋지다
답변:
트릭은 간단합니다. 당신은하지 않습니다. 시간 낭비이며 꼭 필요한 것은 아닙니다. 명령 옵션을 암기하는 것은 특히 유용한 기술이 아닙니다. 물건이 일반적으로 어떻게 작동하는지 이해하고 처음에는 어떤 도구가 있으며 어떤 도구를 사용하는지 모호한 아이디어를 갖는 것이 훨씬 더 중요합니다. 여기서 매우 중요한 기술은 아직 모르는 것을 알아내는 방법을 아는 것입니다.
매뉴얼 페이지는 시간이 많이 걸리나요? 별로. 적어도 매번이 아니라, 검색 기능이있는 것을 읽는 것은 아닙니다. 나는에 대한 하나 비밀 어떤 옵션을 기억하지 않도록 경우 hdparm
일부 WD 디스크의 비활성화 유휴 타이머, 내가 할 수 man hdparm
와 /idle3
와 헤이, 그것은이었다 -J
. 그런 것들을 찾는 것은 너무 빠릅니다. 나중에 그것을하는 것을 기억조차하지 않습니다.
누군가가 실제로 모든 hdparm
옵션을 암기한다고 상상해보십시오 . 시간 낭비 야
옵션을 자주 사용하기 때문에 옵션을 기억하는 것이 좋습니다. 그것은 생각조차하지 않고 자동으로 발생합니다. 그러나 실제로 의식적으로 그들을 암기하는 데 시간을 보내고 ... 그게 무엇이 좋을까요? 종이 시험?
man hdparm | less -p idle3
또한 원하는 용어로
rm -i -f -r
, ln -s
, df -s -h
, cp -r -i
, ls -l -h -a
, 등 (이 목록은 사람마다 다르다).
Zsh에는 기본적으로에 바인딩 된 실행 도움말 기능이 Alth있습니다. 이 기능을 사용하면 rsync
예를 들어 기억하기 어려운 많은 옵션이나 복잡한 옵션을 사용하여 명령을 입력 한 다음 해당 명령의 man
페이지를 열 수 있습니다. 그래서:
rsync Alth
man
페이지를 읽고 필요한 스위치를 확인한 q다음 히트 한 다음 정확히 중단 한 위치에서 필수 옵션으로 명령을 완료 할 수 있도록 명령 프롬프트로 돌아갑니다.
rysnc -azP file dir/
위키 노트로 :
run-help-command 형식의 헬퍼 기능을 정의하여이 기능을 추가로 사용자 정의 할 수 있습니다. 표준 배포판에는 run-help-git, run-help-svk 및 run-help-svn의 세 가지 기능이 있습니다.
bash
이 bash-complete
명령의 많은에 대한 매개 변수 선택의 여지를 제공 할 것이다.
zsh
bash
완료는 완료 목록에 설명을 추가하거나 항목을 그룹화 ( --classify -F -- append file type indicators
예 : zsh의 GNU ls 완료)하는 것을 지원하지 않으므로 zsh만큼 유용하지 않습니다.
대부분의 명령에는 빠른 참조를위한 --help가 있으며 일반적으로 내가 아는 것이 무엇인지 상기시키는 것으로 충분합니다.
즉, -h 또는 심지어-? 대신에 도움을 쓰는 습관이 있습니다. 사용법 출력 또는 매뉴얼 페이지를보기 전에 -h가 무엇인지 알 수 없습니다. 최악의 경우 -h는 위험 자동 파괴를위한 짧은 손일 수 있습니다.
--help
. -?
로 인용 요구 zsh
, csh
, tcsh
또는 fish
또는 이름이되는 파일이있는 경우 -
현재 디렉토리에 하나의 문자 다음은. -:
거기에 바람직 할 수 있습니다.
내가 좋아하는 한 가지 옵션은 동일하거나 유사한 옵션을 가진 별칭을 만드는 것입니다.
alias rmi='rm -i'
alias rmiv='rm -iv'
alias rmv='rm -v'
alias cpr='cp -r'
alias cprv='cp -rv'
이렇게하면 곧 쉽게 기억할 수있는 유용한 바로 가기가 있지만 실제 옵션에 대한 정보도 그대로 유지됩니다.
별칭을 사용하는 또 다른 방법은 가장 일반적인 옵션을 선택하고이를 사용하는 매우 짧은 별칭을 만드는 것입니다. 예를 들어 ls
나는 거의 항상 그렇게 l
하고 있기 때문에 :
alias l='ls -alFtrG'
또 다른 옵션은 기본 명령에 원하는 옵션을 가져 오는 것입니다.
alias ls='ls -F --color=always'
마지막으로 연습, 연습, 연습 및 인내. 일반적인 옵션을 계속 입력하면 결국 배우게됩니다. 며칠 동안의 일반적인 것들, 몇 주 동안의 다른 것들, 그리고 당신에게 알려지기까지 몇 년이 걸립니다. 유닉스 프로그래밍이 오랫동안 당신을 즐겁게 해줄 것이라고 생각하십시오.
내가 좋아하는 또 다른 옵션은 내 기록을 쉽게 검색 할 수있는 별칭이며 두 가지 유사한 별칭이 있습니다.
alias hg='history | tail -200 | grep -i'
alias hga='history | grep -i'
이를 통해 예를 들어 명령 사용을 검색 할 수 있습니다.
hg ls
역사에서 ls의 최근 사용을
hga ls
보여줍니다. 내 전체 역사에서 ls의 모든 사용을 보여줍니다.
나는 hga가 너무 많이 나타나는 경향이 있음을 알게 된 후에 hg를 개발했습니다.
rm -iv
하지 못하면 OP는 아마도 무엇을 기억 rmiv
하지 못할 것입니다 . 문제가되는 하이픈이라고 생각하지 않습니다.
rm -iv
에 safe_delete
나rm_prompt
나는 일반적으로 :
man ${CMD} | grep 'what was I thinking about?'
또는 이의 일부 변형. 일부를 사용하면 context , after 및 before 각각에 grep
-C / A / B를 지정할 수 있습니다 . 그렇지 않은 경우 와 매우 잘 일치 할 수있다 :nl
sed
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
--help
메뉴가있는 경우 에도 동일한 기술이 메뉴에서 작동 하지만 ${CMD} --help 2>&1 | ..filter..
이러한 작업을 인쇄하려면 상당히 표준적인 방법이기 때문에 수행해야 할 수도 있습니다 stderr
.
어쨌든, 나는 이야기의 도덕적, 기억 추측 적어도 man
및 grep
. 어쩌면 나머지는 땀을 흘리지 마십시오.
grep
특정 기능을 찾을 때 종종 매뉴얼 페이지를 작성하는 것이 매우 편리합니다.