# Unix commands

## AWK

```
# To awk over multiple delimiters - here delimiters are ' (which is escaped using a \ and :
  grep imageNames ~/Downloads/DriscollsGTdata-2019-05-08-Full.txt | awk -F[\':] '{print $3, $9}'
```

## Find and delete

Ref: <https://mycyberuniverse.com/linux/find-and-delete-the-zero-size-files-and-empty-directories.html>

```
To find all zero size files, simply use:

find ./ -type f -size 0
or:

find ./ -type f -empty

To find and then delete all zero size files, there are variants you can use:

find ./ -type f -size 0 -exec rm -f {} \;
find ./ -type f -size 0 | xargs rm -f
find ./ -type f -size 0 -delete
The xargs will cause all the filenames to be sent as arguments to the rm -f commands. This will save processes that are forked everytime -exec rm -f is run. But is fails with spaces etc in file names.

The -delete is the best when it is supported by the find you are using (because it avoids the overhead of executing the rm command by doing the unlink() call inside find().

Empty directories
To find all empty directories, simply use:

find ./ -type d -empty
This command will find all empty directories in the current directory with subdirectories and then print the full pathname for each empty directory to the screen.

To find and then delete all empty directories, use:

find ./ -depth -type d -empty -exec rmdir {} \;
or:

find ./ -type d -empty -delete
The -delete is the best when it is supported by the find you are using.
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://bhabs.gitbook.io/allsetup/unix-commands.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
