”Puu” -komento käyttää hienoja laatikkopiirteitä puun näyttämiseen, mutta haluan käyttää tulosta ”koodisivunneutraalissa” kontekstissa (tiedän, että siellä on aina koodisivu, mutta rajoittamalla sen vain alempiin merkkeihin toivon, että en ole huolissasi siitä, että joku Ulan Batorissa näkee hymiöitä jne.).
Esimerkki:
├── include │ ├── foo │ └── bar
Pidän seuraavasta:
+-- include | +-- foo | \-- bar
mutta mikään kokeilluista ”puu” -kytkinyhdistelmistä ei antanut tätä (näyttää siltä, että he ottavat laatikkopiirustuksen lähtötasoksi ja tekevät siitä vielä kauniimman)
Minä myös Etsin laatikko-piirtosuodattimia tällaisten muunnosten tekemiseksi löytämättä mitään loputtoman määrän ASCII-taidetta :-). Yleissuodatin haisee kuin jotain, joka on kypsennettävä 15 minuutissa – plus kaksi lisäpäivää, jotka kompastuvat kaikkiin huvittaviin kulmatapauksiin 🙂
Kommentit
- Kiitos kysymyksestä. Tarvitsin tätä, jotta voisin viedä puun tuloksen enkurssiin saadaksesi tulosteen muotoilun tarkistuksen (käyttämällä dprint / dprintm-tiedostoa duplexpr-paketistani sourceforge.net/projects/duplexpr/. )
Vastaa
En ole varma tästä, mutta mielestäni kaikki mitä tarvitset on
tree | sed "s/├/\+/g; s/─/-/g; s/└/\\/g"
Esimerkki:
$ tree . ├── file0 └── foo ├── bar │ └── file2 └── file1 2 directories, 3 files $ tree | sed "s/├/\+/g; s/─/-/g; s/└/\\/g" . +-- file0 \-- foo +-- bar │ \-- file2 \-- file1 2 directories, 3 files
Vaihtoehtoisesti voit käyttää --charset
vaihtoehto:
$ tree --charset=ascii . |-- file0 `-- foo |-- bar | `-- file2 `-- file1 2 directories, 3 files
Kommentit
- Siellä ' ei GNU
tree
, siellä ' s ei Unixiatree
, siellä ' ei ole POSIXiatree
. Ainoatree
toteutus I ' m tietoinen on mama.indstate.edu/users/ice/puu . - @StephaneChazelas kiitos, joten
--charset
-vaihtoehto pitäisi aina olla saatavilla. Vastaus muokattu. - Loistava! (etenkin sed-versio – minulle sed on villi maa awk-rajan takana)
- Pidän puusta –charset = ascii, kiitos
- Itse mielestäni
--charset
-vaihtoehto tulee mainita ensin – vaihtoehto, joka käyttääsed
-ohjelmaa, on opettavainen, mutta monimutkaisempi …
vastaus
Entä tree --charset unicode
?
|-- boot_print | |-- config-2.6.32-5-amd64 | |-- grub | | |-- 915resolution.mod | | |-- acpi.mod | | |-- affs.mod | | |-- afs_be.mod | | |-- afs.mod | | |-- aout.mod | | |-- ata.mod | | |-- ata_pthru.mod | | |-- at_keyboard.mod | | |-- befs_be.mod | | |-- befs.mod | | |-- biosdisk.mod | | |-- bitmap.mod | | |-- bitmap_scale.mod | | |-- blocklist.mod | | |-- boot.img
kommentit
- että ' on sama kuin
tree --charset nwildner
- Yup. Toista vastausta muokattiin niin, en ´ huomannut, että @terdon antoi täydellisemmän vastauksen, kun kirjoitan omaa;)