유용한 bash 별명 및 가장 많이 사용되는 명령 목록 생성


10

내가 발견 당신의 bash는 기록을 정렬하고 당신이 가장 많이 사용하는 명령을 확인할 수있는 빠른 방법을 논의 기사 :

cut -f1 -d" " .bash_history | sort | uniq -c | sort -nr | head -n 30

별명을 작성해야하는 작업과 완전히 cronjob을 작성해야하는 작업에 대해 실제로 눈을 뜨고 있습니다.

작업 시간을 절약 할 수있는 권장 명령 줄 별칭의 ServerFault 목록을보고 싶습니다 . 무엇을 얻었습니까?

우리 사이에서, 우리는이 글을 읽는 모든 사용자를 하루에 최소 10 분 동안 구할 수 있습니다. (물론 일을하는 대신 ServerFault를 읽는 데 시간을 낭비하는 첫날 빼기!)


기록을 위해 수퍼 유저 에는 유용한 Bash 별칭이 많은 superuser.com/questions/7083/useful-command-line-aliases 가 있습니다.
Jonik

답변:


7

나는 많은 다른 기계를 다루기 때문에 내가 가장 좋아하는 것 중 하나는 자주 SSH 해야하는 각 기계의 별명입니다.

alias claudius="ssh dinomite@claudius"

또한 좋은 설정에 유용 .ssh/config하고 SSH 키가 보다 쉽게 기계 사이에 호핑 확인합니다.

내가 가장 좋아하는 별명 중 하나는 디렉토리를 옮기는 것입니다.

alias ..="cd .."
alias ...="cd ../.."
alias ....="cd ../../.."
alias .....="cd ../../../.."

그리고 일반적으로 사용되는 ls(및 오타) 변형의 일부 :

alias ll="ls -l"
alias lo="ls -o"alias lh="ls -lh"
alias la="ls -la"
alias sl="ls"
alias l="ls"
alias s="ls"

나는 거의 항상 원한다 egrep:

alias grep="egrep"

모든 섹션에서 매뉴얼 페이지 가져 오기

alias man="man -a"

각 디스크의 크기를 찾는 awk것과 같이 출력의 특정 열을 얻기 위해 출력을 파이핑하는 경우가 종종 df -h | awk '{print $2}'있었습니다. 이것을 쉽게하기 위해 fawk.bashrc에 함수 를 만들었습니다 .

function fawk {
    first="awk '{print "
    last="}'"
    cmd="${first}\$${1}${last}"
    eval $cmd
}

나는 이제 df -h|fawk 2타이핑을 잘하는 것을 실행할 수 있습니다 .

나는 많은 Perl과 함께 일하고 시스템에 설치된 모듈의 버전을 알아야합니다.

function perlmodver {
    perl -M$1 -e 'print "Version " .
        $ARGV[0]->VERSION . " of " . $ARGV[0] .
        " is installed.\n"' $1
}

3

나는 보통 모든 것을 타이핑하고 싶다. 왜냐하면 나는 내가 사용하고있는 명령에 대한 모든 것을 곧 잊을 것이다. 나는 내가 틀렸다는 것을 알고 있지만 Commandlinefu의 모든 명령 을 내 .bashrc 에 붙여 넣은 경우 시스템에 대해 많이 알지 못한다고 생각 합니다.

나는 내가 최고라고 말하는 것이 아니라 리눅스와 관련하여 알아야 할 모든 것을 알고 있다는 것입니다. 나는 단지 배우고 싶다고 말하고 사용하여 배운 것을 기억합니다.

그것은 시간 절약 별칭이 (특히 더 큰 기능을 위해 있지만 스크립트가 더 좋지 않은지 확인해야 함) 얼마나 감사하지는 않지만 개인적으로 사용하지는 않습니다. 항상 그렇지는 않습니다).

즉, Commandlinefu에는 별칭에 대한 특수 태그 가 있습니다. 볼만한 가치가 있습니다.

