Man pages for idiots (like me)

Chat about Linux in general
Forum rules
Do not post support questions here. Before you post read the forum rules. Topics in this forum are automatically closed 6 months after creation.
Locked
User avatar
MrEen
Level 23
Level 23
Posts: 18343
Joined: Mon Jun 12, 2017 8:39 pm

Man pages for idiots (like me)

Post by MrEen »

Just found a great resource for those that prefer examples that so many man pages never include: https://github.com/raylee/tldr

Install with:

Code: Select all

mkdir -p ~/bin
curl -o ~/bin/tldr https://raw.githubusercontent.com/raylee/tldr/master/tldr
chmod +x ~/bin/tldr
Use with:

Code: Select all

tldr [options] command
Present commands in the repository:

Code: Select all

scott@scott-HP ~ $ tldr -l
-e Known tldr pages: 

7z			datamash		grep			meteor			psql			svcs
7za			date			groff			micro			pssh			svgcleaner
7zr			dbus-daemon		groupadd		microcom		pstree			svgo
ab			dc			groupdel		minetest		pt			svn
abduco			dd			groupmod		minetestserver		pulseaudio		sw_vers
ack			decaffeinate		groups			minikube		pup			swagger-codegen
adb			defaults		grunt			mitmdump		pushd			swapoff
add-apt-repository	del			gs			mitmproxy		pv			swapon
adduser			deluser			gtop			mix			pvcreate		swift
ag			dep			guetzli			mkdir			pwd			sync
airpaste		detox			guile			mke2fs			pwgen			sysctl
airport			devfsadm		guix-package		mkfifo			pwlauncher		system_profiler
alias			df			gulp			mkfile			pycodestyle		systemctl
alpine			dhcpwn			gunicorn		mkfs.cramfs		pyenv			systemd-analyze
ansible			diff			gunzip			mkfs.exfat		pyenv-virtualenv	systeminfo
ansible-galaxy		diff3			gzip			mkfs.fat		pyflakes		systemsetup
ansible-playbook	diffstat		halt			mkfs.minix		pygmentize		tabula
ansiweather		dig			handbrakecli		mkfs.ntfs		python			tac
apache2ctl		dir			hangups			mkfs.vfat		q			tail
apachectl		dircolors		hardinfo		mkisofs			qemu			tar
apg			dirname			haxelib			mklink			qemu-img		task
apk			dirs			head			mknod			qlmanage		taskkill
apm			diskutil		helm			mkswap			qpdf			tasklist
apropos			disown			help2man		mktemp			qsub			tb
apt			ditto			heroku			mlr			quota			tcpdump
apt-cache		dive			hexdump			mmv			quotacheck		tcpflow
apt-file		dmesg			hg			mocha			r			tcpkill
apt-get			dmidecode		hg-add			modinfo			rabin2			tee
apt-key			dnf			hg-branch		modprobe		rails			telnet
apt-mark		docker			hg-clone		mogrify			rainbowstream		terminalizer
aptitude		docker-compose		hg-commit		mongo			rbash			terminator
ar			docker-machine		hg-init			mongod			rbenv			terraform
arch			dokku			hg-log			mongodump		rdesktop		tesseract
archey			doskey			hg-pull			mongorestore		rdfind			test
aria2c			dot			hg-push			monodis			rdpsign			textutil
arp			dotnet			hg-remove		monop			read			thunar
arp-scan		doxygen			hg-serve		montage			readlink		tig
as			dpkg			hg-update		more			realpath		time
asar			dpkg-query		history			moro			reboot			timedatectl
asciinema		drill			hn			mosh			redis-cli		timeout
aspell			driverquery		host			most			redshift		timew
asr			drush			hostess			mount			reflector		title
assimp			drutil			hostid			mp4box			reg			tldr
assoc			du			hostname		mpc			reg-add			tldrl
astyle			duplicity		hostnamectl		mpstat			reg-compare		tlp
at			duti			hr			mpv			reg-copy		tlp-stat
atom			ebook-convert		htop			mr			reg-delete		tmux
atq			ebuild			htpasswd		msbuild			reg-export		tokei
atrm			echo			http			msg			reg-flags		tomb
attrib			ed			http-prompt		msmtp			reg-import		top
authconfig		edit			httpie			mtr			reg-load		touch
autoflake		edquota			hub			mutool			reg-query		tox
autojump		eject			hugo			mutt			reg-restore		tpp
autorandr		electrum		hwclock			mv			reg-save		tput
autossh			elinks			hyperfine		mvn			reg-unload		tr
avrdude			elm			i7z			mycli			rename			traceroute
awk			emacs			iconv			mysql			renice			traefik
aws			emacsclient		id			mysqldump		repair-bde		trans
aws-s3			ember			id3tag			n			repquota		transcode
axel			emerge			if			namei			repren			trap
az			enca			ifconfig		nano			reset			trash-cli
b2sum			enscript		ifdown			nasm			restic			tree
babel			entr			ifup			nc			rev			trizen
badblocks		env			ignite			ncat			rfkill			true
banner			envsubst		imapsync		ncdu			rg			truncate
base32			equery			imgcat			ncmpcpp			rm			tslint
base64			erl			imgp			ndctl			rmdir			tsort
basename		eslint			import			neofetch		rofi			tty
bash			espeak			in2csv			nethogs			roll			type
bashmarks		eval			infection		netstat			route			tzutil
bat			eventcreate		inkscape		networksetup		rpcinfo			ufraw-batch
batch			exa			inotify-wait		nft			rpm			ufw
bc			exiftool		install			ng			rspamc			ulimit
beanstalkd		exit			inxi			nginx			rsstail			umask
bedtools		expand			ionic			ngrep			rsync			umount
beep			export			ionice			nice			rtcwake			uname
berks			expr			ioping			nikto			rtorrent		unar
bg			eyeD3			iostat			nim			rtv			unexpand
blender			f5fpc			ip			nimble			rubocop			uniq
bmaptool		factor			ipcalc			nix-collect-garbage	ruby			units
bmon			fallocate		ipconfig		nix-env			run-mailcap		unlink
boot			false			ipcs			nl			runit			unrar
borg			fastboot		iperf			nm			runsv			unset
bosh			fatlabel		iperf3			nmap			runsvchdir		unzip
bower			fc			ipfs			nmcli			runsvdir		update-alternatives
box			fc-list			iptables		nmon			rustc			update-rc.d
brctl			fc-match		irssi			nmtui			rustfmt			updatedb
brew			fc-pattern		iscc			node			rustup			uprecords
brew-cask		fd			isoinfo			nohup			rvm			uptime
brew-mas		fdisk			iw			nokogiri		s			upx
brightness		fdupes			jar			noti			sails			useradd
browser-sync		feh			java			notify-send		salt			userdel
bundle			ffmpeg			javac			npm			salt-call		usermod
bup			ffprobe			jekyll			npm-check		salt-key		users
bw			fg			jest			nproc			salt-run		uuidgen
bzip2			figlet			jhat			npx			samtools		vagrant
c99			file			jmap			nrm			sar			valgrind
cabal			find			jobs			nslookup		sass			vault
caffeinate		findmnt			join			ntfsfix			say			vcsh
cal			findstr			journalctl		numfmt			sbatch			vegeta
calc			finger			jpegoptim		nvim			sc-im			ver
calibre-server		firejail		jps			nvm			scala			vgcreate
calibredb		firewall-cmd		jq			oathtool		scheme			view
cargo			fish			jrnl			objdump			scoop			viewnior
carthage		fisher			json5			od			scp			vim
case			fkill			jstack			odps			scrapy			vimdiff
cat			flac			julia			odps-auth		screen			vimtutor
cd			flatpak			jupyter			odps-func		screenfetch		virtualenv
certbot			flex			k6			odps-inst		script			visudo
chage			flutter			kafkacat		odps-resource		scutil			vncserver
chattr			fly			kak			odps-table		sdk			vncviewer
chflags			fold			keepass2		odps-tunnel		sed			vol
chgrp			fondue			kexec			omf			see			vsce
chkconfig		for			keybase			open			sendmail		vue
chmod			foreman			kill			opensnoop		sensible-browser	w
choco			forever			killall			openssl			seq			w3m
choco-feature		forfiles		knife			opkg			serverless		wacaw
choco-info		fortune			kompose			opt			service			wait
choco-install		fping			ksh			optipng			set			waitress-serve
choco-list		free			kube-fzf		osascript		setfacl			wall
choco-new		fsck			kubeadm			p4			sfc			wasm-objdump
choco-outdated		fswatch			kubectl			p5			sftp			wasm-opt
choco-pack		fswebcam		kubectx			pacaur			sh			wasm2c
choco-pin		ftp			kubens			paci			sha1sum			wasm2wat
choco-search		rainbows			kubetail		pacman			sha224sum		wat2wasm
choco-source		fuser			laravel			pamac			sha256sum		watch
choco-uninstall		fzf			last			pandoc			sha384sum		wc
choco-upgrade		g++			lastlog			parallel		sha512sum		weasyprint
chown			gatsby			latexmk			pass			shards			webpack
chromium		gcal			launchctl		passwd			shasum			webtorrent
chroot			gcc			ldconfig		paste			shc			wget
chsh			gcloud			ldd			pasuspender		shellcheck		whatis
cksum			gdb			leave			patch			shopt			where
clang			gdrive			lebab			path			shred			whereis
clear			gem			lein			pathping		shuf			which
clip			genkernel		less			pbcopy			shutdown		while
cloc			getent			lex			pbpaste			sigverif		who
cls			getfacl			license			pdfgrep			sinfo			whoami
cmake			geth			light			pdfjoin			singularity		wodim
cmark			getmac			light-arionum-cli	pdflatex		sips			wordgrinder
cmd			ghc			link			pdfposter		skicka			wpa_cli
cmp			gibo			live-server		pdftk			sl			wpa_supplicant
cmstp			gifsicle		lldb			pdftotext		slackcat		write
cmus			gist			ln			pdfunite		slapt-get		wuzz
code			git			loc			peerflix		sleep			x11vnc
codesign		git-add			locate			perf			slimrb			x_x
coffee			git-am			locust			perl			sm			xar
color			git-bisect		logger			pg_ctl			smartctl		xargs
column			git-blame		logname			pg_dump			smbclient		xattr
comm			git-branch		logoff			pg_restore		snap			xbps
command			git-checkout		logstash		pgrep			snapper			xclip
comp			git-cherry-pick		logwatch		phar			socat			xcodebuild
compgen			git-clean		lolcat			phing			softwareupdate		xcopy
complete		git-clone		look			phive			sort			xctool
compose			git-commit		lorem			php			source			xcv
composer		git-config		losetup			php-artisan		sox			xdotool
conda			git-diff		lp			php-yii			spatial			xed
conky			git-fetch		lpass			phpcpd			speedtest-cli		xeyes
consul			git-format-patch	lpstat			phpcs			spike			xfce4-terminal
consul-kv		git-gc			lrunzip			phpize			split			xinput
convert			git-imerge		lrzip			phploc			sqlite3			xman
convmv			git-init		lrztar			phpmd			sqlmap			xmllint
cordova			git-log			lrzuntar		phpstan			sqsc			xo
couchdb			git-merge		ls			phpunit			squeue			xrandr
cowsay			git-mv			lsattr			picard			srm			xsel
cp			git-pr			lsb_release		pigz			ss			xsetwacom
cpio			git-pull		lsblk			ping			ssh			xsltproc
cppcheck		git-push		lscpu			ping6			ssh-add			xsv
cppclean		git-rebase		lshw			pinky			ssh-copy-id		xtrlock
cpufreq-aperf		git-reflog		lsmod			pip			ssh-keygen		xxd
cpufreq-info		git-remote		lsof			pipenv			sshfs			xz
cpufreq-set		git-reset		lspci			pkgadd			sshpass			yank
cpuid			git-rm			lsscsi			pkginfo			sshuttle		yaourt
cradle			git-shortlog		lsusb			pkgmk			st-flash		yarn
cradle-deploy		git-show		ltrace			pkgrm			st-info			yay
cradle-elastic		git-sizer		lua			pkill			st-util			yes
cradle-install		git-stash		luac			play			stack			yesod
cradle-package		git-status		lumen			playerctl		standard		youtube-dl
cradle-sql		git-submodule		lvcreate		pm2			stat			yum
crontab			git-svn			lwp-request		pmset			stdbuf			z
cryptsetup		git-tag			lxc			pngcrush		stolonctl		zbarimg
crystal			git-worktree		lz4			pod			stow			zcat
csc			gitk			m			popd			strace			zdb
csplit			gitsome			m4			port			strings			zenity
csslint			glances			magento			ports			stty			zfs
csvclean		gnome-terminal		mailx			postcss			su			zip
csvcut			gnomon			make			poweroff		subfinder		zless
csvformat		gnuplot			makensis		prctl			subl			zopflipng
csvgrep			go			man			print			subliminal		zpool
csvlook			gocryptfs		mc			printenv		subst			zramctl
csvpy			godoc			md5			printf			sudo			zsh
csvsort			godot			md5sum			progpilot		sum			zstd
csvstat			gofmt			mdadm			prosodyctl		supervisorctl		zypper
ctest			gource			mdfind			protoc			supervisord
curl			gpasswd			mdp			prstat			surge
cut			gpg			mdutil			prt-get			sv
darkhttpd		gpg-zip			mediainfo		ps			svcadm
dash			gradle			meshlabserver		psgrep			svccfg
scott@scott-HP ~ $ 
Getting the syntax correct was often an issue for me, and always found examples were often so helpful. Now I don't even have to leave the terminal to find examples of commands I'm trying to use.

