Skip to main content

Search

Items tagged with: POSIX


Advanced #Programming in the #UNIX Environment

Week 4, Directories

We take a look at how directories are created and removed, how to iterate directory entries using opendir(2), readdir(2) / getdents(2), and how to move around the filesystem hierarchy (with a quick hint of fts(3)). We also figure out why the 'cd' command must be a shell builtin in order to work, despite some systems providing a useless /usr/bin/cd (for some interpretation of #POSIX compliance).

youtu.be/xZ7dNXZ58G8

#apue


Hilarious bit about NetApp ...

『A completely different way of thinking can be found in Log Structured File Systems , first seen in Ousterhout’s Sprite, in the early 1990. But performancewise the original implementation that was a failure: the first successful and performant implementation can be found - made by Oursterhout’s students - in Solaris ZFS, and at the same time in NetApps WAFL, which promptly engaged in a legal battle over patents. In parallel, many ZFS ideas are being reimplemented about half a decade later in Btrfs ...』

... from ...

What are the problems with #POSIX? 20201005,
by Kristian K,
blog.koehntopp.info/2020/10/05…

#unix #fileSystem


@bololacertus @overeducatedredneck @profoundlynerdy Put another way, `checkbashisms` exists because the only way to get #shell scripters to stick to strict #POSIX syntax and userland programs is to automatically reject deviations with extreme prejudice.

And please don’t get me started on #Python portability. Y’all can’t even settle on how to manage the virtual environments that every individual Python-based tool requires.


Do you want a #POSIX #shell script using #jq (jqlang.github.io/jq) and github.com/microsoft/vscode-vs… to document your #VSCode workspace extension recommendations as a #Markdown list? Sure you do:

```
for extName in $( jq --raw-output '.recommendations[]' <.vscode/extensions.json )
do
vsce show --json "${extName}" |
jq --raw-output '
["* [", .displayName, "](",
@uri "marketplace.visualstudio.com/i…\(
"\(.publisher.publisherName).\(.extensionName)"
)",
")"] | add'
done
```