간단한 별칭을 만들려고합니다.
alias draw="pinta &> /dev/null & disown"
여기서 의도는 분명합니다. 내 문제는 인수를 전달할 때마다
bash: disown: file.jpg: no such job
파일이로드되지 않으면 pinta가 열립니다. 내 주장을 pinta에 전달한 다음 작업을 취소하려면 어떻게해야합니까?
편집하다:
다음과 같이 인수를 명시 적으로 전달하려고 시도했습니다.
alias draw="pinta $* &> /dev/null & disown"
그러나 나는 같은 결과를 얻는다
답변
대신 함수를 사용하십시오.
function draw {
pinta "$@" &> /dev/null & disown
}
보너스 :"$@"
대신 사용해야 합니다 $*
.
당신이 가지고 있다고 가정 :
function foo {
echo "1: $1"
echo "2: $2"
echo "3: $3"
}
function bar {
echo '$*'; foo $*
echo '$@'; foo $@
echo '"$*"'; foo "$*"
echo '"$@"'; foo "$@"
}
그런 다음 시도하십시오.
bar "f o o" bar baz
오직 "$@"
당신 과 함께 올바른 행동을 취하십시오.