Hope others find this as useful as I do.
Last edited by LockBot on Wed Dec 28, 2022 7:16 am, edited 1 time in total.
Reason: Topic automatically closed 6 months after creation. New replies are no longer allowed.
User avatar
Pierre
Level 21
Level 21
Posts: 13226
Joined: Fri Sep 05, 2008 5:33 am
Location: Perth, AU.

Re: Man pages for idiots (like me)

Post by Pierre »

yeah - more Help Resources - are always Useful ..
8)
Image
Please edit your original post title to include [SOLVED] - when your problem is solved!
and DO LOOK at those Unanswered Topics - - you may be able to answer some!.
philotux

Re: Man pages for idiots (like me)

Post by philotux »

This surely looks like a great resource. Thank you for sharing!
User avatar
lsemmens
Level 11
Level 11
Posts: 3951
Joined: Wed Sep 10, 2014 9:07 pm
Location: Rural South Australia

Re: Man pages for idiots (like me)

Post by lsemmens »

I wish!
All I get is

Code: Select all

leigh@leigh-HP-Lappie:~$ tldr -l
Invalid option `-l'

Usage: tldr [-v|--version] [--update] COMMAND
  tldr Client program
leigh@leigh-HP-Lappie:~$ 
Fully mint Household
Out of my mind - please leave a message
User avatar
MrEen
Level 23
Level 23
Posts: 18343
Joined: Mon Jun 12, 2017 8:39 pm

Re: Man pages for idiots (like me)

Post by MrEen »

lsemmens wrote: Fri Jan 18, 2019 11:42 pm I wish!
All I get is

Code: Select all

leigh@leigh-HP-Lappie:~$ tldr -l
Invalid option `-l'

