diff options
| author | hachem <im@hachem.wtf> | 2026-10-06 12:49:46 +0200 |
|---|---|---|
| committer | hachem <im@hachem.wtf> | 2026-10-06 12:49:46 +0200 |
| commit | 5d4a723a5f157c0ed38a348099a600d1d21c3c2b (patch) | |
| tree | 70e5fdf560a64cd0eb3a13d88ce046ddd29fd077 /gils/cp.rv | |
| parent | 52dab7fc85d877e80e3032f0afabae906adebad8 (diff) | |
feat: gils core utils and other shit
Diffstat (limited to 'gils/cp.rv')
| -rw-r--r-- | gils/cp.rv | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/gils/cp.rv b/gils/cp.rv new file mode 100644 index 0000000..5988e54 --- /dev/null +++ b/gils/cp.rv @@ -0,0 +1,15 @@ +# copy a file not cyberpunk +# HAAAAAANNNNKKKK + +const context = env.ctx +if context.argv:len() < 3 do puts("usage: cp <source> <destination>\n") end +else do + const source = abspath(context.argv[1]) + const destination = abspath(context.argv[2]) + const size = fs:size(source) + if size < 0 do puts("cp: #{source}: no such file\n") end + else do + const contents = if size > 0 fs:read_bytes(source, 0, size) else "" + if fs:store(destination, contents) == 1 do puts("#{source} -> #{destination}\n") end + end +end |
