Haluan näyttää tekstitiedoston sisällön komentorivillä. Tiedosto sisältää vain 5-6 merkkiä. Onko tähän helppo tapa?
Vastaa
Käyttämällä cat
Koska tiedosto on lyhyt, voit käyttää cat
.
cat filename
less
Jos haluat tarkastella pidemmän tiedoston sisältöä, voit käyttää hakulaitetta kuten less
.
less filename
Voit saada less
käyttäytymään kuten cat
, kun sitä kutsutaan pienille tiedostoille, ja käyttäytyä normaalisti muulla tavalla välittämällä se -F
– ja -X
-liput.
less -FX filename
Minulla on aliaksenimelle less -FX
. Voit tehdä sellaisen itse näin:
alias aliasname="less -FX"
Jos lisäät aliaksen -kuoren kokoonpanoon , voit käyttää sitä ikuisesti.
Käyttämällä od
Jos tiedosto sisältää outoja tai tulostamattomia merkkejä, voit käyttää od
merkkien tutkimiseksi. Esimerkiksi
$ cat file (ÐZ4 ?o=÷jï $ od -c test 0000000 202 233 ( 320 K j 357 024 J 017 h Z 4 240 ? o 0000020 = 367 \n 0000023
kommentit
Vastaa
Vaikka kaikki käyttävät cat filename
-tulostusta tiedostotekstin vakiolähtöön, ensimmäinen tarkoitus on con kissa . Kissan käsisivulta:
kissa – ketjuta tiedostot ja tulosta vakiotulostukseen
Nyt kissa sopii tiedostojen tulostamiseen, mutta on olemassa vaihtoehtoja:
echo "$(<filename)" or printf "%s" "$(<filename)"
Paluu ( )
lausekkeen arvo, tässä tapauksessa tiedostonimi , jota sitten laajennetaan $
-merkillä echo
tai printf
.
Päivitys:
< filename
Tämä tekee juuri sen mitä haluat ja on helppo muistaa.
Tässä on esimerkki, jonka avulla voit valita tiedoston valikosta ja tulostaa sen sitten.
#!/bin/bash select fname in *; do # Don"t forget the "" around the second part, else newlines won"t be printed printf "%s" "$(<$fname)" break done
Lisätietoja lukeminen:
BashPitfalls – kissatiedosto | sed s / foo / bar /> tiedosto
Bash-viite – uudelleenohjaus
Kommentit
- Päivityksesi: ”
< filename
on täsmälleen wh haluamallasi tavalla … ” on harhaanjohtava. Kaiken kaikkiaan, vaikka tämä on mielenkiintoinen keskustelu vaihtoehdoista, mielestänicat
on yksinkertaisempi. - Paljas
< filename
ei näyttää tiedoston sisällön, muttacat filename
näyttää. - Voit käyttää myös
tee < filename
. - +1
echo "$(<filename)"
-basismille. Ei tässä tarpeeksi. - Tuo ’ loistava idea käyttää Linuxin sisäistä komentoa echo
"$(<filename)"
kanssa. Kiitos …
Vastaus
Työkalut tekstitiedostojen käsittelemiseen unix-ohjelmassa ovat perustavanlaatuisia jokapäiväisiä komentoja:
Unix- ja Linux-tiedostoissa koko sisällön tulostamiseksi tiedostosta
cat filename.txt
tai
more filename.txt
tai
less filename.txt
Muutamalle viimeiselle riville
tail filename.txt
muutama ensimmäinen rivi
head filename.txt
Vastaa
Voit näyttää sisältöä seuraavalla komennolla tekstitiedostosta.
cat filename
Kommentit
- Lisätietoja
cat
, suoritaman cat
.
Vastaa
Yksi vaihtoehto on käyttää more
esim.more file.txt
Siinä ei kuitenkaan ole kaikkia ominaisuuksia, jotka less
on lisännyt.
Yksi yksinkertainen esimerkki on, että et voi ”t vierittää varmuuskopiota lähdössä. Yleensä se on ylitetty vähemmän – mikä nimettiin vitsissä, koska
vähemmän on enemmän
Kommentit
- Hieno selitys miksi nimi oli vähemmän
vastaus
Käytän aina $ less "your file here"
, koska se on hyvin yksinkertaista, tarjoaa sisäänrakennetun interaktiivisen grep
-komennon ja antaa sinulle helppokäyttöisen käyttöliittymän, jota voit vierittää nuolinäppäimillä.
(Se sisältyy myös melkein jokaiseen * nix-järjestelmään)
Kommentit
-
less
onmore
(vertaaman less
jaman more
), ja minulla on kaksi ärsyttävää ominaisuutta: 1) se vaihtaa vaihtoehtoiseen näyttöpuskuriin, kun vähemmän loppuu, juuri katselemasi tiedosto katoaa. 2) EOF: ssä sinun on kirjoitettava nimenomaisestiq
(tiedän, siellä ’ s vaihtoehto tähän). Joten yksi ensimmäisistä toimistani uudessa ympäristössä onexport PAGER=/bin/more
asettaminen profiiliini ja käyttäämore
koko ajan. - @ ott–: 1) Kokeile lippua
-X
. 2) Kokeile lippua-E
.less
on emulointitilamore
. Voit ottaa sen käyttöön asettamalla ympäristömuuttujanLESS_IS_MORE
. Voit vierittää ylöspäinmore
-emulointitilassa. - Katso myös: unix.stackexchange.com/questions / 81129 / …
- Olen yleensä samaa mieltä siitä, että
less
on liian monimutkainen. Sen kyky suorittaa ulkoisia komentoja on täydellinen esimerkki sen liian monimutkaisesta. - @EvanTeitelman I ’ olen aina pitänyt grep-toimintoa erittäin hyödyllisenä, @ott – Huomaan, että sen takia ’ emuloi
more
ja ’ s monia lisäominaisuuksia, se tekee työn erittäin hyvin.
Vastaa
Jos sen tiedosto on suuri, ja haluat hakea jostakin tietystä osasta, voit käyttää
cat filename | grep text_to_search -ni
Voit myös käyttää interaktiivisempaa Vim-editoria (tai vi-editoria, jos sinulla ei ole Vim-tiedostoa):
vim filename Or vi filename
Vim / vi on loistava editori, sitä voidaan käyttää myös lukijana normaalitilassa tai -R-vaihtoehdon avulla, sillä on monia ominaisuuksia, jotka auttaa sinua selaamaan tiedostoa.
Kommentit
- Lyhyempi nimikkeelle
vim -R
onview
. Mutta pidä mielessä, että se ei pidä uudelleenohjauksista, kuten xargs ja vi – ”Tulo ei ole päätelaitteesta” on käsitelty. - kiitos @manatwork for heads up! Olen äskettäin alkanut käyttää Vimiä ja pidän siitä useiden ominaisuuksien takia. Uudelleenohjausten osalta unohdin sen, kiitos muistutuksesta. Työskentelen toistaiseksi virtuaalikoneella, jossa käytän ssh: tä ilman käyttöliittymää, joten Vimillä on suuri hyöty, kun mikään muu GUI-editori ei toimi, ’ s miksi korostin Vimiä tässä.
Vastaa
Näytä tiedostonimen sisältö kissa-komennolla. kissan tiedostonimi
Muokkaa tiedostoa komennolla vim. vim-tiedostonimi
sed -n l file
voisi olla hyödyllinen.less
selkeitä etuja muihin hakulaiteohjelmiin, kutenpg
vai onko se vain henkilökohtaisten mieltymysten mukaista?less
on enemmän ominaisuuksia kuinpg
. Katsoless(1)
japg(1)
-sivut. On myös muita hakijoita. Katso unix.stackexchange.com/questions/81129/… .less
on todennäköisesti yleisimmin käytetty hakulaite, mutta käyttämäsi hakulaite riippuu henkilökohtaisista mieltymyksistä.more
jamost
!