172 lines
2.8 KiB
Markdown
172 lines
2.8 KiB
Markdown
---
|
|
title: Command line stuff
|
|
---
|
|
|
|
## List (ls)
|
|
{: .-three-column}
|
|
|
|
### Usage
|
|
|
|
ls [options] [paths]
|
|
|
|
### Format
|
|
|
|
| Switch | Description |
|
|
|---|---|
|
|
| `-1` | One entry per line |
|
|
| `-l` | Long view |
|
|
| `-o` | Long view (without groups) |
|
|
| `-C` | Multicolumn (sorted horizontally) |
|
|
| `-x` | Multicolumn (sorted vertically) |
|
|
|---
|
|
| `-F` | Add / after directories |
|
|
| `-G` | Color |
|
|
|
|
### Options
|
|
|
|
| `-R` | Recurse |
|
|
| `-a` | Include hidden (dotfiles) |
|
|
| `-A` | Include hidden (but not . and ..) |
|
|
|
|
### Sorting
|
|
|
|
| Switch | Description |
|
|
|---|---|
|
|
| `-r` | reverse order |
|
|
| `-S` | sort by size |
|
|
| `-t` | sort by time modified |
|
|
| `-u` | sort by time accessed |
|
|
| `-U` | sort by time created |
|
|
| `-c` | sort by time status was changed |
|
|
|---
|
|
| `-h` | Human-readable size (3k) |
|
|
|
|
## Tail
|
|
{: .-three-column}
|
|
|
|
### Usage
|
|
|
|
tail [-F | -f | -r] [-bN | -cN | -nN] [file ...]
|
|
|
|
### Modes
|
|
|
|
| `-f` | follow |
|
|
| `-F` | follow by filename (accounts for log rotation) |
|
|
| `-r` | Reverse order |
|
|
|
|
### Options
|
|
|
|
| `-bN` | N*512 bytes |
|
|
| `-cN` | N bytes |
|
|
| `-nN` | N lines |
|
|
| `+N` | Start from line N |
|
|
|
|
<br>
|
|
|
|
## Sudo
|
|
{: .-three-column}
|
|
|
|
### Usage
|
|
|
|
```
|
|
sudo [options] <command>
|
|
```
|
|
|
|
### Listing
|
|
|
|
| `-l` | List allowed commands |
|
|
|
|
### Options
|
|
|
|
| `-A` | Use $SUDO_ASKPASS |
|
|
| `-b` | Run in background |
|
|
| `-E` | Preserve environment |
|
|
| `-H` | use target's $HOME |
|
|
| `-n` | Don't prompt for password |
|
|
| `-P` | Preserve group vector |
|
|
| `-S` | Read password from stdin |
|
|
|
|
### File descriptors
|
|
|
|
| `-C fd` | Close all open file descriptors |
|
|
|
|
### Prompt
|
|
|
|
| `-p prompt` | Custom prompt (-p "%p password:") |
|
|
|
|
### Interactive
|
|
|
|
| Switch | Description |
|
|
|---|---|
|
|
| `-i [cmd]` | Interactive shell without variables |
|
|
| `-s [cmd]` | Interactive shell |
|
|
|----
|
|
| `-u user` | run as this user |
|
|
| `-g group` | run as this group |
|
|
|
|
### Timestamp
|
|
|
|
| `-v` | revalidate timestamp for 5 mins |
|
|
| `-k` | invalidate timestamp |
|
|
| `-K` | just like -k |
|
|
|
|
## wc (Word count)
|
|
{: .-three-column}
|
|
|
|
### wc
|
|
|
|
```
|
|
... | wc [options]
|
|
```
|
|
|
|
### Options
|
|
|
|
| `-c` | Bytes |
|
|
| `-l` | Lines |
|
|
| `-m` | Characters (incl multi-byte) |
|
|
| `-w` | Words |
|
|
|
|
## Grep
|
|
{: .-three-column}
|
|
|
|
### Usage
|
|
|
|
```
|
|
grep [options] [pattern] [file ...]
|
|
```
|
|
|
|
### Options
|
|
|
|
| Switch | Description |
|
|
|---|---|
|
|
| `-A num` | Print `num` lines of training context |
|
|
|----
|
|
| `-G` | --basic-regexp (default) |
|
|
| `-E` | --extended-regexp |
|
|
| `-P` | --perl-regexp |
|
|
|----
|
|
| `-f file` | --file (Get patterns for file) |
|
|
| `-F` | --fixed-strings |
|
|
|----
|
|
| `-h` | --no-filename |
|
|
| `-H` | --with-filename |
|
|
|----
|
|
| `-l` | --files-with-matches (just print filenames) |
|
|
| `-L` | --files-without-match |
|
|
|----
|
|
| `-r, -R` | --recursive |
|
|
| `-v` | --invert-match |
|
|
| `-i` | --ignore-case |
|
|
|
|
### Synonyms
|
|
|
|
egrep => grep -E
|
|
fgrep => grep -F
|
|
|
|
## Other recipes
|
|
{: .-three-column}
|
|
|
|
### Search-and-replace in all files
|
|
|
|
perl -p -i -e 's/hello/HELLO/g' **/*
|