Usage: tldr [-v|--version] [--update] COMMAND
  tldr Client program
leigh@leigh-HP-Lappie:~$ 
Did you just install or had it a while? See if tldr --update fixes that.
User avatar
lsemmens
Level 11
Level 11
Posts: 3951
Joined: Wed Sep 10, 2014 9:07 pm
Location: Rural South Australia

Re: Man pages for idiots (like me)

Post by lsemmens »

I just installed it. and update did not fix it.
Fully mint Household
Out of my mind - please leave a message
User avatar
karlchen
Level 23
Level 23
Posts: 18228
Joined: Sat Dec 31, 2011 7:21 am
Location: Germany

Re: Man pages for idiots (like me)

Post by karlchen »

Hi, MrEen.
MrEen wrote: Fri Jan 18, 2019 11:21 pmJust found a great resource for those that prefer examples that so many man pages never include: https://github.com/raylee/tldr
Great! Thanks for sharing it with us. :D
Examples can be extremely useful in order to help understand correctly, they are definitely not just for idiots. I would not consider myself an idiot, because I learn from examples.
It is a pity that so many manpages do not give (good) examples.

Cheers,
Karl
Image
The people of Alderaan have been bravely fighting back the clone warriors sent out by the unscrupulous Sith Lord Palpatine for 792 days now.
Lifeline
philotux

