Hirdetés
- One mobilszolgáltatások
- Milyen okostelefont vegyek?
- Xiaomi 14 - párátlanul jó lehetne
- Samsung Galaxy S21 FE 5G - utóirat
- Xiaomi 12T Pro - kétszínű, mint a kétszázas
- Youtube Android alkalmazás alternatívák reklámszűréssel / videók letöltése
- iPhone topik
- Apple iPhone 17 Pro Max – fennsík
- Telekom mobilszolgáltatások
- Vivo X300 Pro – messzebbre lát, mint ameddig bírja
Új hozzászólás Aktív témák
-
Jester01
veterán
válasz
szoke12
#1430
üzenetére
Ez egy négyzetes megoldás, ha már ciklust akarsz akkor miért nem egyszer mész végig a kimeneten?
Mi van ha időközben megváltozik a fájllista?
Directoryk méretét kell nézni?sum=0
for x in $(find . -maxdepth 1 -type f -printf '%s\n')
do
sum=$((sum + x))
done
echo $sum-vagy-
(find . -maxdepth 1 -type f -printf '%s+'; echo 0) | bc
ls használatával is lehet hasonlót, plusz nyilván a du még mindig erre való.
-
-
Jester01
veterán
válasz
szoke12
#1373
üzenetére
bash specifikus megoldás arra az esetre ha mindenképp van az elején nulla vagy ha kell az elejére nulla akkor is ha nincs:
$ shopt extglob
extglob on
$ x=123
$ echo 0${x##+(0)}
0123
$ x=0123
$ echo 0${x##+(0)}
0123
$ x=00123
$ echo 0${x##+(0)}
0123
$ x=000123
$ echo 0${x##+(0)}
0123
$ x=12003
$ echo 0${x##+(0)}
012003Szabványos megoldás:
case "$1" in
0*)
echo -n 0
expr substr "$1" \( index "$1" 123456789 \) \( length "$1" \)
;;
*)
echo "$1"
;;
esac -
-
buherton
őstag
válasz
szoke12
#1362
üzenetére
Én perl-t hivogatnék bash-ból, és IPC-t használnék.
-
válasz
szoke12
#1360
üzenetére
alapvetően sehogy, mert amit másik futtatási környezet futtat, azt nem látja.
megkerülni úgy lehet, hogy a deklarációkat egy fájlba teszed, és ponttal beolvasod oda, ahol szintén szükséges.
tehát így:#! /bin/bash
. valtozok.sh
másik megoldás, hogy a változót exportálod a futtatási környezetbe, így a belőle indított al-shellek is látni fogják. a bash manual olvasgatása javasolt az export utasítás környékén. de ez még mindig nem teljes megoldás.
-
-
-
válasz
szoke12
#1270
üzenetére
Az ==, amit hasznalsz, az igazan stringek osszehasonlitasara van, neked meg szamokat kell osszehasonlitanod, arra mas operatorok vannak, az egyenloseg:
if [ $NUM -eq 10 ] ; then
A komplett sor: -lt, -le, -eq, -ge, -gt (kisebb, kisebbegyenlo, egyenlo, nagyobbegyenlo, nagyobb)
vagyis ami neked kell az az, hogy
if [ $NUM -le 10 ] ; then
Új hozzászólás Aktív témák
- Apple iPhone 12 64GB,Átlagos,Adatkabel,12 hónap garanciával
- billentyűzetek - kiárusítás - Logitech, Corsair, ASUS
- Asus Zenbook 13 laptop Oled kijelző!
- 9 Év Alza Garancia! G.Skill Ripjaws M5 Neo RGB White DDR5 6000Mhz 2X16GB (32GB) DDR5 Memória
- iPhone 15 Pro Max 256GB 90% (1év Garancia) Akár új akksival is kérhető!
Állásajánlatok
Cég: ATW Internet Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest



