Unë nuk kam vënë asgjë nga Përplas, dhe është se kur jam duke hyrë në botën e mrekullueshme të Python kam harruar pak për këtë mik tjetër që më ndihmoi aq shumë
Këtu u vë diçka entuziastëve të Bash, siç thotë titulli ... Unë do t'ju tregoj se si të kontrolloni nëse ekziston apo jo një skedar ose dosje në sistem, thjesht duke përdorur: if
Ne do të krijojmë një skedar .sh dhe do t'i japim asaj leje ekzekutimi, për këtë mjafton të vendosni komandën e mëposhtme në një terminal:
provë prekje.sh && chmod + x provë.sh
Ajo që bëri kjo është krijimi i skedarit (provë prekëse.sh) dhe gjithashtu t'ju japë leje ekzekutimi (provë chmod + x.sh)
Atëherë le të shkruajmë sa vijon në të:
if [ -d /opt/ ];
then
echo "Sí, sí existe."
else
echo "No, no existe"
fi
Çfarë bën kjo?
E thjeshtë
Në rreshtin e parë - » nëse [-d / opt /];
Këtu pyesim, a ekziston direktoria / opt /? Po direktori / dosje, sepse -d do të thotë direktori ose dosje.
Pastaj në rast se ekziston ne do të shtypim në terminal «Po, ekziston vërtet.»(Kjo është linja 2 dhe 3)
Përndryshe dhe / opt / NUK ekziston, atëherë ne do të shtypim «Jo nuk ekziston»(Rreshtat 4 dhe 5)
Pastaj në rreshtin e fundit (numri 6) mbyllim if-in dhe kaq.
Bëni provën, do t'ju tregojë se / zgjedhni / ekziston.
Nëse dëshironi që unë t'ju tregoj tekstin tjetër (ai që nuk ekziston) ndryshoni / zgjedhni / për çdo dosje tjetër që nuk ekziston në sistemin tuaj, për shembull: / asd /
Siç mund ta shihni, -d na ndihmon të dimë nëse drejtoria ekziston, mirëpo nëse ndryshojmë -d në -f është për të kontrolluar ekzistencën e skedarëve (-d = drejtori, -f = skedari / skedari)
Për shembull:
if [ -f /etc/hosts ];
then
echo "Sí, sí existe."
else
echo "No, no existe"
fi
Këtu është lista e opsioneve:
-d - »Kontrolloni nëse ekziston një direktori e caktuar
-f - »Kontrolloni nëse ekziston një skedar i caktuar
-w - »Kontrolloni nëse një skedar i caktuar ka leje shkrimi
-x - »Kontrolloni nëse një skedar i caktuar ka leje ekzekutimi.
Dhe mirë, nuk ka shumë më shumë për të shtuar
E di që kjo do të jetë shumë e dobishme dhe interesante për ata që duan të programojnë në Bash
të fala
Një mënyrë tjetër për ta bërë atë nëse ... atëherë..tjetër:
test -f /etc/hosts && elcomando
Ose gjithashtu
test ! -f /etc/hosts && echo "no se encontró el archivo"
Etj
Djathtas
O_O… A je Hugo, Hugo nga Kuba? … Përdorimi i Windows8, WTF !!!
Epo po, unë jam duke u njohur me këtë sistem operativ dhe nëse duhet të jem i sinqertë, e vetmja gjë që kam parë e dobishme është menaxheri i kopjimit, përndryshe unë personalisht e shoh atë një dhimbje, veçanërisht ndërfaqen e saj hibride dhe aplikacionet e metrosë. Më pëlqen më pak se Vista dhe 7 (megjithëse pak më efikase se këto), të cilat as mua nuk më pëlqyen. Gjithë sa po e përdor është të luaj NFS13 dhe Skyrim, por ky OS merr aq shumë hapësirë sa më është dashur të fshij ndarjen time Linux [snif].
Sidoqoftë, për qetësinë tuaj mendore, do t'ju tregoj se pardje kam shkarkuar Arch ISO për Janar dhe kam në plan ta bëj një provë të vogël në versionin e tij x86-64, posa të marr repon (do ta keni?). Tani që siç e pashë përdor paketa të nënshkruara si parazgjedhje, kjo më jep më shumë besim për t'u zhytur.
Dhe babai im gjithashtu më tha se ai do të më dërgonte një Sony Xperia, të cilin dua të përfitoj për të mësuar disa programe për Android, i cili ishte një dëshirë e pritur. Kështu që qetësohu, unë ende nuk kam shkuar në anën e errët të forcës, buahahahaha
provë njeriu
Sigurt.
Wenas! ..
Ne mund të bëjmë të njëjtën .. ..po drejtoria kalon si një parametër ..
if [ -d $1 ];
then
echo "Sí, sí existe."
else
echo "No, no existe"
fi
Dhe ne e quajmë atë si:
./test.sh / opt /
Pershendetje ..
NESE nuk eshte cikël xD
Më përshtatet si doreza për një skenar që po bëj. A është e vlefshme përdorimi i kartave të egra? Për shembull, për të zbuluar nëse ka .mp4, atëherë ekzekutoni diçka mbi to.
nëse [-f * .mp4];
...
Po, është plotësisht e vlefshme ..
Edhe përmes parametrave .. "* .mp4"
P.sh.
if [ -f $1 ];
then
rm -r $1
else
ls
fi
Nëse e quani: ./test.sh * .mp4
Nëse gjen skedarë .mp4, i fshin ... ... por nuk rendit skedarët në atë direktori ...
Faleminderit për komentet dhe këshillat! 🙂
Ju ka munguar f xD
rm -rf $ 1
Kjo është më emocionuese!
E mrekullueshme !!!, Çdo ditë që dashurohem më shumë me Linux, Windows-i është zhvendosur në një cep të errët të Hard Drive-ut tim, i cili do të fshihet për t'i dhënë rrugë dritës së Linux.
Shkelqyeshem! .. .. atehere hidhni hapin tjeter .. dhe nxirreni jashte ..
6 muaj më parë rreth. Unë kam vetëm GNU / Linux në të gjitha makinat e mia dhe nuk kam nevojë për më shumë .. .. jo W $ .. ose verë .. .. dhe unë jam më se i lumtur kështu ..
Dhe unë po infektoj rrethinat e mia .. meqenëse të gjithë më shohin me Arch-in tim, të shpejtë, efikas dhe të lumtur .. .. dhe ata më kërkojnë të instaloj Linux .. ..po! .. 😀
Ju gjithashtu mund t'i kontrolloni ato për shtesa të ndryshme, mund të përdorni diçka të tillë
#! / bin / bash
Drejtoria = $ HOME / Shkarkimet
nëse [$ Directory]; atëherë
echo "Këtu është një listë e llojeve të skedarëve:"
echo "mp1, mp2, mp3, mp4, wav, flac, flaad, aud, midi"
ls {* .mp ?, *. wav, *. fla, *. aud * .midi}
fi
duke përdorur {} ju lejon të specifikoni shtesa të shumta në këtë rast, përdorimi i "?" , është një kartolinë, e cila ju lejon të merrni "Çdo Karakter".
Shpresoj të të ndihmojë
Unë rekomandoj komandën gjeni [direktoria] [search_pattern] –exec [komanda] {} \
Nuk funksionon, unë i vendos këto skedarë në direktori:
AB20160420.TXT
AB20160421.TXT
AB20160422.TXT
AB20160423.TXT
AB20160424.TXT
AB20160425.TXT
kërko.sh
#! / bin / bash
Rruga = / tmp / TESTI
cd $ Rruga
ls -la | awk '{print ”« $ 9} »
nëse [[-f AB.TEKST]]; atëherë
jehonë »Futni NESE nëse ka ndonjë AB.TEKST "
fi
nëse [-f AB20160422.TXT]; atëherë
echo "input për një skedar specifik AB"
fi
kur vendos [-f AB.TXT] jep gabim
kur vendos [[-f AB.TXT]] nuk jep një gabim por nuk mund ta gjejë skedarin
funksionon vetëm kur vendos një skedar specifik, për shembull:
nëse [-f AB20160422.TXT]; atëherë
Nuk mund ta bëj të punojë me karta të egra * apo?
#! / usr / bin / env bash
#.kodimi = utf-8.
KUSHTETANTT
EXIT_OK = 0
EXIT_BAD = 66
BOLD = »\ 033 [1 milion»
NC = »\ 033 [0 milion»
KUQ = »\ 033 [31 milion»
nëse [! "$ 1"];
pastaj
jehona "mungon një parametër"
dilni nga $ EXIT_BAD
fi
cd "$ 1"
skedarë = »ls -h1 $ 1»
për skedarin në $ ($ skedarë); bëj
echo -e "ju mund të bëni gjithçka me $ BOLD $ skedar $ nc këtu"
e bërë
dilni nga $ EXIT_OK
@KZ, trego më shumë për këtë: "dhe kjo sepse po hyj në botën e mrekullueshme të Python"!
HAHAHAHA nah ... pak nga pak
Unë jam ende vetëm një fillestar në Python, vështirë se kam kohë t'i kushtoj orë dhe orë të tëra, kështu që jam i ngadaltë po, i ngadaltë por i sigurt në mësimin tim ...
Faleminderit shumë ... vetëm dje po mendoja se si ta bëja këtë.
kjo me ncurses eshte e mrekullueshme
me 1 fjale… E SHKELQYER!
Për një kohë të gjatë po përsosja një skenar për të bërë shkarkime nga interneti, por isha përballur me problemin e shkarkimit të skedarëve që kërkova 1 dhe përsëri pa qenë në gjendje të verifikoja ekzistencën 1ro.
Shumë mirë tuto.
Kontributi i jashtëzakonshëm, këtu nga Kili vlerësohet.
Çdo ditë më shumë LINUX më befason këndshëm,
Rroftë Software-i i Lirë MIERDAAAA.
shërbejnë për
kontrolloni nëse një skedar është nga një direktori
Nëse dua të kontrolloj ekzistencën e ndonjë skedari në një rrugë «/ tmp / marrës», ekzekutoj ndonjë komandë, si do të ishte?
Unë do të jem shumë mirënjohës
të fala
I dashur, dhe të përcaktohet nga IF nëse skedari është i mbushur plotësisht ??? E pyes këtë sepse kur jeni duke mbushur skedarin për një transmetim, mund ta marrë atë edhe me gjysmën e të dhënave.
Përshëndetje dhe faleminderit për përgjigjen tuaj.
Epo mendoj se duhet të shtoni edhe një shembull, si p.sh. "Kontrolloni që nuk ka skedar" ose "direktori" si për shembull
për të kontrolluar që NUK ekziston, për shembull përdorni një ndryshore->
Një Drejtori
#! / bin / bash
Drejtoria = »$ HOME / Drejtoria e Testimit»
Skedar = »$ HOME / Skedar Test»
nëse [! -d "$ Directory"]; atëherë
jehonë "Nuk ka $ Directory"
echo "Krijimi ->" $ Directory "
mkdir "$ Directory"
tjetër
echo "Drejtoria" $ Directory "ekziston tashmë
fi
nëse [! -d "$ File"]; atëherë
jehona "Dosja $ nuk ekziston"
echo "Krijimi ->" $ File "
prek "$ File"
tjetër
jehona "Skedari" $ File "ekziston tashmë
fi
kur e kontrolloni më vonë mkdir nëse terminali mund ta krijojë atë sepse mund të thyejë topa nëse është një dosje si rrënjë ose sistem hhah
Përshëndetje KZKG ^ Gaara një pyetje siç do të bëja për të përdorur curl. Do të doja të dija se si bëj nga tastiera te ping një url për të parë nëse është në dispozicion për shembull http://portal.com/directorio/archivo1.php Aty ku skedari1 do të ruajë IP-të e vizitës, është për të monitoruar një ekip që duhet ta bëj atë pin çdo gjysmë ore në mënyrë që të jem i vetëdijshëm për IP-në publike pasi ndryshon herë pas here dhe nuk mund të lidhem me ssh.
Përshëndetje faleminderit paraprakisht Zoti ju bekoftë.
Hi si po shkon
Së pari, duhet të thuash që ndryshorja IP (për shembull) është përmbajtja e asaj skedari, për këtë duhet të:
1. Shkarkoni skedarin
2. Shikoni përmbajtjen e tij dhe merrni IP nga atje
3. Kjo IP është variabla
Për shembull:
Këtu shkarkojmë skedarin - »wget http://portal.com/directorio/archivo1.php -o skedar.html
Pastaj caktojmë një variabël përmbajtjen e saj: - »: $ {IP: =` skedar mace.html`}
.. duke supozuar që përmbajtja e asaj skedari ka vetëm IP, nëse jo, do të duhej të punonit me grep, awk ose head.
Pasi të keni IP-në si një variabël, pjesa tjetër është gjëja më e thjeshtë në botë
Nëse dëshironi, më shkruani me email (kzkggaara[at]desdelinux[dot]net) Unë do t'ju ndihmoj me kënaqësi
Faleminderit shumë kzkggaara shumë mirënjohës.
Përshëndetje, unë nuk kuptoj shumë për informatikën dhe nuk e di nëse ky postim ka të bëjë me problemin që kam.
Unë komentoj në rast se më lexoni, edhe pse postimi është i një viti më parë:
Rezulton se kam krijuar një dosje në desktopin tim për të ruajtur disa video. Epo, unë i fshiva ato video sepse nuk më duheshin më dhe tani kjo dosje më tregon se nuk ekziston (edhe pse është e dukshme në desktopin tim).
- Ky është problemi i parë që kam:
Nuk mund ta fshij dosjen.
- Problemi i dytë dhe mendoj se është më i rëndësishëm:
Në një përpjekje për të fshirë dosjen, unë vendos një dosje PHOTOS. Tani kur hap dosjen që "nuk ekziston", ajo është bosh dhe FOTOT nuk janë atje.
Si mund t'i rikuperoj fotot? Unë kam dhënë mundësinë brenda dosjes "Trego dokumentet e fshehura" por dosja PHOTOS nuk shfaqet.
Unë shpresoj se ju mund të dini se si zgjidhet.
Ju faleminderit.
Ekzistojnë dy përdorues që janë më kryesorët: root dhe your_user (natalia për shembull). Të dy kanë dosje personale. përdoruesi juaj në / shtëpi dhe rrënjosni në ((direktoria rrënjë). Duke klikuar me të djathtën në dosje shikoni se kujt i përket. Nëse është root me menaxherin tuaj të skedarëve duke përdorur sudo ose gksu ose kdesu në varësi të mjedisit që përdorni shkoni në direktorinë root -> root -> Desktop dhe me siguri do të gjeni fotot dhe mund ta fshini dosjen. Disa distro kur nuk jeni zotëruesi i skedarit ose direktorisë dhe nuk keni leje hyrjeje ju tregojnë që direktoria / skedari nuk ekziston. Nëse ju jeni pronari dhe nuk jeni root, bëni të njëjtën gjë me menaxherin e skedarëve me sudo, etj. dosjen.
Nëse kjo nuk funksionon, do të duhet të shihni opsione të tjera nga terminali (tastiera).
Përshëndetje, si jeni? Unë jam duke bërë një punë në bash dhe do të doja të dija si të verifikoja nëse ka një direktori të futur nga tastiera, për shembull
#! / bin / bash
lexoni rrugën
#Enter / Desktop
# Atëherë unë përpiqem të lundroj në atë drejtori
cd $ shteg
# Marr mesazhin vijues bash: cd: ~ / Desktop: Skedari ose direktoria nuk ekziston
Pyetja ime është, çfarë mund të bëj që ta fus nga tastiera dhe ta marr si një rrugë direktorie?
Dhe si mund ta di nëse ekziston një grup,
mire une kam nje problem ne canaima tim kur shtyp butonin cunaguaro thuhet se nuk ka skedar apo direktori sic do te bente per te zgjidhur ate problem dhe pjesa tjeter nuk hap cunaguaro ju faleminderit.
Si e bëni nëse në BASH nëse emri i skedarit ka hapësira?
Për shembull:
Të dhënat e prillit.xlsx
Për të pyetur nëse skedari ekziston
Carlos, si kjo:
nëse [["$ variabli" == Të dhënat \ muaji \ \ Prill.xlsx]]; pastaj jehonë 'ndeshje'; fi
Ju gjithashtu mund të:
if [["$ variable" == 'Të dhëna për muajin prill.xlsx']]; pastaj jehonë 'ndeshje'; fi
Një tjetër mundësi:
[["$ Variable" == 'Të dhëna për Prillin.xlsx']] && jehonë 'ndeshjet' || jehona 'nuk përputhet'
Në disa zona të errëta të internetit ata rekomandojnë përdorimin e [[]] në vend të [], dhe nëse do të krahasoni numrat atëherë: ((ndryshore> = 3)) & & echo 'ndryshorja është më e madhe ose e barabartë me 3' | | echo 'ndryshorja është më pak se 3'
Prandaj, për numrat:
nëse ((numri! = 4)); atëherë jehona "$ {number} nuk është 4"; tjetër jehonë "$ {number} është 4"; fi
si mund të krijoni një kod për të vërtetuar nëse drejtoria ka një tekst specifik, për të qenë në gjendje ta redaktoni atë.
shembull:
nëse (teksti1)
mos bej gje
tjetër
ndryshoni tekstin1 në tekstin2
një pyetje, si do të ishte të kontrollonit çdo 15 sekonda nëse skedari ekziston apo jo, faleminderit.
Përshëndetje,
kjo:
nëse [-w / home / Komun / Logs / ti]; atëherë
Gjeni nëse skedari është i shkruar. Por bazohet në lejet e përdoruesve. A mund të bëhet për të zbuluar nëse grupi ose të tjerët kanë leje?