변수도 포함하는 bash 명령에 대한 바로가기를 만드는 것이 가능합니까?

변수도 포함하는 bash 명령에 대한 바로가기를 만드는 것이 가능합니까?

예를 들어, 바로가기를 만들 수 있습니까?

tar cf - /VARIABLE_1 -P | pv -s $(du -sb /VARIABLE_1 | awk '{print $1}') | gzip > VARIABLE_2.tar.gz

간단히 입력할 수 있도록 tarpb VARIABLE_1 VARIABLE_2? 아니면 스크립팅을 통해서만 가능합니까?

답변1

함수를 사용하는 중간 방법이 있습니다. 에서 .bashrc이 작업을 수행하는 함수를 정의할 수 있습니다.

tarbp() {
  input=$1
  output=$2
  tar cf - /"${input}" -P | pv -s "$(du -sb /"${input}" | awk '{print $1}')" | gzip > "${output}".tar.gz
}

$1$2함수에 전달되는 첫 번째 및 두 번째 매개변수입니다 .

셸을 다시 시작한 후(또는 을 다시 로드한 후 .bashrc) 일반 명령처럼 이 기능을 사용할 수 있습니다.

tarbp input output

(Ubuntu는 이것에 대해 bash 완료도 수행합니다)

관련 정보