Re: Man pages for idiots (like me)

Post by philotux »

Followed exactly the steps provided, buttldr -lgives:

Code: Select all

bash: tldr: command not found
However./bin/tldr -lproduces the correct output.
:?:
User avatar
karlchen
Level 23
Level 23
Posts: 18228
Joined: Sat Dec 31, 2011 7:21 am
Location: Germany

Re: Man pages for idiots (like me)

Post by karlchen »

Hello, philotux.

This suggests that your directory ~/bin is not listed in your $PATH variable. Check by executing echo $PATH.

Regards,
Karl
Image
The people of Alderaan have been bravely fighting back the clone warriors sent out by the unscrupulous Sith Lord Palpatine for 792 days now.
Lifeline
User avatar
AndyMH
Level 21
Level 21
Posts: 13749
Joined: Fri Mar 04, 2016 5:23 pm
Location: Wiltshire

Re: Man pages for idiots (like me)

Post by AndyMH »

Thanks, v useful given that, at best, I know how to use 10% of those commands.
Thinkcentre M720Q - LM21.3 cinnamon, 4 x T430 - LM21.3 cinnamon, Homebrew desktop i5-8400+GTX1080 Cinnamon 19.0
User avatar
smurphos
Level 18
Level 18
Posts: 8498
Joined: Fri Sep 05, 2014 12:18 am
Location: Irish Brit in Portugal
Contact:

