# Dokumente mit openoffice immer im read-only modus öffnen?

## michel7

Ist es eigentlich möglich openoffice-3.1 so einzustellen, dass die .DOC dateien immer read-only geöffnet werden?

----------

## 69719

Ich denke nicht, aber ein

```
chmod 444 *.doc
```

sollte dein Problem lösen.

----------

## schachti

 *escor wrote:*   

> Ich denke nicht, aber ein
> 
> ```
> chmod 444 *.doc
> ```
> ...

 

Zum einen funktioniert das nicht auf Dateisystemen, die Zugriffsrechte nicht unterstützen, zum anderen kann es auf allen anderen Dateisystemen ungewollte Leserechte einräumen. Wenn schon, dann

```
chmod a-w *.doc
```

----------

## Finswimmer

Jo. Ich denke auch ein Wrapper für die .doc Dateien ist das Beste:

#!/bin/bash

chmod a-w $1 && oowriter $1 && chmod a+w $1

----------

## schachti

Du solltest das Argument quoten, sonst gibt es Probleme mit Dateinamen, die Leerzeichen enthalten:

```

#!/bin/bash

chmod a-w "$1" && oowriter "$1" && chmod a+w "$1"

```

Außerdem sollte man sich stattdessen die "alten" Zugriffsrechte abspeichern und später wieder setzen, anstatt jedem zu erlauben, die Datei zu schreiben (und das sollte immer passieren, und nicht nur dann, wenn oowriter ohne Fehler beendet wird). Auf die Schnelle weiß ich nicht, wie man die Zugriffsrechte leicht ausliest, daher vielleicht dieser Workaround:

```

#!/bin/bash

OLD=$(mktemp --tmpdir=$(pwd)) || { echo "$0: creation of temporary file failed!"; exit 1; }

cp -p "$1" "${OLD}"

chmod a-w "$1"

oowriter "$1"

chmod --reference="${OLD}" "$1"

rm -f "${OLD}"

```

Und dabei taucht noch das Problem auf, dass oowriter (zumindest hier unter openSUSE 11.1) zu früh terminiert...

----------

## schachti

Argh, man sollte, bevor man sich Mühe gibt, die man page lesen:

```

       -view filename

              Creates a temporary copy of the given file and opens it read-only.

```

Also einfach

```

oowriter -view DATEI.DOC

```

----------

## michel7

 *schachti wrote:*   

> Argh, man sollte, bevor man sich Mühe gibt, die man page lesen:
> 
> Also einfach
> 
> ```
> ...

 

Super! Das ist exakt die Lösung, die ich gesucht habe! Danke!

P.S: ich bin vorhin auch auf die command line options gestoßen, muss aber wohl die -view option übersehen haben. Man sieht den Wald vor lauter Bäumen nicht ;-)

----------

