1 | Oils for Unix
|
2 | =============
|
3 |
|
4 | Oils is a small tool that unifies shell, Python, regexes, JSON, and YAML. It's
|
5 | our upgrade path from bash to a better language and runtime!
|
6 |
|
7 | https://www.oilshell.org/
|
8 |
|
9 | This is fast shell in C++, completed in 2024. Its source code is generated
|
10 | from a reference implementation in Python, but it relies on no Python code.
|
11 |
|
12 | To use it, run:
|
13 |
|
14 | ./configure # detects whether GNU readline is installed, etc.
|
15 |
|
16 | _build/oils.sh # builds optimized binary
|
17 |
|
18 | sudo ./install
|
19 |
|
20 | All you need is a C++ compiler.
|
21 |
|
22 | Then try:
|
23 |
|
24 | osh -c 'echo hi'
|
25 |
|
26 | osh -n -c 'echo hi' # parse a script
|
27 |
|
28 | ysh -c 'json write ({foo: 42})'
|
29 |
|
30 | Feedback:
|
31 |
|
32 | https://github.com/oilshell/oil/issues
|
33 |
|
34 |
|
35 | More build configuration
|
36 | ------------------------
|
37 |
|
38 | You can pass the compiler and build variant to _build/oils.sh:
|
39 |
|
40 | _build/oils.sh ~/install/cosmocc/bin/cosmoc++ dbg
|
41 |
|
42 | The default values are 'cxx' (c++ system compiler), and 'opt' (optimized build)
|
43 |
|
44 | You can also override the variables documented at the top of
|
45 | build/ninja-rules-cpp.sh (e.g. BASE_CXXFLAGS, CXXFLAGS)
|
46 |
|