Для преобразования каждой страницы справочника в PDF, я сделал man -k . > temp
. Я создал временный файл и названный сценарий file.sh
:
#! /bin/bash
if [ $# -eq 1 ] ; then
to_pdf=$(which ps2pdf)
if [ -z "$to_pdf" ] ; then
to_pdf=$(which pstopdf)
fi
name="$1"
case "$to_pdf" in
*pstopdf) man -t "$name" | "$to_pdf" -i -o "$fname.pdf" ;;
*ps2pdf) man -t "$name" | "$to_pdf" - "$name.pdf" ;;
*) man -t "$name" > "$fname.ps"
esac
exit $?
fi
echo "Wrong number of parameters"
exit 1
Я записал файл Python pythonfile.py
import os
f=open("temp","r")
for i in f:
c="bash file.sh "+str(i)
os.system(c)`
Затем я сделал
python pythonfile.py
Это создаст PDF для каждой страницы справочника отдельно в Вашем рабочем каталоге.
Просто найдите свой файл и возвратите dirname:
find -name 'level.dat' -exec dirname {} \;
Или, найдите свои файлы и извлеките имена каталогов оптом:
find
starting_directory–name level.dat –print | sed 's@/level.dat$@@'
find ~ -type f -name "level.dat" -printf '%h\n'
если может быть более затем один файл с этим именем, то передайте по каналу к uniq
Или реализуйте свою находку сами ;)
myfind(){ shopt -s nullglob; [[ -f $1 ]] && pwd; for i in */ ; do ( cd $i;myfind $1 ) done }
myfind level.dat
Можно использовать find
распечатать только файлы, которые проходят определенный тест. Мне нравится этот подход:
find . -type d -execdir test -f {}/level.dat \; -print
Это находит все каталоги, который содержит названный файл level.dat
.