Re: Man pages for idiots (like me)

Post by smurphos »

philotux wrote: Sat Jan 19, 2019 8:19 am Followed exactly the steps provided, buttldr -lgives:

Code: Select all

bash: tldr: command not found
However./bin/tldr -lproduces the correct output.
:?:
A log off and log back in will automagically add ./bin to your $PATH now that the folder exists.
For custom Nemo actions, useful scripts for the Cinnamon desktop, and Cinnamox themes visit my Github pages.
Hoser Rob
Level 20
Level 20
Posts: 11796
Joined: Sat Dec 15, 2012 8:57 am

Re: Man pages for idiots (like me)

Post by Hoser Rob »

Good resource. You have to remember that Unix/Linux man pages were never meant for beginners. They're for people who actually understand what the program does but have forgotten a bit of the syntax.
For every complex problem there is an answer that is clear, simple, and wrong - H. L. Mencken
philotux

Re: Man pages for idiots (like me)

Post by philotux »

smurphos wrote: Sat Jan 19, 2019 10:13 am A log off and log back in will automagically add ./bin to your $PATH now that the folder exists.
That was automagic!
Thanks!
redlined

Re: Man pages for idiots (like me)

Post by redlined »

MrEen wrote: Fri Jan 18, 2019 11:21 pm Just found a great resource for those that prefer examples that so many man pages never include: https://github.com/raylee/tldr
nice find MrEen! this will really really be helpful... not to mention, really helpful! :mrgreen:

One thing I don't understand is what exactly does "expire" mean? what actually happens after 14 days?
from tldr -h
The client caches a copy of all pages and the index locally under
/home/username/.config/tldr . By default, the cached copies will expire in 14 days.
and see from the flags/options available -u, -c, --update: update, force retrieving latest copies of locally cached files is this telling me basically of a need to use tldr -u (or -c or --update) to redownload/curl the git master every two weeks to ensure latest files?
User avatar
smurphos
Level 18
Level 18
Posts: 8498
Joined: Fri Sep 05, 2014 12:18 am
Location: Irish Brit in Portugal
Contact:

Re: Man pages for idiots (like me)

Post by smurphos »

Hoser Rob wrote: Sat Jan 19, 2019 10:32 am Good resource. You have to remember that Unix/Linux man pages were never meant for beginners. They're for people who actually understand what the program does but have forgotten a bit of the syntax.
How exactly do beginner's learn then?

