Using Bash .bashrc and .profile Files to Initialize Your Terminal
Talaan ng mga Nilalaman:
- Suriin kung ang File Exist
- Suriin kung ang Directory na Wala
- Suriin kung ang File ay hindi Nariyan
- Suriin kung Maramihang Mga Files na Umiiral
- Ang mga operator ng pagsubok sa file
- Konklusyon
Maraming beses kapag nagsusulat ng mga script ng Shell, maaari mong makita ang iyong sarili sa isang sitwasyon kung saan kailangan mong magsagawa ng isang aksyon batay sa kung mayroong isang file o hindi.
Sa Bash, maaari mong gamitin ang test command upang suriin kung mayroon ang isang file at matukoy ang uri ng file.
Ang pagsubok na utos ay tumatagal ng isa sa mga sumusunod na form ng syntax:
Suriin kung ang File Exist
Kapag suriin kung mayroong isang file, ang pinaka-karaniwang ginagamit na FILE operator ay
-e
at
-f
. Susuriin ng una kung ang isang file ay mayroon nang anuman ang uri, habang ang pangalawa ay babalik din ang totoo kung ang FILE ay isang regular na file (hindi isang direktoryo o isang aparato).
Ang pinaka-mababasa na pagpipilian kapag sinuri kung mayroon ang isang file o hindi ay ang paggamit ng pagsubok na utos kasama ang kung pahayag. Ang alinman sa mga snippet sa ibaba ay susuriin kung ang
/etc/resolv.conf
file ay umiiral:
FILE=/etc/resolv.conf if test -f "$FILE"; then echo "$FILE exist" fi
FILE=/etc/resolv.conf if; then echo "$FILE exist" fi
FILE=/etc/resolv.conf if]; then echo "$FILE exist" fi
Kung nais mong magsagawa ng ibang pagkilos batay sa kung mayroon ang file o hindi lamang gamitin ang kung / pagkatapos ay itayo:
FILE=/etc/resolv.conf if; then echo "$FILE exist" else echo "$FILE does not exist" fi
Laging gumamit ng dobleng quote upang maiwasan ang mga isyu kapag nakikipag-ugnayan sa mga file na naglalaman ng whitespace sa kanilang mga pangalan.
Maaari mo ring gamitin ang pagsubok na pagsubok kung wala ang pahayag. Ang utos pagkatapos ng
&&
operator ay isasagawa lamang kung totoo ang exit status ng test command,
test -f /etc/resolv.conf && echo "$FILE exist"
&& echo "$FILE exist"
] && echo "$FILE exist"
&& { echo "$FILE exist"; cp "$FILE" /tmp/; }
Salungat sa
&&
, ang pahayag pagkatapos ng
||
naisakatuparan lamang ang operator kung
false
ang exit status ng test command.
&& echo "$FILE exist" || echo "$FILE does not exist"
Suriin kung ang Directory na Wala
Pinapayagan ka ng mga operator-na subukan kung ang isang file ay isang direktoryo o hindi.
Halimbawa upang suriin kung umiiral ang
/etc/docker
direktoryo ng
/etc/docker
gagamitin mo:
FILE=/etc/docker if; then echo "$FILE is a directory" fi
&& echo "$FILE is a directory"
Maaari mo ring gamitin ang dobleng bracket
, 'linuxize_com-medrectangle-4', 'ezslot_7', 160, '0', '0']));
Suriin kung ang File ay hindi Nariyan
Katulad sa maraming iba pang mga wika, ang ekspresyon ng pagsubok ay maaaring mapabaya gamit ang
!
(exclaim mark) lohikal na hindi operator:
FILE=/etc/docker if; then echo "$FILE does not exist" fi
Katulad ng nasa itaas:
&& echo "$FILE does not exist"
Suriin kung Maramihang Mga Files na Umiiral
Sa halip na gumamit ng kumplikadong nested kung / kung anu-ano ang mga konstruksyon maaari mong gamitin
-a
(o
&&
with
; then echo "$FILE is a directory" fi
FILE=/etc/docker if; then echo "$FILE is a directory" fi
Mga magkatulad na variant nang hindi gumagamit ng pahayag ng IF:
&& echo "both files exist"
Ang mga operator ng pagsubok sa file
Kasama sa pagsubok na pagsubok ang mga sumusunod na FILE operator na nagbibigay-daan sa iyo upang subukan para sa mga partikular na uri ng mga file:
-
-bFILE- Totoo kung umiiral ang FILE at isang bloke ang espesyal na file.-cFILE- Totoo kung umiiral ang FILE at isang espesyal na file ng character.-dFILE- Totoo kung umiiral ang FILE at isang direktoryo.-eFILE- Totoo kung umiiral ang FILE at isang file, anuman ang uri (node, direktoryo, socket, atbp.).-fFILE- Totoo kung umiiral ang FILE at isang regular na file (hindi isang direktoryo o aparato).-GFILE- Totoo kung umiiral ang FILE at may parehong pangkat tulad ng gumagamit na nagpapatakbo ng utos.-hFILE- Totoo kung umiiral ang FILE at ito ay isang simbolikong link.-gFILE- Totoo kung umiiral ang FILE at may set-group-id (sgid) na set ng bandila.-kFILE- Totoo kung umiiral ang FILE at may malagkit na set ng bandila.-LFILE- Totoo kung umiiral ang FILE at isang simbolikong link.-OFILE- Totoo kung umiiral ang FILE at pag-aari ng gumagamit na nagpapatakbo ng utos.-pFILE- Totoo kung umiiral ang FILE at isang pipe.-rFILE- Totoo kung umiiral ang FILE at mababasa.-SFILE- Totoo kung ang FILE ay umiiral at ay socket.-sFILE- Totoo kung umiiral ang FILE at may sukat na nonzero.-uFILE- Totoo kung ang umiiral at set-user-id (suid) na flag ay nakatakda.-wFILE- Totoo kung umiiral ang FILE at nakasulat.-xFILE- Totoo kung umiiral ang FILE at naisakatuparan.
Konklusyon
Sa gabay na ito, ipinakita namin sa iyo kung paano suriin kung mayroon ang isang file o direktoryo gamit ang Bash.
terminal ng bash"Ang bawat tao'y nagsasalita tungkol sa kung paano mga consumer hindi alam kung ano ang nangyayari, at kung alam nila kung ano ang nangyayari, sila ay magiging horrified, "sabi ni Rubin. "Ang dahilan kung bakit hindi nila alam ang tungkol dito ay hindi sila nag-aalinlangan upang malaman ang tungkol dito, at ang dahilan kung bakit hindi sila nag-aalinlangan upang malaman ang tungkol dito ay dahil wala nang masama ang nangyari."
[Karagdagang pagbabasa: Ang pinakamahusay TV streaming services]
Ang isang operating system ay isang kernel, isang pagsuporta sa cast ng mga programa, at isang konsepto. Para sa ilang mga komersyal na entity, ito rin ay isang kampanya sa marketing, hype at kita. Ngunit, ang Linux operating system ay isa pang lasa ng sistemang operating ng Unix? Oo. Kung gusto mo, bilang isang may-ari ng negosyo, nais malaman kung ang Linux ay sapat na tulad ng Unix na maaari mong lumipat mula sa isang komersyal na lasa ng Unix sa Linux na may pinakamaliit na problema at gasto
[Karagdagang pagbabasa: 4 Mga proyektong Linux para sa mga newbies at intermediate users]
Paano suriin kung ang isang file o direktoryo ay umiiral sa python
Kapag nagsusulat ng mga script ng Python, maaaring naisin mong magsagawa ng isang tiyak na pagkilos lamang kung mayroong isang file o direktoryo na mayroon o hindi. Halimbawa, maaaring gusto mong basahin o isulat ang data sa isang file ng pagsasaayos o upang lumikha lamang ang file kung wala na ito.







