Son aktivite 1744770145

Как указать в bash значение переменной по умолчанию

LittleGreenCat's Avatar LittleGreenCat bu gisti düzenledi 1744770144. Düzenlemeye git

1 file changed, 62 insertions

bash.md(dosya oluşturuldu)

@@ -0,0 +1,62 @@
1 + Частенько требуется в bash скрипте указать значение переменной по умолчанию, например если не задано прямо.. Однако не все так просто...
2 + Краткий списочек с описанием логики.
3 +
4 + ```bash
5 + # bash one liner
6 + # --------------
7 +
8 + x="foo" && echo "${x:-bar} (x = $x)"
9 + # foo (x = foo)
10 +
11 + x="" && echo "${x:-bar} (x = $x)"
12 + # bar (x = )
13 +
14 + unset x && echo "${x:-bar} (x = $x)"
15 + # bar (x = )
16 +
17 + x="foo" && echo "${x-bar} (x = $x)"
18 + # foo (x = foo)
19 +
20 + x="" && echo "${x-bar} (x = $x)"
21 + # (x = )
22 +
23 + unset x && echo "${x-bar} (x = $x)"
24 + # bar (x = )
25 +
26 + x="foo" && echo "${x:=bar} (x = $x)"
27 + # foo (x = foo)
28 +
29 + x="" && echo "${x:=bar} (x = $x)"
30 + # bar (x = bar)
31 +
32 + unset x && echo "${x:=bar} (x = $x)"
33 + # bar (x = bar)
34 +
35 + x="foo" && echo "${x=bar} (x = $x)"
36 + # foo (x = foo)
37 +
38 + x="" && echo "${x=bar} (x = $x)"
39 + # (x = )
40 +
41 + unset x && echo "${x=bar} (x = $x)"
42 + # bar (x = bar)
43 +
44 + x="foo" && echo "(x = $x)" && echo "${x:?error message}"
45 + # (x = foo) foo
46 +
47 + x="" && echo "(x = $x)" && echo "${x:?error message}"
48 + # (x = ) bash: x: error message
49 +
50 + unset x && echo "(x = $x)" && echo "${x:?error message}"
51 + # (x = ) bash: x: error message
52 +
53 + x="foo" && echo "${x:+bar} (x = $x)"
54 + # bar (x = foo)
55 +
56 + x="" && echo "${x:+bar} (x = $x)"
57 + # (x = )
58 +
59 + unset x && echo "${x:+bar} (x = $x)"
60 + # (x = )
61 + ```
62 + Опубликовано в [gitgate](https://t.me/gitgate)
Daha yeni Daha eski