When I was a newbie not so long ago I learnt a lot by checking out commands from tutorials / forum posts with <command> --help and man <command>. Admittedly a lot of it didn't make sense at the time, but it sunk in somewhere.
For custom Nemo actions, useful scripts for the Cinnamon desktop, and Cinnamox themes visit my Github pages.
User avatar
smurphos
Level 18
Level 18
Posts: 8498
Joined: Fri Sep 05, 2014 12:18 am
Location: Irish Brit in Portugal
Contact:

Re: Man pages for idiots (like me)

Post by smurphos »

redlined wrote: Sat Jan 19, 2019 11:01 am and see from the flags/options available -u, -c, --update: update, force retrieving latest copies of locally cached files is this telling me basically of a need to use tldr -u (or -c or --update) to redownload/curl the git master every two weeks to ensure latest files?
No it auto-updates if the cached entry is more than 14 days old.

For info this is the repo with the entries - https://github.com/tldr-pages/tldr - it's a community project. I'm sure us Mint-users can help.
For custom Nemo actions, useful scripts for the Cinnamon desktop, and Cinnamox themes visit my Github pages.
redlined

Re: Man pages for idiots (like me)

Post by redlined »

smurphos wrote: Sat Jan 19, 2019 11:39 am
redlined wrote: Sat Jan 19, 2019 11:01 am is this telling me basically of a need to use tldr -u (or -c or --update) to redownload/curl the git master every two weeks to ensure latest files?
No it auto-updates if the cached entry is more than 14 days old.
got it, thank you for clarifying!
smurphos wrote: For info this is the repo with the entries - https://github.com/tldr-pages/tldr - it's a community project. I'm sure us Mint-users can help.
sweet, as well https://github.com/tldr-pages/tldr#similar-projects (more infos = less dangerous :mrgreen:

edit to add: :idea: GMTA
and.... cool tool that: "Covers 56 programming languages, several DBMSes, and more than 1000 most important UNIX/Linux commands."
Hoser Rob
Level 20
Level 20
Posts: 11796
Joined: Sat Dec 15, 2012 8:57 am

Re: Man pages for idiots (like me)

Post by Hoser Rob »

smurphos wrote: Sat Jan 19, 2019 11:29 am
Hoser Rob wrote: Sat Jan 19, 2019 10:32 am Good resource. You have to remember that Unix/Linux man pages were never meant for beginners. They're for people who actually understand what the program does but have forgotten a bit of the syntax.
How exactly do beginner's learn then? ...
From places like this of course. Linux doesn't make system administration particularly easy and I don't think it will any time soon. That's one of the reasons I don't recommend Linux newbies over write all their Windows for a while. They may not be willing or able to get over the learning curve.
For every complex problem there is an answer that is clear, simple, and wrong - H. L. Mencken
User avatar
xenopeek
Level 25
Level 25
Posts: 29614
Joined: Wed Jul 06, 2011 3:58 am

Re: Man pages for idiots (like me)

Post by xenopeek »

I like that's turned into a kind of Rosetta stone for programming languages, with tldr clients available in two dozen different programming languages :mrgreen: Pick you favorite from https://github.com/tldr-pages/tldr#clients.

I went for the tealdeer client written in Rust because it has an offline cache. Fiddling with configuration to make it use the colors I want.
Image
jazznerd

Re: Man pages for idiots (like me)

Post by jazznerd »

hi,i've installed TLDR with
used terminlal commands on the top of this tread to instal TLDR using Node.js method
mentioned in this tutorial : https://itsfoss.com/tldr-linux-man-pages-simplified/
$ sudo a install nodejs npm
$ sudo npm install -g tldr
$ tldr --update

it seemed to download TLDR and installed bunch of files..
but TLDR doesn't work ... " no such file or directory"

Than i've tried commands from the top of this thread to install TooLongDidn'tRead
getting same error
/usr/bin/env: ‘node’: No such file or directory
[/b]

i am on Linux Mint 18.3 and a newbe, sorry
thanks in advance for any tips on installation
jazznerd
Locked

Return to “Chat about Linux”