나는 man
이 옵션을 사용하여 페이지를 다른 언어로 표시 할 수 있다는 것을 방금 발견했습니다 -L
(예: man -L fr man
프랑스어로 매뉴얼 페이지 표시). 그러나 언어를 사용할 수 없는 경우 일반적으로 미국 영어 매뉴얼 페이지가 표시됩니다. 나는 다른 언어 중 하나를 사용할 수 있다면 미국 영어 매뉴얼 페이지를 읽는 것을 좋아하지 않습니다.
어떤 언어를 사용할 수 있는지 미리 어떻게 알 수 있나요?
man --list-languages cal
(예를 들어 ) 다음과 같은 결과를 출력하는 명령이 있다면 좋을 것입니다.
ar
de
en
my
zh
답변1
어때요?
#!/usr/bin/env bash
if [ "$#" -eq 2 ]
then
printf -v man_arg "%s %s" "$1" "$2"
elif [ "$#" -eq 1 ]
then
printf -v man_arg "%s" "$1"
else
printf "Wrong number of args\n" >&2
exit 1
fi
LANG=C
mandir="$(dirname "$(dirname "$(man -w $man_arg)")")"
manfile="$(basename "$(man -w $man_arg)")"
part_to_rm="$(basename "$(dirname "$(man -w $man_arg)")")"
find "$mandir" -name "$manfile" | cut -d / -f4 | sed "/$part_to_rm/ d"
manpage
이 스크립트는 영어를 제외한 사용 가능한 모든 언어를 표시합니다. 예:
$ ./man-langs.sh cal
ja
$ ./man-langs.sh man
nl
pl
es
da
it
ja
de
zh_CN
ru
id
fr
$ ./man-langs.sh xfce4-terminal
pl
es
sr
sv
da
pt
lt
it
ja
ar
gl
pt_BR
ca
el
de
ko
zh_CN
tr
ru
id
uk
ug
fr
$ ./man-langs.sh 1 printf
ja