#date #time

app natls

nat - the 'ls' replacement you never knew you needed

28 stable releases

2.1.14 Mar 14, 2021
2.1.12 Mar 10, 2021
2.1.11 Feb 17, 2021
2.1.9 Dec 11, 2020
1.2.6 Oct 29, 2020

#1290 in Command line utilities

MIT license

2MB
641 lines

dependency status natls

⚡️ nat ⚡️

Massive nat update!

banner

demo

What is nat?

Highlights

Installation

Understanding permissions output

What is nat?

Nat is a complete replacement for the 'ls' command

Nats features include

  • Showing file permissions
  • Showing file size
  • Showing the date that the file was modified last
  • Showing the user that the file belongs to
  • Showing the group that the file belongs to
  • An easy to use file search
  • A splash of color to distinguish between files and folders

Join the nat discord server

Beta test the natls proof of concept re-write

cargo install nat-poc

Highlights

  • A rather large german tech blog wrote an article about nat

Usage

Installation

cargo install natls

Homebrew

brew install willdoescode/natls/natls

Alternative (linux)

natls

sudo snap install natls

To update natls with snap

sudo snap refresh natls

Another alternative (arch linux)

nat

yay -S nat

(or your AUR helper of choice)

Manual installation

Linux

apt-get install rustc cargo
cd /tmp

git clone https://github.com/willdoescode/nat.git
cd /tmp/nat

cargo build --release

cd target/release

./nat

To install nat locally

cd /tmp/nat
cargo install --path .

and add this line to your $HOME/.bashrc

export PATH=$PATH:$HOME/.cargo/bin

Updating nat

cargo install natls

if there is a new version available cargo will install it

Using nat with ls

in zshrc or bashrc

alias ls='natls'

Running

natls <dir>

Searching for file

natls <file>

To edit the code

git clone https://github.com/willdoescode/nat.git
cd nat

Uninstall steps

cargo uninstall natls

Understanding permissions output

Imagine file permissions as three ones or zeros

000 no access
100 read
010 write
001 execute
101 read and execute
110 read and write
011 write and execute
111 read write and execute

what nat does is it combines these permissions for

user-group-other

so if the user has read write and execute and the group has read and write and other has no perms the output will look like

rwxrw----

If all groups have read write and execute the output would look like

rwxrwxrwx

Stargazers over time

Stargazers over time

Dependencies

~4–12MB
~128K SLoC