U-1 usho okukhiphayo okujwayelekile (stdout). U-2 ubonisa iphutha elijwayelekile (stderr). Ngakho-ke i-2>&1 ithi ukuthumela iphutha elijwayelekile lapho okukhiphayo okujwayelekile kuqondiswa kabusha futhi.
Ithini incazelo ye-2 >&1?
“Usebenzisa i-&1 ukuze ubhekisele kwinani lesichazi sefayela 1 (stdout). Ngakho-ke uma usebenzisa i-2>&1 empeleni uthi “Qinisekisa kabusha i-stderr endaweni efanayo lapho siqondisa kabusha i-stdout”. Kungakho singenza into efana nale ukuqondisa kabusha kokubili i-stdout ne-stderr endaweni efanayo:
Usho ukuthini u-2 >&1 futhi usetshenziswa nini ngokujwayelekile?
I-&1 isetshenziselwa ukubhekisela kwinani lesichazi sefayela 1 (stdout). Manje ephuzwini elithi 2>&1 kusho ukuthi “Qinisekisa kabusha i-stderr endaweni efanayo esiqondisa kabusha i-stdout”
Iyini i-$$ ku-Linux?
I-$$ yi-ID yenqubo (PID) yombhalo ngokwawo. I-$BASHPID i-ID yenqubo yesehlakalo samanje se-Bash. Lokhu akufani nokuguquguquka kwe-$$, kodwa ngokuvamile kunikeza umphumela ofanayo. https://unix.stackexchange.com/questions/291570/what-is-in-bash/291577#291577. Yabelana.
Kusho ukuthini okungu-2 ku-Linux?
2 ibhekisela kusichazi sefayela sesibili senqubo, okungukuthi stderr . > kusho ukuqondisa kabusha. &1 isho ukuthi okuqondiwe kokuqondisa kabusha kufanele kube indawo efanayo nesichazi sefayela sokuqala, okungukuthi stdout .
Ngabe i-1.5 isho eyodwa nohhafu?
Ibinzana lesiNgisi elithi "ingxenye eyodwa" lisho uhhafu - ngamafuphi, inani elingu-0.5. … Ingxenye eyodwa inguhhafu, noma 0.5 . Ingxenye eyodwa nohhafu ingu-1.5.
Kusho ukuthini ukuthi 1 kumyalezo wombhalo?
ukunqamuka. "Hamba kahle". Ngizokhuluma nawe kamuva.
Ngiyiqondisa kanjani kabusha i-stderr?
Okukhiphayo okuvamile kuthunyelwa ku-Standard Out (STDOUT) futhi imilayezo yephutha ithunyelwa Ephutha Elijwayelekile (STDERR). Uma uqondisa kabusha okukhiphayo kwekhonsoli usebenzisa > uphawu, uqondisa kabusha i-STDOUT kuphela. Ukuze uqondise kabusha i-STDERR, kufanele ucacise u-2> kuphawu lokuqondisa kabusha.
Yini oyisebenzisayo ukuze udlulisele amaphutha kufayela?
Izimpendulo ze-2
- Qondisa kabusha i-stdout kufayela elilodwa bese u-stderr uye kwelinye ifayela: umyalo> ukuphuma 2>iphutha.
- Qondisa kabusha i-stdout kufayela ( >out ), bese uqondisa kabusha i-stderr ku-stdout ( 2>&1 ): umyalo > ukuphuma 2>&1.
Yini i-$? Ku-Bash?
$? iwukuguquguquka okukhethekile ku-bash okuhlala kubambe ikhodi yokubuyisela/yokuphuma yomyalo wokugcina okhishiwe. Ungayibuka kutheminali ngokusebenzisa i-echo $? . Amakhodi okubuyisela akububanzi [0; 255]. Ikhodi yokubuyisela engu-0 ngokuvamile isho ukuthi konke kulungile.
Iyini i-$1 ku-Linux?
I-$1 iyimpikiswano yokuqala yomugqa womyalo odluliselwe kuskripthi segobolondo. … $0 igama lombhalo ngokwawo (script.sh) $1 iyimpikiswano yokuqala (igama lefayela1) $2 impikiswano yesibili (dir1)
Kuyini ukusetshenziswa kwe-Linux?
I '!' uphawu noma u-opharetha ku-Linux angasetshenziswa njengo-opharetha we-Logical Negation kanye nokulanda imiyalo emlandweni onama-tweaks noma ukusebenzisa umyalo owenziwe ngaphambilini ngokushintsha.
Ngilazi kanjani igobolondo lami lamanje?
Indlela yokuhlola ukuthi yiliphi igobolondo engilisebenzisayo: Sebenzisa imiyalo elandelayo ye-Linux noma ye-Unix: ps -p $$ - Bonisa igama lakho legobolondo lamanje ngokuthembekile. echo "$SHELL" - Phrinta igobolondo lomsebenzisi wamanje kodwa hhayi ngempela igobolondo elisebenza ekuhambeni.
Yini i-$? Ku-Unix?
$? -Isimo sokuphuma somyalo wokugcina owenziwe. $0 -Igama lefayela lombhalo wamanje. $# -Inani lama-agumenti anikezwe iskripthi. $$ -Inombolo yenqubo yegobolondo lamanje. Ngemibhalo yegobolondo, lena i-ID yenqubo abasebenzisa ngaphansi kwayo.
Yimuphi umyalo okuvumela ukuthi ubuke yonke imiyalo oyisebenzisile?
Ku-Linux, kunomyalo owusizo kakhulu wokukubonisa yonke imiyalo yokugcina esanda kusetshenziswa. Umyalo ubizwa nje ngokuthi umlando, kodwa ungafinyelelwa ngokubheka . bash_history kufolda yakho yasekhaya.
Isho ukuthini i-stdout?
I-Stdout, eyaziwa nangokuthi okukhiphayo okujwayelekile, iyisichazi sefayela esizenzakalelayo lapho inqubo ingabhala okuphumayo. Kuzinhlelo zokusebenza ezifana ne-Unix, njenge-Linux, i-macOS X, ne-BSD, i-stdout ichazwa yizinga le-POSIX. Inombolo yayo yesichazi sefayela ezenzakalelayo ithi 1. Kutheminali, okukhiphayo okujwayelekile kuyashintshashintsha esikrinini somsebenzisi.