Forum » Programiranje » [Bash] lit v pdf čez cel direktorij
[Bash] lit v pdf čez cel direktorij
christooss ::
Po brskanju nisem nikjer našel direktnega programčka za konvertanje datotek .lit v pdf zato sem se lotil z majhno drugačnega zornega kota
trentuno je nastal takle ukaz
clit imedatoteke.lit test/ && cd test && html2ps imedatoteke.htm > test.ps && ps2pdf test.ps test.pdf
fora je, da clit program zahteva direktorij kot izhod.
clit avtomatično pretvori imedatotke.lit v imedatoteke.htm test pa je pač moje izbrano ime. Sedaj bi pa tudi rad, da bi se avtomatično poimenovala mapa (v zgornjem primeru test/) v imedatotke/ brez .lit in nato tudi kasnejše datoteke test.ps in test.pdf v imedatotke.ps....
Vse kar sem dosedaj opisal pa bi rad naredil nad celo množico .lit datotek.
Da skupaj poberem vprašanja:
1. kako shraniti nekam imedatoteke (fino bi bilo brez končnice .lit) in ga potem kot spremenljivko uporabit kasneje
2. kako to narediti nad enim direktorijem v katerem so zbrane .lit datoteke
Hvala za odgovore
trentuno je nastal takle ukaz
clit imedatoteke.lit test/ && cd test && html2ps imedatoteke.htm > test.ps && ps2pdf test.ps test.pdf
fora je, da clit program zahteva direktorij kot izhod.
clit avtomatično pretvori imedatotke.lit v imedatoteke.htm test pa je pač moje izbrano ime. Sedaj bi pa tudi rad, da bi se avtomatično poimenovala mapa (v zgornjem primeru test/) v imedatotke/ brez .lit in nato tudi kasnejše datoteke test.ps in test.pdf v imedatotke.ps....
Vse kar sem dosedaj opisal pa bi rad naredil nad celo množico .lit datotek.
Da skupaj poberem vprašanja:
1. kako shraniti nekam imedatoteke (fino bi bilo brez končnice .lit) in ga potem kot spremenljivko uporabit kasneje
2. kako to narediti nad enim direktorijem v katerem so zbrane .lit datoteke
Hvala za odgovore
Zakaj je nebo modro? Da imamo lahko sladoled Modro Nebo
BigWhale ::
Uporabis lahko 'basename' za kolobocijo z imeni...
Vse skupaj nardis nekako takole:
for bla in *.lit
do
base=`basename "${bla}" .lit`
clit "${bla}" test/
html2ps "test/${base}.html" > "test/${base}.ps"
ps2pdf "test/${base}.ps" "test/${base}.pdf"
mv test/ ${base}
done
Takole nekako... Seveda prej preizkusi vse skupaj, sem pisal na pamet..
Vse skupaj nardis nekako takole:
for bla in *.lit
do
base=`basename "${bla}" .lit`
clit "${bla}" test/
html2ps "test/${base}.html" > "test/${base}.ps"
ps2pdf "test/${base}.ps" "test/${base}.pdf"
mv test/ ${base}
done
Takole nekako... Seveda prej preizkusi vse skupaj, sem pisal na pamet..
Zgodovina sprememb…
- spremenil: BigWhale ()
BigWhale ::
Namesto mv test/ ${base} bi lahko ze zgoraj kar ${base} uporabil... Pa kadar delas z ${base} ga imej vedno v narekovajih, tako se izognes neprijetnostim s presledki v imenih datotek.
christooss ::
Hja problem, ki se sedaj ustvarja je, da so te .lit datoteke poimenovane po avtorjih in knjigah, kar pomeni, da bi mogel najprej dobiti ime datoteke, ki bi ga lahko uporabil kot basename. Tako tudi odpade način for bla in *.lit. Saj če pravilno zastopim to pač naj bi pogledal "serijsko številko" datoteke, če bi bile poimenovane takole imedatoteke1.lit imedatoteke2.lit
Zakaj je nebo modro? Da imamo lahko sladoled Modro Nebo
christooss ::
:) se opravičujem za nepostanje prej :)
Sir Arthur Conan Doyle - Round the Red Lamp.lit
Sir Arthur Conan Doyle - The Captain of the Polestar & Other Tales.lit
Sir Arthur Conan Doyle - The New Revelation.lit
Sir Arthur Conan Doyle - Round the Red Lamp.lit
Sir Arthur Conan Doyle - The Captain of the Polestar & Other Tales.lit
Sir Arthur Conan Doyle - The New Revelation.lit
Zakaj je nebo modro? Da imamo lahko sladoled Modro Nebo
BigWhale ::
$ basename Sir\ Arthur\ Conan\ Doyle\ -\ Round\ the\ Red\ Lamp.lit .lit
Sir Arthur Conan Doyle - Round the Red Lamp
$
Da bos vedel kaj naredi basename... :)
for bla in *.lit
do
echo $bla
done
Pa da vidis kaj naredi for bla in *.lit :)
potem pa naredi se tole:
for bla in *.lit
do
lala=`basename "${bla}" .lit`
echo ${lala}
done
Bolj jasno zdaj? Tisti moj primer je kar delujoc bi rekel...
PS:
basename "Sir Arthur Conan Doyle - Round the Red Lamp.lit" .lit
Sir Arthur Conan Doyle - Round the Red Lamp
Tudi tole deluje, se ve....
Sir Arthur Conan Doyle - Round the Red Lamp
$
Da bos vedel kaj naredi basename... :)
for bla in *.lit
do
echo $bla
done
Pa da vidis kaj naredi for bla in *.lit :)
potem pa naredi se tole:
for bla in *.lit
do
lala=`basename "${bla}" .lit`
echo ${lala}
done
Bolj jasno zdaj? Tisti moj primer je kar delujoc bi rekel...
PS:
basename "Sir Arthur Conan Doyle - Round the Red Lamp.lit" .lit
Sir Arthur Conan Doyle - Round the Red Lamp
Tudi tole deluje, se ve....
Zgodovina sprememb…
- spremenil: BigWhale ()
christooss ::
Se opravičujem. Rookie mistake. Ker nisem vedel, da
basename = '.....'
ni isto kot
basename='......'
Jao jao. Sicer pa hvala. Če bo mogoče koga zanimal skripta izgleda takole, ker fora je bila, da clit ni pravilno (beri meni logično) spreminjal imen direktno:
for bla in *.lit
do
base=`basename "${bla}" .lit`
clit "${bla}" test/
done
cd test/
for blabla in *.htm
do
base=`basename "${blabla}" .htm`
html2ps "${base}.htm" > "${base}.ps"
ps2pdf "${base}.ps" "${base}.pdf"
done
basename = '.....'
ni isto kot
basename='......'
Jao jao. Sicer pa hvala. Če bo mogoče koga zanimal skripta izgleda takole, ker fora je bila, da clit ni pravilno (beri meni logično) spreminjal imen direktno:
for bla in *.lit
do
base=`basename "${bla}" .lit`
clit "${bla}" test/
done
cd test/
for blabla in *.htm
do
base=`basename "${blabla}" .htm`
html2ps "${base}.htm" > "${base}.ps"
ps2pdf "${base}.ps" "${base}.pdf"
done
Zakaj je nebo modro? Da imamo lahko sladoled Modro Nebo
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | Powershell primerjaj in kopirajOddelek: Programiranje | 1046 (683) | Blisk |
⊘ | Aspie test (strani: 1 2 )Oddelek: Loža | 13858 (8002) | Mavrik |
» | Bralniki e-knjig (strani: 1 2 )Oddelek: Strojna oprema | 14556 (9632) | Matev |
» | Amazon Kindle (strani: 1 2 )Oddelek: Novice / Ostale najave | 7147 (5800) | JayKay |
» | dobra knjigaOddelek: Sedem umetnosti | 1961 (1737) | Yossarian |