Hirdetés
- Samsung Galaxy S23 Ultra - non plus ultra
- Örömhír: nem spórol Európán a OnePlus
- Milyen okostelefont vegyek?
- Ekkor startol és ennyit gyártanak a Galaxy TriFoldból
- Xiaomi 15T Pro - a téma nincs lezárva
- Huawei Watch 4 Pro - kívül-belül domborít
- Külföldi prepaid SIM-ek itthon
- Google Pixel topik
- Android alkalmazások - szoftver kibeszélő topik
- Kis méret, nagy változás a Motorolánál
Új hozzászólás Aktív témák
-
-
-
Jester01
veterán
Nem kell az extra idézőjelezés (a \"). Az a lényeg, hogy az rsync egyben kapja meg de azon belül már nem kell idézőjel mert akkor az egészet programnévnek akarja értelmezni.
rsync -avh -e "${SSH_CMD} -p ${SCP_PORT} -i ${SCP_KEYFILE}" . "${SCP_USER}@${SCP_HOST}:${SCP_PATH}/${LVM_BACKUP_LOGICAL_VOLUME}-${DATE_TIME}/"
Illetve ha nagyon pedáns akarsz lenni és attól félsz, hogy itt-ott lehet szóköz akkor az egyes argumentumok köré tehetsz idézőjelet (persze akkor már azt is kezelni kellene, ha esetleg idézőjel van benne ... can of worms)
rsync -avh -e "\"${SSH_CMD}\" -p \"${SCP_PORT}\" -i \"${SCP_KEYFILE}\"" . "${SCP_USER}@${SCP_HOST}:${SCP_PATH}/${LVM_BACKUP_LOGICAL_VOLUME}-${DATE_TIME}/"
-
Jester01
veterán
Mivel while true van, ezért a script végén lévő 3 sor sosem fog lefutni. Javaslom tedd trap handlerbe.Ettől eltekintve a célnak megfelel.
Ha nagyon kötözködni akarnék, akkor:
1) az echo "" sorban felesleges a ""
2) The command substitution $(cat file) can be replaced by the equivalent but faster $(< file). (forrás: man bash)
3) az if-elif-elif helyett lehetne valami adatvezérelt megoldás. -
rt06
veterán
-
bash man:
{ list; } list is simply executed in the current shell environment. list must be terminated with a newline or semicolon. This is known as a group command. The return status is the exit status of list. Note that unlike the metacharacters ( and ), { and } are reserved words and must occur where a reserved word is permitted to be recognized. Since they do not cause a word break, they must be separated from list by whitespace or another shell metacharacter.
-
szerintem a zárójeles kifejezéseket subshellben hajtja végre, az lép csak ki.
én a parancs || echo "xsfgkjf" && exit 1 formát próbálnám, az echo mindig igaz értékkel tér vissza.
a manból:
"Of these list operators, && and ⎪⎪ have equal precedence, followed by ; and &, which have equal precedence."
vagy lehet még azt is, hogy:
parancs || echo bajvan
[ -f letoltottfile ] || exit 1 -
"The shell allows arithmetic expressions to be evaluated, under certain circumstances (see the let and declare builtin commands and Arithmetic Expansion). Evaluation is done in fixed-width integers with no check for overflow, though division by 0 is trapped and flagged as an error. "
szóval bashban sehogy. de ha felrakod a bc-t, akkor azzal egyszerűen lehet
cpu_total=$(echo -n "scale=3; $cpu_total + $cpu " | bc -l)
valahogy így, de nem próbáltam ki.
Új hozzászólás Aktív témák
- AMD Catalyst™ driverek topikja
- Battlefield 6
- LG LCD és LED TV-k
- OFF TOPIC 44 - Te mondd, hogy offtopic, a te hangod mélyebb!
- Újra nekifeszül az asztali konzolok piacának a Valve
- Black Friday november 29. / Cyber Monday december 2.
- Samsung Galaxy S23 Ultra - non plus ultra
- Milyen TV-t vegyek?
- Házimozi haladó szinten
- Microsoft Excel topic
- További aktív témák...
- BESZÁMÍTÁS! ASRock B450M R5 5500 16GB DDR4 512GB SSD Strix RTX 2070 8GB Rampage SHIVA ADATA 600W
- Konzol felvásárlás!! Xbox Series S, Xbox Series X
- Felújított laptopok számlával, garanciával! Ingyen Foxpost!
- Samsung Galaxy S22 Ultra / 12/256GB / Kártyafüggetlen / 12Hó Garancia
- Xiaomi 11T 128GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: Laptopműhely Bt.
Város: Budapest


Valószínűleg nem éri meg a fáradságot 