또한 이것이 좋은 것이라고 생각합니다.

   alias less='less -FSRX'

출력이 화면보다 큰 경우에만 덜 사용합니다.


2

내가 가장 좋아하는 것 :

alias server_name='ssh -v -l username ip_address'

설명이 필요하지 않습니까? :-)


5
.ssh / config가
아닌가

bash_completion 및 탭을 사용하여 탭 대신 ssh를 별칭을 잔뜩 설정하는 나를 위해 잘 작동하는 것 같다
클레이튼 스탠리

2

alias lt='ls -lhart'

  • l = long : h = 인간 판독 가능 크기 : a = all : r = 역 정렬 : t = 시간 정렬
  • 프롬프트 바로 위에 맨 아래에 최신 파일을 넣습니다.

alias active='grep -v -e "^$" -e"^ *#"'

  • 비어 있거나 주석 처리되지 않은 행만 표시
  • 예 : 활성 /etc/httpd/conf/httpd.conf

alias svi='sudo vim'

alias scr='screen -Rd'


니스, 특히 sudo vim
천체

1

나는 이런 식으로 몇 가지를 인정해야합니다 ..

alias sl=ls

내 오타와 싸우고 :-)

나도

alias aliases='xterm -e vim ~/.bash_aliases;reload'
alias reload='. ~/.bash_aliases'

새롭고 간단하게 추가 할 수 있습니다.



1
for host in `awk '{ print $1 }' ~/.hostsILogIntoAllTheTime`; do
  alias $host='ssx '$host
done 

호스트에 로그온 할 호스트 이름을 입력하십시오. 참고 : ssx는 별칭 자체입니다.

ssx='ssh -Y'

공유 키와 결합하면 꽤 매끄 럽습니다.


1

데비안 / * buntu에 전체 apt-get 및 apt-cache 항목을 넣는 것이 귀찮습니다. 특히 sudo 접두사가 있습니다.

alias apti='sudo apt-get install'
alias aptr='sudo apt-get remove'
alias apts='apt-cache search'

1

.tar.gz 만들기

alias tarc="tar czvf"

.tar.gz 추출

alias tarx="tar xzvf"

.tar.gz 목록

alias tart="tar tzvf"


0

이 페이지에서 awk를 사용하여 csv (실제로 tsv) 파일의 n 번째 열을 표시하는 별칭을 만드는 방법을 찾고있었습니다. 위의 가짜 기능은 거의 내가 원하는 것입니다. 선택적 두 번째 인수 인 파일 이름을 추가하기 위해 약간 수정 했으므로 파이프를 통해서만 사용하는 것이 아니라 보통 awk처럼 사용할 수 있습니다.

function fawk {
    first="awk '{print "
    last="}' $2"
    cmd="${first}\$${1}${last}"
    echo $cmd
    eval $cmd
}

감사!


0

이것은 별명은 아니지만 ssh 연결의 별명을 가진 사람들을 보는 것이 유용 할 수 있습니다.

Openssh 패키지에는 심볼릭 링크를 통해 작동하는 ssh-argv0이라는 바이너리가 있습니다.

따라서 다음과 같이하면

sudo ln -s /usr/bin/ssh-argv0 /usr/local/bin/user@ssh.server.com

$ PATH에 / usr / local / bin이 있으면 이제 "user"로서 ssh.server.com에 셸 프롬프트로 작성하여 연결할 수 있습니다.

 $ user@ssh.server.com 

0

Drew Stephens의 답변 +1 그가 사용하지 않은 유일한 것은 정기적으로 액세스 해야하는 다양한 도트 파일의 별칭을 지정하는 것입니다.

alias dotz='vi ~/.zshrc'

온더 플라이 추가 별칭 기능으로 한 단계 더 나아가십시오.

function add-alias {
echo "alias $1=\047$2\047" >> ~/.zshrc
}
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.