En ole laittanut mitään Kemut, ja se on, että kun pääsen Pythonin ihmeelliseen maailmaan, olen unohtanut hieman tämän toisen ystävän, joka auttoi minua niin paljon 🙂
Tässä minä laitoin jotain Bash-harrastajille, kuten otsikossa sanotaan ... Näytän sinulle, kuinka voit tarkistaa, onko järjestelmässä tiedosto tai kansio, vain käyttämällä: if
Aiomme luoda .sh-tiedoston ja antaa sille suoritusoikeudet, tähän riittää, että seuraava komento laitetaan päätelaitteeseen:
kosketustesti.sh && chmod + x test.sh
Tämä loi tiedoston (kosketustesti. sh) ja antaa sinulle myös käyttöoikeudet (chmod + x testi.sh)
Kirjoita sitten siihen seuraava:
if [ -d /opt/ ];
then
echo "Sí, sí existe."
else
echo "No, no existe"
fi
Mitä tämä tekee?
Yksinkertainen 😀
Ensimmäisellä rivillä - » jos [-d / opt /];
Tässä kysytään, onko / opt / hakemisto olemassa? Kyllä hakemisto / kansio, koska -d tarkoittaa hakemistoa tai kansiota.
Sitten, jos se on olemassa, tulostamme päätelaitteeseen «Kyllä, se on olemassa.»(Tämä on rivi 2 ja 3)
Muuten ja / opt / EI ole olemassa, niin tulostamme «Ei sitä ei ole olemassa»(Rivit 4 ja 5)
Sitten viimeisellä rivillä (numero 6) suljetaan if ja siinä kaikki.
Tee testi, se näyttää, että / opt / on olemassa.
Jos haluat minun näyttävän sinulle toisen tekstin (sen, jota ei ole), vaihda / opt / jollekin muulle kansiolle, jota ei ole järjestelmässäsi, esimerkiksi: / asd /
Kuten näette, -d auttaa meitä selvittämään, onko hakemisto olemassa, ja nyt, jos muutamme -d arvoksi -f, tarkistetaan tiedostot (-d = hakemisto, -f = tiedosto / tiedosto)
Esimerkiksi:
if [ -f /etc/hosts ];
then
echo "Sí, sí existe."
else
echo "No, no existe"
fi
Tässä on luettelo vaihtoehdoista:
-d - »Tarkista, onko tietty hakemisto olemassa
-f - »Tarkista, onko tietty tiedosto olemassa
-w - »Tarkista, onko tietyllä tiedostolla kirjoitusoikeuksia
-x - »Tarkista, onko tietyllä tiedostolla suoritusoikeudet.
Ja ei ole paljon muuta lisätä 🙂
Tiedän, että tämä on erittäin hyödyllistä ja mielenkiintoista niille, jotka haluavat ohjelmoida Bashissa 😉
terveiset
Toinen tapa tehdä se ilman, jos… sitten .. muu:
test -f /etc/hosts && elcomando
Tai myös
test ! -f /etc/hosts && echo "no se encontró el archivo"
Jne.
Oikea 😀
… O_O ... Oletko Hugo, Hugo Kuubasta? … Windows8: n, WTF: n käyttö !!!
Kyllä, olen tutustumassa tähän käyttöjärjestelmään, ja jos minun on oltava rehellisiä, ainoa asia, jonka olen löytänyt hyödylliseksi, on kopiohallinta, muuten pidän sitä henkilökohtaisesti tuskana, varsinkin sen hybridiliitännässä ja metrosovelluksissa. Pidän siitä vähemmän kuin Vista ja 7 (vaikkakin vähän tehokkaampia kuin nämä), joista en pidäkään. Ainoa asia, johon käytän sitä, on NFS13: n ja Skyrimin pelaaminen, mutta tämä käyttöjärjestelmä vie niin paljon tilaa, että jouduin poistamaan Linux-osioni [snif].
Mielenrauhan vuoksi kerron kuitenkin, että toissapäivänä ladasin Arch ISO tammikuulle ja aion antaa sille maun sen x86-64-versiossa heti, kun saan repon (onko sinulla sitä?). Nyt kun näin, että se käyttää oletuksena allekirjoitettuja paketteja, se antaa minulle enemmän itseluottamusta sukellukseen.
Ja isäni kertoi minulle, että hän lähetti minulle Sony Xperian, jota haluan hyödyntää oppiakseni jonkin ohjelmoinnin Androidille, mikä oli odottava toive. Joten rauhoittu, en ole vielä mennyt voiman pimeälle puolelle, buahahahaha 😉
ihmisen testi
Toki.
Wenas! ..
Voisimme tehdä saman .. .. mutta hakemisto välitetään parametrina ..
if [ -d $1 ];
then
echo "Sí, sí existe."
else
echo "No, no existe"
fi
Ja kutsumme sitä nimellä:
./test.sh / opt /
Tervehdys..
IF ei ole sykli xD
Se sopii minulle kuin käsine käsikirjoitukselle, jota teen. Onko pätevää käyttää jokerimerkkejä? Esimerkiksi, jos haluat tietää, onko .mp4-tiedostoja, suorita sitten jotain niillä.
jos [-f * .mp4];
...
Kyllä, se on täysin pätevä ..
Jopa parametrien kautta .. "* .mp4"
Esimerkiksi
if [ -f $1 ];
then
rm -r $1
else
ls
fi
Jos kutsut sitä: ./test.sh * .mp4
Jos se löytää .mp4-tiedostoja, se poistaa ne ... ... mutta siinä ei luetella tiedostoja siinä hakemistossa ...
Kiitos palautteesta ja vinkeistä! 🙂
Kaipaat f xD: tä
rm -rf $ 1
Tämä on jännittävämpää!
Ihana !!!, Joka päivä rakastun enemmän Linuxiin, Windows on siirretty kiintolevyn pimeään kulmaan, joka on pyyhkimässä, jotta pääset Linuxin valolle.
Erinomainen! .. ..Sitten ota seuraava askel .. ja ota se ulos.
6 kuukautta sitten noin. Minulla on vain GNU / Linux kaikilla koneillani, enkä tarvitse enempää .. ..ei W $ .. tai Viiniä .. ..ja olen enemmän kuin onnellinen tuollainen .. 😉
Ja tartun ympäristöni .. koska he kaikki näkevät minut Archillani, nopeaa, tehokasta ja onnellista .. ..ja he pyytävät minua asentamaan Linuxin .. ..joo! .. ..
Voit myös tarkistaa ne erilaisista laajennuksista, voit käyttää jotain
#! / Bin / bash
Hakemisto = $ HOME / Lataukset
jos [$ hakemisto]; sitten
echo "Tässä on luettelo tiedostotyypeistä:"
kaiku "mp1, mp2, mp3, mp4, wav, flac, flaad, aud, midi"
ls {* .mp ?, *. wav, *. fla, *. aud * .midi}
fi
Käyttämällä {} voit määrittää tässä tapauksessa useita laajennuksia käyttämällä "?" , on jokerimerkki, jonka avulla voit käyttää mitä tahansa merkkiä.
Toivon, että se auttaa sinua
Suosittelen komentoa etsi [hakemisto] [hakukuvio] - exec [komento] {} \
Se ei toimi, laitoin nämä tiedostot hakemistoon:
AB20160420.TXT
AB20160421.TXT
AB20160422.TXT
AB20160423.TXT
AB20160424.TXT
AB20160425.TXT
haku.sh
#! / Bin / bash
PATH = / tmp / TESTI
cd $ REITTI
ls -la | awk '{print »« $ 9}'
jos [[-f AB.TXT]]; sitten
echo »Syötä IF, jos AB: tä on.TXT »
fi
jos [-f AB20160422.TXT]; sitten
echo "tietyn AB-tiedoston syöttö"
fi
kun laitoin [-f AB.TXT] antaa virheen
kun laitoin [[-f AB.TXT]] ei anna virhettä, mutta ei löydä tiedostoa
se toimii vain, kun laitan tietyn tiedoston, esimerkiksi:
jos [-f AB20160422.TXT]; sitten
En voi saada sitä toimimaan jokerimerkkien * kanssa?
#! / usr / bin / env bash
#.koodaus = utf-8.
JATKUVAT
EXIT_OK = 0
EXIT_BAD = 66
Lihavoitu = »\ 033 [1m»
NC = »\ 033 [0m»
PUNAINEN = »\ 033 [31m»
jos [! "$ 1"];
sitten
echo "puuttuu parametri"
poistu $ EXIT_BAD
fi
CD "$ 1"
tiedostot = »ls -h1 $ 1»
tiedostolle tiedostossa $ ($ tiedostot); tehdä
echo -e "voit tehdä mitä tahansa $ BOLD $ -tiedostolla $ nc täällä"
tehty
poistu $ EXIT_OK
@KZ, kerro lisää tästä: "Ja se johtuu siitä, että menen Pythonin ihmeelliseen maailmaan"!
HAHAHAHA nah ... vähitellen 🙂
Olen edelleen vasta aloittelija Pythonissa, minulla on tuskin aikaa omistaa sille tunteja, joten olen hidas kyllä, hidas, mutta varma oppimisessani 😀
Paljon kiitoksia 😀 juuri eilen ajattelin miten se tehdään.
tämä ncursesilla on hieno 🙂
yhdellä sanalla ... Erinomainen!
Kehitin pitkään komentosarjaa ladatakseni Internetistä, mutta minulla oli ongelma, että se latasi pyytämänsä tiedostot 1 ja uudelleen ilman, että pystyin varmistamaan 1ro: n olemassaolon.
Erittäin hyvä tuto.
Valtava panos täällä Chilessä arvostetaan.
Joka päivä lisää LINUX yllättää minut miellyttävästi,
Eläköön ilmainen ohjelmisto MIERDAAAA.
palvella
tarkista onko tiedosto hakemistosta
Jos haluan tarkistaa minkä tahansa tiedoston olemassaolon polussa «/ tmp / vastaanottimet», suorita mikä tahansa komento, miten se olisi?
Olen hyvin kiitollinen
terveiset
Hyvä, ja selvittää IF: n avulla, onko tiedosto täysin täytetty ???. Kysyn tämän, koska kun täytät tiedostoa lähetystä varten, se voi viedä sen jopa puolella tiedoista.
Terveisiä ja kiitos vastauksestasi.
Luulen, että sinun pitäisi myös lisätä esimerkki, kuten "Tarkista, ettei" tiedostoa "tai" hakemistoa "ole, kuten esimerkiksi
tarkista, että sitä EI ole, käytä esimerkiksi muuttujaa->
Hakemisto
#! / Bin / bash
Hakemisto = »$ HOME / Testihakemisto»
Tiedosto = »$ HOME / Testitiedosto»
jos [! -d "$ hakemisto"]; sitten
kaiku "$ hakemistoa ei ole"
kaiku "Luominen ->" $ hakemisto "
mkdir "$ hakemisto"
muu
echo "Hakemisto" $ Directory "on jo olemassa
fi
jos [! -d "$ tiedosto"]; sitten
echo "Tiedostoa $ ei ole olemassa"
echo "Luonti ->" $ tiedosto "
kosketa "$ File"
muu
echo "Tiedosto" $ File "on jo olemassa
fi
kun teet mkdir: n, tarkista myöhemmin, voiko pääte luoda sen, koska se voi rikkoa pallot, jos se on kansio juurena tai järjestelmänä hhah
Terveisiä KZKG ^ Gaara kysely kuten tekisin kiharan käyttämiseksi. Haluaisin tietää, miten voin konsolista pingata URL-osoitetta nähdäksesi, onko se esimerkiksi käytettävissä http://portal.com/directorio/archivo1.php Jos tiedosto1 tallentaa vierailun IP-osoitteet, minun on tehtävä tiimi seurantaan, että PIN-koodi tehdään puolen tunnin välein, jotta olen tietoinen julkisesta IP-osoitteesta, koska se muuttuu aika ajoin ja en voi muodostaa yhteyttä ssh: llä .
Terveiset kiitos etukäteen Jumala siunatkoon sinua.
Hei Sellaisena
Ensinnäkin sinun on sanottava, että IP-muuttuja (esimerkiksi) on kyseisen tiedoston sisältö, jota varten sinun on:
1. Lataa tiedosto
2. Katso sen sisältö ja hae IP sieltä
3. IP on muuttuja
Esimerkiksi:
Täältä lataamme tiedoston - »wget http://portal.com/directorio/archivo1.php -o tiedosto.html
Sitten osoitamme muuttujalle sen sisällön: - »: $ {IP: =` kissatiedosto.html`}
.. olettaen, että tiedoston sisällöllä on vain IP, jos ei, joudut työskentelemään grep: n, awk: n tai head: n kanssa.
Kun sinulla on IP muuttujana, loput ovat yksinkertaisin asia maailmassa 🙂
Jos haluat, kirjoita minulle sähköpostitse (kzkggaara[at]desdelinux[dot]net) Autan sinua mielelläni
Paljon kiitoksia kzkggaara erittäin kiitollinen.
Hei, en ymmärrä paljon laskennasta, enkä tiedä, liittyykö tämä viesti minuun liittyvään ongelmaan.
Kommentoin, jos luet minut, vaikka viesti on vuodelta sitten:
On käynyt ilmi, että olen luonut työpöydällesi kansion tallentaa videoita. Poistin nuo videot, koska en enää tarvinnut niitä, ja nyt tämä kansio kertoo minulle, ettei sitä ole olemassa (vaikka se näkyy työpöydälläni).
- Tämä on ensimmäinen ongelma, joka minulla on:
En voi poistaa kansiota.
- Toinen ongelma ja mielestäni tärkeämpi:
Yritin poistaa kansion, laitoin PHOTOS-kansion. Nyt kun avaan kansion, jota "ei ole olemassa", se on tyhjä eikä VALOKUVAT ole siellä.
Kuinka voin palauttaa valokuvat? Olen antanut vaihtoehdon "Näytä piilotetut asiakirjat" -kansiossa, mutta PHOTOS-kansio ei tule näkyviin.
Toivon, että tiedät miten se on ratkaistu.
Kiitos.
Pääkäyttäjiä on kaksi: root ja käyttäjän_käyttäjä (esimerkiksi natalia). Heillä molemmilla on henkilökohtaiset kansiot. käyttäjän_käyttäjä / home ja juuret / (juurihakemistossa). Napsauttamalla kansiota hiiren kakkospainikkeella näet kenelle se kuuluu. Jos tiedosto on pääkäyttäjänä tiedostohallinnossasi sudo, gksu tai kdesu, käytettävästä ympäristöstä riippuen, mene juurihakemistoon -> root -> Työpöytä ja löydät todennäköisesti valokuvat ja voit poistaa kansion. Jotkut distrot, kun et ole tiedoston tai hakemiston omistaja ja sinulla ei ole käyttöoikeuksia, kertovat hakemistoa / tiedostoa. Jos olet omistaja etkä ole root, tee sama tiedostohallinnan kanssa sudo: lla jne. Ja siirry juurihakemistoon -> / home -> personal_folder -> Desktop ja katso, ovatko valokuvat siellä ja voitko poistaa kansion.
Jos tämä ei toimi, joudut näkemään muita vaihtoehtoja päätelaitteesta (konsolista).
Hei, miten menee? Teen työtä bashissa ja haluaisin tietää, kuinka tarkistaa esimerkiksi onko näppäimistöltä syötetty hakemisto
#! / Bin / bash
lue reitti
#Syötä ~ / Työpöytä
# Sitten yritän navigoida hakemistossa
cd $ polku
# Saan seuraavan bash-viestin: cd: ~ / Desktop: Tiedostoa tai hakemistoa ei ole olemassa
Kysymykseni on, mitä voin tehdä niin, että kirjoitan sen näppäimistöltä ja otan sen hakemistopoluksi?
Ja mistä tiedän onko ryhmä olemassa,
hyvä Minulla on ongelma kanamassani, kun painan cunaguaro-painiketta, siinä sanotaan, että tiedostoa tai hakemistoa ei ole, koska se tekisi ongelman ratkaisemiseksi, ja loput eivät avaa cunaguaroa, kiitos.
Kuinka teet jos BASH: ssa, jos tiedostonimessä on välilyöntejä?
Esimerkiksi:
Huhtikuun tiedot.xlsx
Kysyä onko tiedosto olemassa
Carlos, näin:
jos [["$ muuttuja" == Data \ kuukausi \ huhtikuu.xlsx]]; sitten kaiku 'ottelu'; fi
Voit myös:
jos [["$ variable" == 'Huhtikuun tiedot.xlsx']]; sitten kaiku 'ottelu'; fi
Toinen vaihtoehto:
[["$ Variable" == 'Huhtikuun tiedot.xlsx']] && echo 'ottelut' || kaiku 'ei täsmää'
Joillakin Internetin pimeillä alueilla he suosittelevat [[]]: n käyttämistä []: n kanssa, ja jos aiot verrata lukuja, ((muuttuja> = 3)) && echo '-muuttuja on suurempi tai yhtä suuri kuin 3' || echo 'muuttuja on alle 3'
Siksi numeroille:
jos ((luku! = 4)); sitten kaiku "$ {numero} ei ole 4"; muuten kaiku "$ {number} on 4"; fi
kuinka voit tehdä koodin tarkistettavaksi, jos hakemistossa on tietty teksti, jotta voit muokata sitä.
esimerkiksi:
jos (teksti1)
Älä tee mitään
muu
muuta teksti1 tekstiksi2
Kysymys, kuinka minun olisi tarkistettava 15 sekunnin välein, onko tiedosto olemassa, kiitos.
Hei,
Tämä:
if [-w / koti / Komun / Lokit / ti]; sitten
Selvitä, onko tiedosto kirjoitettavissa. Mutta se perustuu käyttäjien oikeuksiin. Voidaanko selvittää, onko ryhmällä tai muilla käyttöoikeudet?