BASH 함수에 매개변수 전달

BASH 함수에 매개변수 전달

명령줄에서 FoxitReader를 실행하려고 합니다.

열기 위해 다음 함수를 만들었습니다.

foxit(){
    /home/quora/opt/foxitsoftware/foxitreader/FoxitReader.sh 
    }
export -f foxit

그리고 그것을 넣으십시오 .bashrc. 이는 파일 이름을 인수로 사용하지 않습니다. 따라서 foxit mypdf.pdfFoxit은 열리지만 파일은 열리지 않습니다.

foxit(){
    /home/quora/opt/foxitsoftware/foxitreader/FoxitReader.sh "$@"
    }
export -f foxit

반면에 이 기능은 파일을 열지만 변경 사항을 저장할 수는 없습니다. (이것이 FoxitReader의 핵심이며 이 프로그램은 하이라이트를 PDF로 저장할 수 있습니다.)

foxit mypdf.pdf mypdf2.pdf일련의 PDF 파일을 클릭한 것처럼 열도록 모든 것을 어떻게 설정합니까 ?

참고: Nautilus를 통해 두 개 이상의 PDF 파일을 선택하고 Enter 키를 누르면 Foxit이 해당 파일을 열고 변경하고 저장할 수 있습니다.

FoxitReader.sh:

#!/bin/sh
 appname="FoxitReader"

 selfpath="/home/d4/opt/foxitsoftware/foxitreader"
 exec "$selfpath/$appname" "$@"

답변1

을 보면서FoxitReader 매뉴얼, 당신이하려는 방식으로 명령 줄에서 여러 파일을 여는 것을 허용하지 않는 것 같습니다.

PDF의 기본 핸들러 라면 foxitreader이것이 작동할 것입니다.

#!/bin/bash
for var in "$@"
do
    xdg-open "$var"
done

기본값이 아닌 경우 시도해 보세요.

#!/bin/bash
for var in "$@"
do
    FoxitReader "$var" &
done

테스트하기 위해 설치 하지는 않았지만 foxitreader잘 작동합니다.masterpdfeditor4

관련 정보