Linux vmi2545633.contaboserver.net 6.1.0-32-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.129-1 (2025-03-06) x86_64
Apache/2.4.62 (Debian)
Server IP : 127.0.0.1 & Your IP : 127.0.0.1
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
bin /
Delete
Unzip
Name
Size
Permission
Date
Action
X11
[ DIR ]
drwxr-xr-x
2025-10-09 10:16
[
66.89
KB
-rwxr-xr-x
2022-09-20 15:27
aa-enabled
18.23
KB
-rwxr-xr-x
2023-02-14 11:49
aa-exec
18.23
KB
-rwxr-xr-x
2023-02-14 11:49
aa-features-abi
18.23
KB
-rwxr-xr-x
2023-02-14 11:49
ab
58.42
KB
-rwxr-xr-x
2024-10-04 15:21
aclocal
35.18
KB
-rwxr-xr-x
2022-03-18 13:09
aclocal-1.16
35.18
KB
-rwxr-xr-x
2022-03-18 13:09
add-apt-repository
14.1
KB
-rwxr-xr-x
2024-05-17 12:23
addpart
30.31
KB
-rwxr-xr-x
2024-11-21 20:01
addr2line
23.14
KB
-rwxr-xr-x
2023-01-14 17:24
appstreamcli
128.12
KB
-rwxr-xr-x
2023-05-28 15:10
apropos
51.29
KB
-rwxr-xr-x
2023-03-12 22:23
apt
18.31
KB
-rwxr-xr-x
2023-05-25 14:11
apt-add-repository
14.1
KB
-rwxr-xr-x
2024-05-17 12:23
apt-cache
86.38
KB
-rwxr-xr-x
2023-05-25 14:11
apt-cdrom
22.38
KB
-rwxr-xr-x
2023-05-25 14:11
apt-config
26.31
KB
-rwxr-xr-x
2023-05-25 14:11
apt-extracttemplates
22.39
KB
-rwxr-xr-x
2023-05-25 14:11
apt-ftparchive
270.39
KB
-rwxr-xr-x
2023-05-25 14:11
apt-get
50.38
KB
-rwxr-xr-x
2023-05-25 14:11
apt-key
27.32
KB
-rwxr-xr-x
2023-05-25 14:11
apt-listchanges
11.96
KB
-rwxr-xr-x
2021-03-28 11:06
apt-mark
58.38
KB
-rwxr-xr-x
2023-05-25 14:11
apt-sortpkgs
38.32
KB
-rwxr-xr-x
2023-05-25 14:11
ar
51.17
KB
-rwxr-xr-x
2023-01-14 17:24
arch
42.86
KB
-rwxr-xr-x
2022-09-20 15:27
aria_chk
5.49
MB
-rwxr-xr-x
2025-02-19 00:56
aria_dump_log
5.29
MB
-rwxr-xr-x
2025-02-19 00:56
aria_ftdump
5.3
MB
-rwxr-xr-x
2025-02-19 00:56
aria_pack
5.33
MB
-rwxr-xr-x
2025-02-19 00:56
aria_read_log
5.44
MB
-rwxr-xr-x
2025-02-19 00:56
as
897.41
KB
-rwxr-xr-x
2023-01-14 17:24
autoconf
14.85
KB
-rwxr-xr-x
2023-01-14 17:42
autoheader
8.82
KB
-rwxr-xr-x
2023-01-14 17:42
autom4te
32.69
KB
-rwxr-xr-x
2023-01-14 17:42
automake
255.91
KB
-rwxr-xr-x
2022-03-18 13:09
automake-1.16
255.91
KB
-rwxr-xr-x
2022-03-18 13:09
autopoint
26.38
KB
-rwxr-xr-x
2023-02-26 15:20
autoreconf
26.3
KB
-rwxr-xr-x
2023-01-14 17:42
autoscan
16.77
KB
-rwxr-xr-x
2023-01-14 17:42
autoupdate
33.22
KB
-rwxr-xr-x
2023-01-14 17:42
awk
696.44
KB
-rwxr-xr-x
2023-02-19 13:30
b2sum
58.98
KB
-rwxr-xr-x
2022-09-20 15:27
base32
46.89
KB
-rwxr-xr-x
2022-09-20 15:27
base64
46.89
KB
-rwxr-xr-x
2022-09-20 15:27
basename
42.83
KB
-rwxr-xr-x
2022-09-20 15:27
basenc
54.89
KB
-rwxr-xr-x
2022-09-20 15:27
bash
1.21
MB
-rwxr-xr-x
2024-03-29 19:40
bashbug
6.7
KB
-rwxr-xr-x
2024-03-29 19:40
bsondump
11.03
MB
-rwxr-xr-x
2025-04-01 15:22
buildhash
46.63
KB
-rwxr-xr-x
2022-03-29 18:19
bunzip2
38.3
KB
-rwxr-xr-x
2022-09-19 02:54
busctl
90.5
KB
-rwxr-xr-x
2025-03-06 14:56
busybox
754.77
KB
-rwxr-xr-x
2023-04-23 21:24
bzcat
38.3
KB
-rwxr-xr-x
2022-09-19 02:54
bzcmp
2.17
KB
-rwxr-xr-x
2022-09-19 02:54
bzdiff
2.17
KB
-rwxr-xr-x
2022-09-19 02:54
bzegrep
3.69
KB
-rwxr-xr-x
2022-09-19 02:54
bzexe
4.78
KB
-rwxr-xr-x
2021-11-27 12:25
bzfgrep
3.69
KB
-rwxr-xr-x
2022-09-19 02:54
bzgrep
3.69
KB
-rwxr-xr-x
2022-09-19 02:54
bzip2
38.3
KB
-rwxr-xr-x
2022-09-19 02:54
bzip2recover
14.23
KB
-rwxr-xr-x
2022-09-19 02:54
bzless
1.27
KB
-rwxr-xr-x
2022-09-19 02:54
bzmore
1.27
KB
-rwxr-xr-x
2022-09-19 02:54
c++
1.25
MB
-rwxr-xr-x
2023-01-08 09:12
c++filt
18.51
KB
-rwxr-xr-x
2023-01-14 17:24
c89
428
B
-rwxr-xr-x
2020-11-17 18:53
c89-gcc
428
B
-rwxr-xr-x
2020-11-17 18:53
c99
454
B
-rwxr-xr-x
2020-11-17 18:53
c99-gcc
454
B
-rwxr-xr-x
2020-11-17 18:53
c_rehash
6.68
KB
-rwxr-xr-x
2024-10-27 14:16
captoinfo
90.34
KB
-rwxr-xr-x
2023-05-07 14:33
cat
42.98
KB
-rwxr-xr-x
2022-09-20 15:27
catman
42.77
KB
-rwxr-xr-x
2023-03-12 22:23
cc
1.24
MB
-rwxr-xr-x
2023-01-08 09:12
certbot
958
B
-rwxr-xr-x
2023-04-16 05:22
cgi-fcgi
18
KB
-rwxr-xr-x
2021-01-11 05:57
chage
78.49
KB
-rwxr-sr-x
2023-03-23 12:40
chardet
221
B
-rwxr-xr-x
2022-12-26 14:42
chardetect
221
B
-rwxr-xr-x
2022-12-26 14:42
chattr
14.24
KB
-rwxr-xr-x
2023-03-05 03:16
chcon
67.11
KB
-rwxr-xr-x
2022-09-20 15:27
checkgid
14.23
KB
-rwxr-xr-x
2024-10-04 15:21
chfn
61.2
KB
-rwsr-xr-x
2023-03-23 12:40
chgrp
67.05
KB
-rwxr-xr-x
2022-09-20 15:27
chmod
62.98
KB
-rwxr-xr-x
2022-09-20 15:27
choom
54.31
KB
-rwxr-xr-x
2024-11-21 20:01
chown
71.05
KB
-rwxr-xr-x
2022-09-20 15:27
chrt
66.31
KB
-rwxr-xr-x
2024-11-21 20:01
chsh
51.64
KB
-rwsr-xr-x
2023-03-23 12:40
chvt
14.57
KB
-rwxr-xr-x
2023-03-23 09:34
ckbcomp
147.14
KB
-rwxr-xr-x
2023-05-21 21:30
cksum
139.05
KB
-rwxr-xr-x
2022-09-20 15:27
clear
14.24
KB
-rwxr-xr-x
2023-05-07 14:33
clear_console
14.15
KB
-rwxr-xr-x
2024-03-29 19:40
cmp
50.95
KB
-rwxr-xr-x
2023-02-03 19:00
codepage
14.41
KB
-rwxr-xr-x
2023-03-23 09:34
col
34.31
KB
-rwxr-xr-x
2024-11-21 20:01
colcrt
14.31
KB
-rwxr-xr-x
2024-11-21 20:01
colrm
30.31
KB
-rwxr-xr-x
2024-11-21 20:01
column
54.31
KB
-rwxr-xr-x
2024-11-21 20:01
comm
46.92
KB
-rwxr-xr-x
2022-09-20 15:27
compose
18.06
KB
-rwxr-xr-x
2021-11-29 13:07
corelist
15.01
KB
-rwxr-xr-x
2023-11-25 20:59
corepack
132
B
-rwxr-xr-x
2024-02-26 06:00
cp
147.61
KB
-rwxr-xr-x
2022-09-20 15:27
cpan
8.16
KB
-rwxr-xr-x
2023-11-25 20:59
cpan5.36-x86_64-linux-gnu
8.18
KB
-rwxr-xr-x
2023-11-25 20:59
cpio
158.56
KB
-rwxr-xr-x
2022-09-14 19:45
cpio-filter
1.22
KB
-rwxr-xr-x
2022-11-19 21:25
cpp
1.24
MB
-rwxr-xr-x
2023-01-08 09:12
cpp-12
1.24
MB
-rwxr-xr-x
2023-01-08 09:12
crc32
1.04
KB
-rwxr-xr-x
2020-03-14 12:52
crontab
42.63
KB
-rwxr-sr-x
2023-03-02 07:33
csplit
119.17
KB
-rwxr-xr-x
2022-09-20 15:27
ctstat
26.59
KB
-rwxr-xr-x
2023-05-22 13:19
curl
274.22
KB
-rwxr-xr-x
2025-03-09 10:45
cut
46.98
KB
-rwxr-xr-x
2022-09-20 15:27
cvtsudoers
337.19
KB
-rwxr-xr-x
2023-06-27 11:45
dash
122.7
KB
-rwxr-xr-x
2023-01-05 13:20
date
119.05
KB
-rwxr-xr-x
2022-09-20 15:27
dbilogstrip
1.35
KB
-rwxr-xr-x
2022-11-19 21:14
dbiprof
6.06
KB
-rwxr-xr-x
2022-11-19 21:14
dbiproxy
5.27
KB
-rwxr-xr-x
2022-11-19 21:14
dbus-cleanup-sockets
14.22
KB
-rwxr-xr-x
2023-09-16 10:03
dbus-daemon
238.56
KB
-rwxr-xr-x
2023-09-16 10:03
dbus-monitor
26.23
KB
-rwxr-xr-x
2023-09-16 10:03
dbus-run-session
14.23
KB
-rwxr-xr-x
2023-09-16 10:03
dbus-send
30.22
KB
-rwxr-xr-x
2023-09-16 10:03
dbus-update-activation-environment
14.22
KB
-rwxr-xr-x
2023-09-16 10:03
dbus-uuidgen
14.22
KB
-rwxr-xr-x
2023-09-16 10:03
dd
87.15
KB
-rwxr-xr-x
2022-09-20 15:27
deallocvt
14.53
KB
-rwxr-xr-x
2023-03-23 09:34
deb-systemd-helper
23.79
KB
-rwxr-xr-x
2022-07-09 00:05
deb-systemd-invoke
6.09
KB
-rwxr-xr-x
2022-07-02 15:23
debconf
2.79
KB
-rwxr-xr-x
2023-01-08 21:50
debconf-apt-progress
11.27
KB
-rwxr-xr-x
2023-01-08 21:50
debconf-communicate
608
B
-rwxr-xr-x
2023-01-08 21:50
debconf-copydb
1.68
KB
-rwxr-xr-x
2023-01-08 21:50
debconf-escape
647
B
-rwxr-xr-x
2023-01-08 21:50
debconf-gettextize
15.97
KB
-rwxr-xr-x
2020-12-30 01:09
debconf-set-selections
2.92
KB
-rwxr-xr-x
2023-01-08 21:50
debconf-show
1.78
KB
-rwxr-xr-x
2023-01-08 21:50
debconf-updatepo
4.46
KB
-rwxr-xr-x
2020-12-30 01:09
debianbts
217
B
-rwxr-xr-x
2022-12-08 11:34
defmt-c
14.23
KB
-rwxr-xr-x
2022-03-29 18:19
defmt-sh
14.23
KB
-rwxr-xr-x
2022-03-29 18:19
delpart
30.31
KB
-rwxr-xr-x
2024-11-21 20:01
delv
41.3
KB
-rwxr-xr-x
2025-01-25 10:14
df
99.8
KB
-rwxr-xr-x
2022-09-20 15:27
dh
28.85
KB
-rwxr-xr-x
2023-01-02 14:54
dh_assistant
20.34
KB
-rwxr-xr-x
2023-01-02 14:54
dh_auto_build
1.37
KB
-rwxr-xr-x
2023-01-02 14:54
dh_auto_clean
1.51
KB
-rwxr-xr-x
2023-01-02 14:54
dh_auto_configure
1.63
KB
-rwxr-xr-x
2023-01-02 14:54
dh_auto_install
3.22
KB
-rwxr-xr-x
2023-01-02 14:54
dh_auto_test
1.65
KB
-rwxr-xr-x
2023-01-02 14:54
dh_autoreconf
6.46
KB
-rwxr-xr-x
2021-02-04 11:26
dh_autoreconf_clean
2.1
KB
-rwxr-xr-x
2021-02-04 11:26
dh_autotools-dev_restoreconfig
1.79
KB
-rwxr-xr-x
2022-01-31 14:43
dh_autotools-dev_updateconfig
1.81
KB
-rwxr-xr-x
2022-01-31 14:43
dh_bash-completion
4.31
KB
-rwxr-xr-x
2021-08-28 15:26
dh_bugfiles
3.58
KB
-rwxr-xr-x
2023-01-02 14:54
dh_builddeb
4.79
KB
-rwxr-xr-x
2023-01-02 14:54
dh_clean
5.03
KB
-rwxr-xr-x
2023-01-02 14:54
dh_compress
7.67
KB
-rwxr-xr-x
2023-01-02 14:54
dh_dwz
4.99
KB
-rwxr-xr-x
2023-01-02 14:54
dh_fixperms
5.29
KB
-rwxr-xr-x
2023-01-02 14:54
dh_gencontrol
5.88
KB
-rwxr-xr-x
2023-01-02 14:54
dh_icons
2.04
KB
-rwxr-xr-x
2023-01-02 14:54
dh_install
12.16
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installalternatives
6.61
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installcatalogs
3.33
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installchangelogs
11.57
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installcron
1.65
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installdeb
12.71
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installdebconf
6.69
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installdirs
3.09
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installdocs
14.65
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installemacsen
3.74
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installexamples
5.65
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installgsettings
2.24
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installifupdown
1.47
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installinfo
3.38
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installinit
13.96
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installinitramfs
2.5
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installlogcheck
1.94
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installlogrotate
1.14
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installman
13.37
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installmanpages
4.89
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installmenu
2.15
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installmime
1.3
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installmodules
2.66
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installpam
1.42
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installppp
1.38
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installsystemd
14.06
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installsystemduser
8.36
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installsysusers
2.98
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installtmpfiles
3.24
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installudev
2.1
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installwm
3.3
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installxfonts
2.8
KB
-rwxr-xr-x
2023-01-02 14:54
dh_installxmlcatalogs
9.22
KB
-rwxr-xr-x
2019-02-27 00:18
dh_link
4.32
KB
-rwxr-xr-x
2023-01-02 14:54
dh_lintian
1.29
KB
-rwxr-xr-x
2023-01-02 14:54
dh_listpackages
825
B
-rwxr-xr-x
2023-01-02 14:54
dh_makeshlibs
15.12
KB
-rwxr-xr-x
2023-01-02 14:54
dh_md5sums
3.46
KB
-rwxr-xr-x
2023-01-02 14:54
dh_missing
8.75
KB
-rwxr-xr-x
2023-01-02 14:54
dh_movefiles
4.69
KB
-rwxr-xr-x
2023-01-02 14:54
dh_perl
5.03
KB
-rwxr-xr-x
2023-01-02 14:54
dh_perl_dbi
1.17
KB
-rwxr-xr-x
2022-11-19 21:14
dh_phpcomposer
3.01
KB
-rwxr-xr-x
2023-01-28 15:13
dh_phppear
5.63
KB
-rwxr-xr-x
2023-01-28 15:13
dh_prep
1.87
KB
-rwxr-xr-x
2023-01-02 14:54
dh_shlibdeps
6.24
KB
-rwxr-xr-x
2023-01-02 14:54
dh_strip
14.85
KB
-rwxr-xr-x
2023-01-02 14:54
dh_strip_nondeterminism
3.12
KB
-rwxr-xr-x
2023-01-15 19:53
dh_systemd_enable
8.98
KB
-rwxr-xr-x
2023-01-02 14:54
dh_systemd_start
8.57
KB
-rwxr-xr-x
2023-01-02 14:54
dh_testdir
1.31
KB
-rwxr-xr-x
2023-01-02 14:54
dh_testroot
2.91
KB
-rwxr-xr-x
2023-01-02 14:54
dh_ucf
2.38
KB
-rwxr-xr-x
2023-01-02 14:54
dh_update_autotools_config
1.84
KB
-rwxr-xr-x
2023-01-02 14:54
dh_usrlocal
4.2
KB
-rwxr-xr-x
2023-01-02 14:54
diff
151.58
KB
-rwxr-xr-x
2023-02-03 19:00
diff3
67.14
KB
-rwxr-xr-x
2023-02-03 19:00
dig
138.77
KB
-rwxr-xr-x
2025-01-25 10:14
dir
147.8
KB
-rwxr-xr-x
2022-09-20 15:27
dircolors
50.92
KB
-rwxr-xr-x
2022-09-20 15:27
dirmngr
586.13
KB
-rwxr-xr-x
2023-03-26 13:03
dirmngr-client
106.87
KB
-rwxr-xr-x
2023-03-26 13:03
dirname
38.83
KB
-rwxr-xr-x
2022-09-20 15:27
discover-config
2.87
KB
-rwxr-xr-x
2022-01-09 07:48
dmesg
86.58
KB
-rwxr-xr-x
2024-11-21 20:01
dnsdomainname
22.15
KB
-rwxr-xr-x
2022-12-19 13:33
dnstap-read
18.33
KB
-rwxr-xr-x
2025-01-25 10:14
domainname
22.15
KB
-rwxr-xr-x
2022-12-19 13:33
dotlockfile
22.5
KB
-rwxr-sr-x
2021-02-04 15:18
dpkg
310.64
KB
-rwxr-xr-x
2023-05-11 02:04
dpkg-architecture
14.85
KB
-rwxr-xr-x
2023-05-11 02:04
dpkg-buildflags
8.14
KB
-rwxr-xr-x
2023-05-11 02:04
dpkg-buildpackage
32.63
KB
-rwxr-xr-x
2023-05-11 02:04
dpkg-checkbuilddeps
7.45
KB
-rwxr-xr-x
2023-05-11 02:04
dpkg-deb
166.52
KB
-rwxr-xr-x
2023-05-11 02:04
dpkg-distaddfile
2.72
KB
-rwxr-xr-x
2023-05-11 02:04
dpkg-divert
154.55
KB
-rwxr-xr-x
2023-05-11 02:04
dpkg-genbuildinfo
18.48
KB
-rwxr-xr-x
2023-05-11 02:04
dpkg-genchanges
17.39
KB
-rwxr-xr-x
2023-05-11 02:04
dpkg-gencontrol
14.2
KB
-rwxr-xr-x
2023-05-11 02:04
dpkg-gensymbols
10.65
KB
-rwxr-xr-x
2023-05-11 02:04
dpkg-maintscript-helper
20.71
KB
-rwxr-xr-x
2023-05-11 02:04
dpkg-mergechangelogs
8.88
KB
-rwxr-xr-x
2023-05-11 02:04
dpkg-name
6.62
KB
-rwxr-xr-x
2023-05-11 02:04
dpkg-parsechangelog
4.83
KB
-rwxr-xr-x
2023-05-11 02:04
dpkg-query
158.58
KB
-rwxr-xr-x
2023-05-11 02:04
dpkg-realpath
4.09
KB
-rwxr-xr-x
2023-05-11 02:04
dpkg-scanpackages
8.47
KB
-rwxr-xr-x
2023-05-11 02:04
dpkg-scansources
8.98
KB
-rwxr-xr-x
2023-05-11 02:04
dpkg-shlibdeps
31.17
KB
-rwxr-xr-x
2023-05-11 02:04
dpkg-source
22.91
KB
-rwxr-xr-x
2023-05-11 02:04
dpkg-split
126.48
KB
-rwxr-xr-x
2023-05-11 02:04
dpkg-statoverride
62.33
KB
-rwxr-xr-x
2023-05-11 02:04
dpkg-trigger
86.48
KB
-rwxr-xr-x
2023-05-11 02:04
dpkg-vendor
3.18
KB
-rwxr-xr-x
2023-05-11 02:04
du
171.33
KB
-rwxr-xr-x
2022-09-20 15:27
dumpkeys
175.13
KB
-rwxr-xr-x
2023-03-23 09:34
dwp
1.79
MB
-rwxr-xr-x
2023-01-14 17:24
dwz
237.66
KB
-rwxr-xr-x
2022-12-26 10:45
echo
42.83
KB
-rwxr-xr-x
2022-09-20 15:27
edit
18.06
KB
-rwxr-xr-x
2021-11-29 13:07
editor
280.74
KB
-rwxr-xr-x
2024-05-06 06:10
egrep
41
B
-rwxr-xr-x
2023-01-24 14:43
eject
82.16
KB
-rwxr-xr-x
2024-11-21 20:01
elfedit
35.03
KB
-rwxr-xr-x
2023-01-14 17:24
enc2xs
40.96
KB
-rwxr-xr-x
2023-11-25 20:59
encguess
3
KB
-rwxr-xr-x
2023-11-25 20:59
env
47.4
KB
-rwxr-xr-x
2022-09-20 15:27
envsubst
34.31
KB
-rwxr-xr-x
2023-02-26 15:20
eqn
205.42
KB
-rwxr-xr-x
2023-03-07 09:38
ex
1.55
MB
-rwxr-xr-x
2025-02-16 05:23
expand
42.92
KB
-rwxr-xr-x
2022-09-20 15:27
expiry
30.45
KB
-rwxr-sr-x
2023-03-23 12:40
expr
115.05
KB
-rwxr-xr-x
2022-09-20 15:27
factor
83.2
KB
-rwxr-xr-x
2022-09-20 15:27
faillog
22.53
KB
-rwxr-xr-x
2023-03-23 12:40
faked-sysv
34.76
KB
-rwxr-xr-x
2023-03-18 09:22
faked-tcp
34.78
KB
-rwxr-xr-x
2023-03-18 09:22
fakeroot
3.9
KB
-rwxr-xr-x
2023-03-18 09:22
fakeroot-sysv
3.9
KB
-rwxr-xr-x
2023-03-18 09:22
fakeroot-tcp
3.9
KB
-rwxr-xr-x
2023-03-18 09:22
fallocate
34.31
KB
-rwxr-xr-x
2024-11-21 20:01
false
34.83
KB
-rwxr-xr-x
2022-09-20 15:27
fc-cache
18.59
KB
-rwxr-xr-x
2023-01-31 22:24
fc-cat
18.52
KB
-rwxr-xr-x
2023-01-31 22:24
fc-conflist
14.34
KB
-rwxr-xr-x
2023-01-31 22:24
fc-list
14.4
KB
-rwxr-xr-x
2023-01-31 22:24
fc-match
14.47
KB
-rwxr-xr-x
2023-01-31 22:24
fc-pattern
14.39
KB
-rwxr-xr-x
2023-01-31 22:24
fc-query
14.36
KB
-rwxr-xr-x
2023-01-31 22:24
fc-scan
14.42
KB
-rwxr-xr-x
2023-01-31 22:24
fc-validate
14.41
KB
-rwxr-xr-x
2023-01-31 22:24
fcgistarter
14.23
KB
-rwxr-xr-x
2024-10-04 15:21
fgconsole
14.52
KB
-rwxr-xr-x
2023-03-23 09:34
fgrep
41
B
-rwxr-xr-x
2023-01-24 14:43
filan
96.02
KB
-rwxr-xr-x
2022-11-06 08:15
file
26.48
KB
-rwxr-xr-x
2023-01-28 18:17
fincore
34.36
KB
-rwxr-xr-x
2024-11-21 20:01
find
219.58
KB
-rwxr-xr-x
2023-01-08 18:07
findaffix
11.74
KB
-rwxr-xr-x
2022-03-29 18:19
findmnt
83.59
KB
-rwxr-xr-x
2024-11-21 20:01
flock
34.39
KB
-rwxr-xr-x
2024-11-21 20:01
fmt
46.89
KB
-rwxr-xr-x
2022-09-20 15:27
fold
42.89
KB
-rwxr-xr-x
2022-09-20 15:27
free
26.3
KB
-rwxr-xr-x
2022-12-19 06:06
funzip
22.46
KB
-rwxr-xr-x
2023-02-19 18:02
fuser
39.83
KB
-rwxr-xr-x
2022-12-13 05:27
g++
1.25
MB
-rwxr-xr-x
2023-01-08 09:12
g++-12
1.25
MB
-rwxr-xr-x
2023-01-08 09:12
galera_new_cluster
917
B
-rwxr-xr-x
2025-02-19 00:56
galera_recovery
3.29
KB
-rwxr-xr-x
2025-02-19 00:56
gapplication
22.31
KB
-rwxr-xr-x
2024-11-14 09:42
gawk
696.44
KB
-rwxr-xr-x
2023-02-19 13:30
gawkbug
6.54
KB
-rwxr-xr-x
2023-02-19 13:30
gcc
1.24
MB
-rwxr-xr-x
2023-01-08 09:12
gcc-12
1.24
MB
-rwxr-xr-x
2023-01-08 09:12
gcc-ar
34.54
KB
-rwxr-xr-x
2023-01-08 09:12
gcc-ar-12
34.54
KB
-rwxr-xr-x
2023-01-08 09:12
gcc-nm
34.54
KB
-rwxr-xr-x
2023-01-08 09:12
gcc-nm-12
34.54
KB
-rwxr-xr-x
2023-01-08 09:12
gcc-ranlib
34.54
KB
-rwxr-xr-x
2023-01-08 09:12
gcc-ranlib-12
34.54
KB
-rwxr-xr-x
2023-01-08 09:12
gcov
720.16
KB
-rwxr-xr-x
2023-01-08 09:12
gcov-12
720.16
KB
-rwxr-xr-x
2023-01-08 09:12
gcov-dump
568.02
KB
-rwxr-xr-x
2023-01-08 09:12
gcov-dump-12
568.02
KB
-rwxr-xr-x
2023-01-08 09:12
gcov-tool
588.09
KB
-rwxr-xr-x
2023-01-08 09:12
gcov-tool-12
588.09
KB
-rwxr-xr-x
2023-01-08 09:12
gdbus
50.31
KB
-rwxr-xr-x
2024-11-14 09:42
gencat
26.75
KB
-rwxr-xr-x
2025-03-06 22:46
geqn
205.42
KB
-rwxr-xr-x
2023-03-07 09:38
getconf
26.5
KB
-rwxr-xr-x
2025-03-06 22:46
getent
35.47
KB
-rwxr-xr-x
2025-03-06 22:46
getkeycodes
14.53
KB
-rwxr-xr-x
2023-03-23 09:34
getopt
34.31
KB
-rwxr-xr-x
2024-11-21 20:01
gettext
34.31
KB
-rwxr-xr-x
2023-02-26 15:20
gettext.sh
5.07
KB
-rwxr-xr-x
2023-02-26 15:20
gettextize
41.28
KB
-rwxr-xr-x
2023-02-26 15:20
gio
90.33
KB
-rwxr-xr-x
2024-11-14 09:42
gio-querymodules
14.23
KB
-rwxr-xr-x
2024-11-14 09:42
glib-compile-schemas
62.3
KB
-rwxr-xr-x
2024-11-14 09:42
gmake
234.65
KB
-rwxr-xr-x
2021-04-10 13:55
gold
2.99
MB
-rwxr-xr-x
2023-01-14 17:24
gp-archive
159.06
KB
-rwxr-xr-x
2023-01-14 17:24
gp-collect-app
175.27
KB
-rwxr-xr-x
2023-01-14 17:24
gp-display-html
578.29
KB
-rwxr-xr-x
2023-01-14 17:24
gp-display-src
150.81
KB
-rwxr-xr-x
2023-01-14 17:24
gp-display-text
257.3
KB
-rwxr-xr-x
2023-01-14 17:24
gpasswd
86.42
KB
-rwsr-xr-x
2023-03-23 12:40
gpg
1.06
MB
-rwxr-xr-x
2023-03-26 13:03
gpg-agent
425.22
KB
-rwxr-xr-x
2023-03-26 13:03
gpg-connect-agent
154.96
KB
-rwxr-xr-x
2023-03-26 13:03
gpg-wks-server
203
KB
-rwxr-xr-x
2023-03-26 13:03
gpg-zip
3.43
KB
-rwxr-xr-x
2023-03-26 13:03
gpgcompose
910.27
KB
-rwxr-xr-x
2023-03-26 13:03
gpgconf
174.73
KB
-rwxr-xr-x
2023-03-26 13:03
gpgparsemail
34.3
KB
-rwxr-xr-x
2023-03-26 13:03
gpgsm
527.66
KB
-rwxr-xr-x
2023-03-26 13:03
gpgsplit
74.56
KB
-rwxr-xr-x
2023-03-26 13:03
gpgtar
147.52
KB
-rwxr-xr-x
2023-03-26 13:03
gpgv
463
KB
-rwxr-xr-x
2023-03-26 13:03
gpic
220.27
KB
-rwxr-xr-x
2023-03-07 09:38
gprof
108.35
KB
-rwxr-xr-x
2023-01-14 17:24
gprofng
146.59
KB
-rwxr-xr-x
2023-01-14 17:24
grep
198.39
KB
-rwxr-xr-x
2023-01-24 14:43
gresource
22.23
KB
-rwxr-xr-x
2024-11-14 09:42
groff
125.45
KB
-rwxr-xr-x
2023-03-07 09:38
grog
2.71
KB
-rwxr-xr-x
2023-03-07 09:38
grops
185.86
KB
-rwxr-xr-x
2023-03-07 09:38
grotty
137.48
KB
-rwxr-xr-x
2023-03-07 09:38
groups
42.89
KB
-rwxr-xr-x
2022-09-20 15:27
grub-editenv
374.16
KB
-rwxr-xr-x
2023-10-02 14:11
grub-file
809.41
KB
-rwxr-xr-x
2023-10-02 14:11
grub-fstest
931.13
KB
-rwxr-xr-x
2023-10-02 14:11
grub-glue-efi
245.01
KB
-rwxr-xr-x
2023-10-02 14:11
grub-kbdcomp
1.64
KB
-rwxr-xr-x
2023-10-02 14:11
grub-menulst2cfg
229.05
KB
-rwxr-xr-x
2023-10-02 14:11
grub-mkfont
273.66
KB
-rwxr-xr-x
2023-10-02 14:11
grub-mkimage
354.2
KB
-rwxr-xr-x
2023-10-02 14:11
grub-mklayout
249.29
KB
-rwxr-xr-x
2023-10-02 14:11
grub-mknetdir
410.99
KB
-rwxr-xr-x
2023-10-02 14:11
grub-mkpasswd-pbkdf2
257.35
KB
-rwxr-xr-x
2023-10-02 14:11
grub-mkrelpath
244.7
KB
-rwxr-xr-x
2023-10-02 14:11
grub-mkrescue
987.84
KB
-rwxr-xr-x
2023-10-02 14:11
grub-mkstandalone
487.32
KB
-rwxr-xr-x
2023-10-02 14:11
grub-mount
754.05
KB
-rwxr-xr-x
2023-10-02 14:11
grub-ntldr-img
34.58
KB
-rwxr-xr-x
2023-10-02 14:11
grub-render-label
822.01
KB
-rwxr-xr-x
2023-10-02 14:11
grub-script-check
272.82
KB
-rwxr-xr-x
2023-10-02 14:11
grub-syslinux2cfg
770.52
KB
-rwxr-xr-x
2023-10-02 14:11
gsettings
26.31
KB
-rwxr-xr-x
2024-11-14 09:42
gtbl
146.43
KB
-rwxr-xr-x
2023-03-07 09:38
gunzip
2.29
KB
-rwxr-xr-x
2022-04-10 02:22
gzexe
6.3
KB
-rwxr-xr-x
2022-04-10 02:22
gzip
95.84
KB
-rwxr-xr-x
2022-04-10 02:22
h2ph
28.54
KB
-rwxr-xr-x
2023-11-25 20:59
h2xs
59.51
KB
-rwxr-xr-x
2023-11-25 20:59
hardlink
50.39
KB
-rwxr-xr-x
2024-11-21 20:01
hd
58.32
KB
-rwxr-xr-x
2024-11-21 20:01
head
46.95
KB
-rwxr-xr-x
2022-09-20 15:27
helpztags
2.46
KB
-rwxr-xr-x
2025-02-16 05:23
hexdump
58.32
KB
-rwxr-xr-x
2024-11-21 20:01
host
114.7
KB
-rwxr-xr-x
2025-01-25 10:14
hostid
38.83
KB
-rwxr-xr-x
2022-09-20 15:27
hostname
22.15
KB
-rwxr-xr-x
2022-12-19 13:33
hostnamectl
30.38
KB
-rwxr-xr-x
2025-03-06 14:56
htcacheclean
34.24
KB
-rwxr-xr-x
2024-10-04 15:21
htdbm
26.23
KB
-rwxr-xr-x
2024-10-04 15:21
htdigest
14.23
KB
-rwxr-xr-x
2024-10-04 15:21
htpasswd
26.23
KB
-rwxr-xr-x
2024-10-04 15:21
i386
26.58
KB
-rwxr-xr-x
2024-11-21 20:01
icombine
38.63
KB
-rwxr-xr-x
2022-03-29 18:19
iconv
63.13
KB
-rwxr-xr-x
2025-03-06 22:46
id
47.02
KB
-rwxr-xr-x
2022-09-20 15:27
ifnames
4.08
KB
-rwxr-xr-x
2023-01-14 17:42
ijoin
18.26
KB
-rwxr-xr-x
2022-03-29 18:19
inetutils-telnet
186.2
KB
-rwxr-xr-x
2023-08-23 10:01
infocmp
62.31
KB
-rwxr-xr-x
2023-05-07 14:33
infotocap
90.34
KB
-rwxr-xr-x
2023-05-07 14:33
innochecksum
4.56
MB
-rwxr-xr-x
2025-02-19 00:56
innotop
445.44
KB
-rwxr-xr-x
2025-02-19 00:56
install
155.8
KB
-rwxr-xr-x
2022-09-20 15:27
install_compass
14.85
KB
-rwxr-xr-x
2013-12-19 05:41
instmodsh
4.27
KB
-rwxr-xr-x
2023-11-25 20:59
ionice
34.31
KB
-rwxr-xr-x
2024-11-21 20:01
ip
674.82
KB
-rwxr-xr-x
2023-05-22 13:19
ipcmk
34.38
KB
-rwxr-xr-x
2024-11-21 20:01
ipcrm
34.31
KB
-rwxr-xr-x
2024-11-21 20:01
ipcs
74.31
KB
-rwxr-xr-x
2024-11-21 20:01
iptables-xml
88.98
KB
-rwxr-xr-x
2023-01-16 13:44
ischroot
14.32
KB
-rwxr-xr-x
2023-07-28 23:46
ispell
102.73
KB
-rwxr-xr-x
2022-03-29 18:19
ispell-wrapper
7.05
KB
-rwxr-xr-x
2023-03-14 21:17
join
54.98
KB
-rwxr-xr-x
2022-09-20 15:27
journalctl
74.64
KB
-rwxr-xr-x
2025-03-06 14:56
json_pp
4.88
KB
-rwxr-xr-x
2023-11-25 20:59
kbd_mode
14.82
KB
-rwxr-xr-x
2023-03-23 09:34
kbdinfo
14.53
KB
-rwxr-xr-x
2023-03-23 09:34
kbxutil
162.77
KB
-rwxr-xr-x
2023-03-26 13:03
kernel-install
12.75
KB
-rwxr-xr-x
2025-03-06 14:56
kill
22.3
KB
-rwxr-xr-x
2022-12-19 06:06
killall
31.95
KB
-rwxr-xr-x
2022-12-13 05:27
kmod
174.27
KB
-rwxr-xr-x
2022-12-10 00:02
laptop-detect
3.73
KB
-rwxr-xr-x
2017-08-12 15:24
last
50.31
KB
-rwxr-xr-x
2024-11-21 20:01
lastb
50.31
KB
-rwxr-xr-x
2024-11-21 20:01
lastlog
31.75
KB
-rwxr-xr-x
2023-03-23 12:40
lcf
7.6
KB
-rwxr-xr-x
2024-12-20 07:39
ld
1.27
MB
-rwxr-xr-x
2023-01-14 17:24
ld.bfd
1.27
MB
-rwxr-xr-x
2023-01-14 17:24
ld.gold
2.99
MB
-rwxr-xr-x
2023-01-14 17:24
ld.so
209.96
KB
-rwxr-xr-x
2025-03-06 22:46
ldd
5.28
KB
-rwxr-xr-x
2025-03-06 22:46
less
194.3
KB
-rwxr-xr-x
2024-05-02 18:30
lessecho
14.24
KB
-rwxr-xr-x
2024-05-02 18:30
lessfile
8.83
KB
-rwxr-xr-x
2024-05-02 18:30
lesskey
23.63
KB
-rwxr-xr-x
2024-05-02 18:30
lesspipe
8.83
KB
-rwxr-xr-x
2024-05-02 18:30
letsencrypt
958
B
-rwxr-xr-x
2023-04-16 05:22
lexgrog
107.48
KB
-rwxr-xr-x
2023-03-12 22:23
lft
2.43
KB
-rwxr-xr-x
2023-02-25 12:24
lft.db
2.43
KB
-rwxr-xr-x
2023-02-25 12:24
libnetcfg
15.41
KB
-rwxr-xr-x
2023-11-25 20:59
libtoolize
133.12
KB
-rwxr-xr-x
2024-04-09 20:04
link
38.83
KB
-rwxr-xr-x
2022-09-20 15:27
linux-boot-prober
1.54
KB
-rwxr-xr-x
2018-08-10 19:23
linux-check-removal
4.56
KB
-rwxr-xr-x
2018-09-05 17:52
linux-update-symlinks
6.17
KB
-rwxr-xr-x
2016-06-05 01:13
linux-version
2.63
KB
-rwxr-xr-x
2022-02-11 02:17
linux32
26.58
KB
-rwxr-xr-x
2024-11-21 20:01
linux64
26.58
KB
-rwxr-xr-x
2024-11-21 20:01
ln
71.12
KB
-rwxr-xr-x
2022-09-20 15:27
lnstat
26.59
KB
-rwxr-xr-x
2023-05-22 13:19
loadkeys
215.34
KB
-rwxr-xr-x
2023-03-23 09:34
loadunimap
38.87
KB
-rwxr-xr-x
2023-03-23 09:34
locale
46.16
KB
-rwxr-xr-x
2025-03-06 22:46
localectl
26.38
KB
-rwxr-xr-x
2025-03-06 14:56
localedef
291.91
KB
-rwxr-xr-x
2025-03-06 22:46
logger
54.9
KB
-rwxr-xr-x
2024-11-21 20:01
login
51.78
KB
-rwxr-xr-x
2023-03-23 12:40
loginctl
58.48
KB
-rwxr-xr-x
2025-03-06 14:56
logname
38.83
KB
-rwxr-xr-x
2022-09-20 15:27
logresolve
14.24
KB
-rwxr-xr-x
2024-10-04 15:21
look
18.31
KB
-rwxr-xr-x
2024-11-21 20:01
ls
147.8
KB
-rwxr-xr-x
2022-09-20 15:27
lsattr
14.24
KB
-rwxr-xr-x
2023-03-05 03:16
lsb_release
2.59
KB
-rwxr-xr-x
2022-09-26 20:06
lsblk
202.31
KB
-rwxr-xr-x
2024-11-21 20:01
lscpu
126.31
KB
-rwxr-xr-x
2024-11-21 20:01
lsfd
120.3
KB
-rwxr-xr-x
2024-11-21 20:01
lsinitramfs
735
B
-rwxr-xr-x
2024-08-22 19:30
lsipc
98.31
KB
-rwxr-xr-x
2024-11-21 20:01
lsirq
34.48
KB
-rwxr-xr-x
2024-11-21 20:01
lslocks
70.7
KB
-rwxr-xr-x
2024-11-21 20:01
lslogins
94.31
KB
-rwxr-xr-x
2024-11-21 20:01
lsmem
66.31
KB
-rwxr-xr-x
2024-11-21 20:01
lsmod
174.27
KB
-rwxr-xr-x
2022-12-10 00:02
lsns
82.31
KB
-rwxr-xr-x
2024-11-21 20:01
lsof
175.61
KB
-rwxr-xr-x
2022-04-28 04:08
lspci
104.04
KB
-rwxr-xr-x
2023-01-17 23:50
lspgpot
1.06
KB
-rwxr-xr-x
2017-08-28 10:22
lsusb
247.07
KB
-rwxr-xr-x
2024-01-24 21:32
lto-dump
30.47
MB
-rwxr-xr-x
2023-01-08 09:12
lto-dump-12
30.47
MB
-rwxr-xr-x
2023-01-08 09:12
lzcat
82.7
KB
-rwxr-xr-x
2025-04-03 19:55
lzcmp
7.25
KB
-rwxr-xr-x
2025-04-03 19:55
lzdiff
7.25
KB
-rwxr-xr-x
2025-04-03 19:55
lzegrep
10.09
KB
-rwxr-xr-x
2025-04-03 19:55
lzfgrep
10.09
KB
-rwxr-xr-x
2025-04-03 19:55
lzgrep
10.09
KB
-rwxr-xr-x
2025-04-03 19:55
lzless
1.77
KB
-rwxr-xr-x
2025-04-03 19:55
lzma
82.7
KB
-rwxr-xr-x
2025-04-03 19:55
lzmainfo
14.3
KB
-rwxr-xr-x
2025-04-03 19:55
lzmore
2.14
KB
-rwxr-xr-x
2025-04-03 19:55
m4
271.52
KB
-rwxr-xr-x
2023-02-03 13:00
make
234.65
KB
-rwxr-xr-x
2021-04-10 13:55
make-first-existing-target
4.79
KB
-rwxr-xr-x
2021-04-10 13:55
man
121.36
KB
-rwxr-xr-x
2023-03-12 22:23
man-recode
35.38
KB
-rwxr-xr-x
2023-03-12 22:23
mandb
147.61
KB
-rwxr-xr-x
2023-03-12 22:23
manpath
34.78
KB
-rwxr-xr-x
2023-03-12 22:23
mapscrn
34.84
KB
-rwxr-xr-x
2023-03-23 09:34
mariadb
5.06
MB
-rwxr-xr-x
2025-02-19 00:56
mariadb-access
109.31
KB
-rwxr-xr-x
2025-02-19 00:56
mariadb-admin
4.83
MB
-rwxr-xr-x
2025-02-19 00:56
mariadb-analyze
4.83
MB
-rwxr-xr-x
2025-02-19 00:56
mariadb-binlog
5.11
MB
-rwxr-xr-x
2025-02-19 00:56
mariadb-check
4.83
MB
-rwxr-xr-x
2025-02-19 00:56
mariadb-conv
4.55
MB
-rwxr-xr-x
2025-02-19 00:56
mariadb-convert-table-format
4.12
KB
-rwxr-xr-x
2025-02-19 00:56
mariadb-dump
4.92
MB
-rwxr-xr-x
2025-02-19 00:56
mariadb-dumpslow
8.05
KB
-rwxr-xr-x
2025-02-19 00:56
mariadb-find-rows
3.21
KB
-rwxr-xr-x
2025-02-19 00:56
mariadb-fix-extensions
1.22
KB
-rwxr-xr-x
2025-02-19 00:56
mariadb-hotcopy
34.52
KB
-rwxr-xr-x
2025-02-19 00:56
mariadb-import
4.82
MB
-rwxr-xr-x
2025-02-19 00:56
mariadb-install-db
22.13
KB
-rwxr-xr-x
2025-02-19 00:56
mariadb-optimize
4.83
MB
-rwxr-xr-x
2025-02-19 00:56
mariadb-plugin
4.52
MB
-rwxr-xr-x
2025-02-19 00:56
mariadb-repair
4.83
MB
-rwxr-xr-x
2025-02-19 00:56
mariadb-report
49.02
KB
-rwxr-xr-x
2025-02-19 00:56
mariadb-secure-installation
13.49
KB
-rwxr-xr-x
2025-02-19 00:56
mariadb-service-convert
2.45
KB
-rwxr-xr-x
2025-02-19 00:56
mariadb-setpermission
17.56
KB
-rwxr-xr-x
2025-02-19 00:56
mariadb-show
4.82
MB
-rwxr-xr-x
2025-02-19 00:56
mariadb-slap
4.84
MB
-rwxr-xr-x
2025-02-19 00:56
mariadb-tzinfo-to-sql
4.53
MB
-rwxr-xr-x
2025-02-19 00:56
mariadb-upgrade
4.96
MB
-rwxr-xr-x
2025-02-19 00:56
mariadb-waitpid
4.51
MB
-rwxr-xr-x
2025-02-19 00:56
mariadbcheck
4.83
MB
-rwxr-xr-x
2025-02-19 00:56
mariadbd-multi
26.69
KB
-rwxr-xr-x
2025-02-19 00:56
mariadbd-safe
30.42
KB
-rwxr-xr-x
2025-02-19 00:56
mariadbd-safe-helper
4.49
MB
-rwxr-xr-x
2025-02-19 00:56
mawk
154.66
KB
-rwxr-xr-x
2022-06-17 15:35
mcookie
34.38
KB
-rwxr-xr-x
2024-11-21 20:01
md5sum
50.95
KB
-rwxr-xr-x
2022-09-20 15:27
md5sum.textutils
50.95
KB
-rwxr-xr-x
2022-09-20 15:27
mdig
50.33
KB
-rwxr-xr-x
2025-01-25 10:14
memusage
7.29
KB
-rwxr-xr-x
2025-03-06 22:46
memusagestat
22.69
KB
-rwxr-xr-x
2025-03-06 22:46
mesg
18.3
KB
-rwxr-xr-x
2024-11-21 20:01
migrate-pubring-from-classic-gpg
2.99
KB
-rwxr-xr-x
2022-09-01 22:08
mk_modmap
15.78
KB
-rwxr-xr-x
2023-03-23 09:34
mkdir
95.27
KB
-rwxr-xr-x
2022-09-20 15:27
mkfifo
67.17
KB
-rwxr-xr-x
2022-09-20 15:27
mknod
71.2
KB
-rwxr-xr-x
2022-09-20 15:27
mktemp
42.92
KB
-rwxr-xr-x
2022-09-20 15:27
mongod
207.63
MB
-rwxr-xr-x
2013-12-19 05:41
mongodump
17.53
MB
-rwxr-xr-x
2025-04-01 15:22
mongoexport
17.26
MB
-rwxr-xr-x
2025-04-01 15:22
mongofiles
17.25
MB
-rwxr-xr-x
2025-04-01 15:22
mongoimport
17.44
MB
-rwxr-xr-x
2025-04-01 15:22
mongorestore
17.9
MB
-rwxr-xr-x
2025-04-01 15:22
mongos
160.52
MB
-rwxr-xr-x
2013-12-19 05:41
mongosh
142.35
MB
-rwxr-xr-x
2025-03-06 15:39
mongostat
17.05
MB
-rwxr-xr-x
2025-04-01 15:22
mongotop
16.67
MB
-rwxr-xr-x
2025-04-01 15:22
more
58.31
KB
-rwxr-xr-x
2024-11-21 20:01
mount
58.3
KB
-rwsr-xr-x
2024-11-21 20:01
mountpoint
18.3
KB
-rwxr-xr-x
2024-11-21 20:01
msgattrib
26.3
KB
-rwxr-xr-x
2023-02-26 15:20
msgcat
22.3
KB
-rwxr-xr-x
2023-02-26 15:20
msgcmp
26.3
KB
-rwxr-xr-x
2023-02-26 15:20
msgcomm
22.3
KB
-rwxr-xr-x
2023-02-26 15:20
msgconv
22.3
KB
-rwxr-xr-x
2023-02-26 15:20
msgen
22.3
KB
-rwxr-xr-x
2023-02-26 15:20
msgexec
18.3
KB
-rwxr-xr-x
2023-02-26 15:20
msgfilter
30.3
KB
-rwxr-xr-x
2023-02-26 15:20
msgfmt
86.5
KB
-rwxr-xr-x
2023-02-26 15:20
msggrep
114.42
KB
-rwxr-xr-x
2023-02-26 15:20
msginit
66.65
KB
-rwxr-xr-x
2023-02-26 15:20
msgmerge
70.68
KB
-rwxr-xr-x
2023-02-26 15:20
msgunfmt
34.32
KB
-rwxr-xr-x
2023-02-26 15:20
msguniq
22.3
KB
-rwxr-xr-x
2023-02-26 15:20
msql2mysql
1.41
KB
-rwxr-xr-x
2025-02-19 00:56
mt
83.38
KB
-rwxr-xr-x
2022-09-14 19:45
mt-gnu
83.38
KB
-rwxr-xr-x
2022-09-14 19:45
mtrace
6.35
KB
-rwxr-xr-x
2025-03-06 22:46
munchlist
31.23
KB
-rwxr-xr-x
2022-03-29 18:19
mv
139.62
KB
-rwxr-xr-x
2022-09-20 15:27
my_print_defaults
4.52
MB
-rwxr-xr-x
2025-02-19 00:56
myisam_ftdump
4.85
MB
-rwxr-xr-x
2025-02-19 00:56
myisamchk
4.97
MB
-rwxr-xr-x
2025-02-19 00:56
myisamlog
4.83
MB
-rwxr-xr-x
2025-02-19 00:56
myisampack
4.88
MB
-rwxr-xr-x
2025-02-19 00:56
mysql
5.06
MB
-rwxr-xr-x
2025-02-19 00:56
mysql_convert_table_format
4.12
KB
-rwxr-xr-x
2025-02-19 00:56
mysql_find_rows
3.21
KB
-rwxr-xr-x
2025-02-19 00:56
mysql_fix_extensions
1.22
KB
-rwxr-xr-x
2025-02-19 00:56
mysql_install_db
22.13
KB
-rwxr-xr-x
2025-02-19 00:56
mysql_plugin
4.52
MB
-rwxr-xr-x
2025-02-19 00:56
mysql_secure_installation
13.49
KB
-rwxr-xr-x
2025-02-19 00:56
mysql_setpermission
17.56
KB
-rwxr-xr-x
2025-02-19 00:56
mysql_tzinfo_to_sql
4.53
MB
-rwxr-xr-x
2025-02-19 00:56
mysql_upgrade
4.96
MB
-rwxr-xr-x
2025-02-19 00:56
mysql_waitpid
4.51
MB
-rwxr-xr-x
2025-02-19 00:56
mysqlaccess
109.31
KB
-rwxr-xr-x
2025-02-19 00:56
mysqladmin
4.83
MB
-rwxr-xr-x
2025-02-19 00:56
mysqlanalyze
4.83
MB
-rwxr-xr-x
2025-02-19 00:56
mysqlbinlog
5.11
MB
-rwxr-xr-x
2025-02-19 00:56
mysqlcheck
4.83
MB
-rwxr-xr-x
2025-02-19 00:56
mysqld_multi
26.69
KB
-rwxr-xr-x
2025-02-19 00:56
mysqld_safe
30.42
KB
-rwxr-xr-x
2025-02-19 00:56
mysqld_safe_helper
4.49
MB
-rwxr-xr-x
2025-02-19 00:56
mysqldump
4.92
MB
-rwxr-xr-x
2025-02-19 00:56
mysqldumpslow
8.05
KB
-rwxr-xr-x
2025-02-19 00:56
mysqlhotcopy
34.52
KB
-rwxr-xr-x
2025-02-19 00:56
mysqlimport
4.82
MB
-rwxr-xr-x
2025-02-19 00:56
mysqloptimize
4.83
MB
-rwxr-xr-x
2025-02-19 00:56
mysqlrepair
4.83
MB
-rwxr-xr-x
2025-02-19 00:56
mysqlreport
49.02
KB
-rwxr-xr-x
2025-02-19 00:56
mysqlshow
4.82
MB
-rwxr-xr-x
2025-02-19 00:56
mysqlslap
4.84
MB
-rwxr-xr-x
2025-02-19 00:56
mytop
71.95
KB
-rwxr-xr-x
2025-02-19 00:56
namei
34.31
KB
-rwxr-xr-x
2024-11-21 20:01
nano
280.74
KB
-rwxr-xr-x
2024-05-06 06:10
nawk
696.44
KB
-rwxr-xr-x
2023-02-19 13:30
nc
34.13
KB
-rwxr-xr-x
2021-08-20 11:41
nc.traditional
34.13
KB
-rwxr-xr-x
2021-08-20 11:41
neqn
913
B
-rwxr-xr-x
2023-03-07 09:38
netcat
34.13
KB
-rwxr-xr-x
2021-08-20 11:41
networkctl
106.38
KB
-rwxr-xr-x
2025-03-06 14:56
newgrp
47.75
KB
-rwsr-xr-x
2023-03-23 12:40
ngettext
34.31
KB
-rwxr-xr-x
2023-02-26 15:20
nice
42.86
KB
-rwxr-xr-x
2022-09-20 15:27
nisdomainname
22.15
KB
-rwxr-xr-x
2022-12-19 13:33
nl
111.11
KB
-rwxr-xr-x
2022-09-20 15:27
nm
44.03
KB
-rwxr-xr-x
2023-01-14 17:24
node
97.47
MB
-rwxr-xr-x
2024-04-10 12:32
nodejs
97.47
MB
-rwxr-xr-x
2024-04-10 12:32
nohup
42.89
KB
-rwxr-xr-x
2022-09-20 15:27
normalizer
244
B
-rwxr-xr-x
2022-11-27 08:00
npm
54
B
-rwxr-xr-x
2022-10-11 10:59
nproc
42.89
KB
-rwxr-xr-x
2022-09-20 15:27
npx
2.86
KB
-rwxr-xr-x
2023-08-09 13:29
nroff
3.22
KB
-rwxr-xr-x
2023-03-07 09:38
nsenter
34.54
KB
-rwxr-xr-x
2024-11-21 20:01
nslookup
114.74
KB
-rwxr-xr-x
2025-01-25 10:14
nstat
104.45
KB
-rwxr-xr-x
2023-05-22 13:19
nsupdate
74.55
KB
-rwxr-xr-x
2025-01-25 10:14
numfmt
67.02
KB
-rwxr-xr-x
2022-09-20 15:27
objcopy
155.66
KB
-rwxr-xr-x
2023-01-14 17:24
objdump
362.56
KB
-rwxr-xr-x
2023-01-14 17:24
od
79.02
KB
-rwxr-xr-x
2022-09-20 15:27
open
18.06
KB
-rwxr-xr-x
2021-11-29 13:07
openssl
953.26
KB
-rwxr-xr-x
2024-10-27 14:16
openvt
23.13
KB
-rwxr-xr-x
2023-03-23 09:34
os-prober
4.42
KB
-rwxr-xr-x
2021-09-22 18:07
pager
194.3
KB
-rwxr-xr-x
2024-05-02 18:30
partx
118.31
KB
-rwxr-xr-x
2024-11-21 20:01
passwd
66.65
KB
-rwsr-xr-x
2023-03-23 12:40
paste
42.89
KB
-rwxr-xr-x
2022-09-20 15:27
patch
187.44
KB
-rwxr-xr-x
2021-01-09 08:58
pathchk
42.86
KB
-rwxr-xr-x
2022-09-20 15:27
pcre2-config
1.93
KB
-rwxr-xr-x
2023-01-01 15:44
pdb3
62.4
KB
-rwxr-xr-x
2024-11-30 21:22
pdb3.11
62.4
KB
-rwxr-xr-x
2024-11-30 21:22
pear
793
B
-rwxr-xr-x
2023-06-12 06:24
peardev
814
B
-rwxr-xr-x
2023-06-12 06:24
pecl
727
B
-rwxr-xr-x
2023-06-12 06:24
peekfd
14.5
KB
-rwxr-xr-x
2022-12-13 05:27
perl
3.63
MB
-rwxr-xr-x
2023-11-25 20:59
perl5.36-x86_64-linux-gnu
14.41
KB
-rwxr-xr-x
2023-11-25 20:59
perl5.36.0
3.63
MB
-rwxr-xr-x
2023-11-25 20:59
perlbug
44.12
KB
-rwxr-xr-x
2023-11-25 20:59
perldoc
125
B
-rwxr-xr-x
2023-07-05 08:56
perlivp
10.61
KB
-rwxr-xr-x
2023-11-25 20:59
perlthanks
44.12
KB
-rwxr-xr-x
2023-11-25 20:59
perror
4.71
MB
-rwxr-xr-x
2025-02-19 00:56
pgrep
34.42
KB
-rwxr-xr-x
2022-12-19 06:06
phar
14.88
KB
-rwxr-xr-x
2025-10-01 20:26
phar.default
14.88
KB
-rwxr-xr-x
2025-10-01 20:26
phar.phar
14.88
KB
-rwxr-xr-x
2025-10-01 20:26
phar.phar.default
14.88
KB
-rwxr-xr-x
2025-10-01 20:26
phar.phar8.2
14.88
KB
-rwxr-xr-x
2025-03-13 18:10
phar.phar8.4
14.88
KB
-rwxr-xr-x
2025-10-01 20:26
phar8.2
14.88
KB
-rwxr-xr-x
2025-03-13 18:10
phar8.2.phar
14.88
KB
-rwxr-xr-x
2025-03-13 18:10
phar8.4
14.88
KB
-rwxr-xr-x
2025-10-01 20:26
phar8.4.phar
14.88
KB
-rwxr-xr-x
2025-10-01 20:26
php
5.72
MB
-rwxr-xr-x
2025-10-01 20:26
php-config
4.24
KB
-rwxr-xr-x
2025-03-13 18:10
php-config8.2
4.24
KB
-rwxr-xr-x
2025-03-13 18:10
php.default
5.72
MB
-rwxr-xr-x
2025-10-01 20:26
php8.2
5.4
MB
-rwxr-xr-x
2025-03-13 18:10
php8.4
5.72
MB
-rwxr-xr-x
2025-10-01 20:26
phpabtpl
8.47
KB
-rwxr-xr-x
2023-01-28 15:13
phpize
4.83
KB
-rwxr-xr-x
2025-03-13 18:10
phpize8.2
4.83
KB
-rwxr-xr-x
2025-03-13 18:10
pic
220.27
KB
-rwxr-xr-x
2023-03-07 09:38
pico
280.74
KB
-rwxr-xr-x
2024-05-06 06:10
piconv
8.16
KB
-rwxr-xr-x
2023-11-25 20:59
pidof
26.31
KB
-rwxr-xr-x
2023-04-03 06:25
pidwait
34.42
KB
-rwxr-xr-x
2022-12-19 06:06
pinentry
70.57
KB
-rwxr-xr-x
2022-10-18 14:52
pinentry-curses
70.57
KB
-rwxr-xr-x
2022-10-18 14:52
ping
88.45
KB
-rwxr-xr-x
2024-09-24 17:00
ping4
88.45
KB
-rwxr-xr-x
2024-09-24 17:00
ping6
88.45
KB
-rwxr-xr-x
2024-09-24 17:00
pinky
47.05
KB
-rwxr-xr-x
2022-09-20 15:27
pip
221
B
-rwxr-xr-x
2023-02-19 14:19
pip3
221
B
-rwxr-xr-x
2023-02-19 14:19
pip3.11
221
B
-rwxr-xr-x
2023-02-19 14:19
pkaction
18.23
KB
-rwxr-xr-x
2023-01-31 22:05
pkcheck
22.3
KB
-rwxr-xr-x
2023-01-31 22:05
pkcon
55.61
KB
-rwxr-xr-x
2023-05-28 17:00
pkg-config
44.04
KB
-rwxr-xr-x
2023-01-22 11:06
pkgconf
44.04
KB
-rwxr-xr-x
2023-01-22 11:06
pkgtools
1.34
KB
-rwxr-xr-x
2023-01-28 15:13
pkill
34.42
KB
-rwxr-xr-x
2022-12-19 06:06
pkmon
22.79
KB
-rwxr-xr-x
2023-05-28 17:00
pkttyagent
18.23
KB
-rwxr-xr-x
2023-01-31 22:05
pl2pm
4.43
KB
-rwxr-xr-x
2023-11-25 20:59
pldd
22.69
KB
-rwxr-xr-x
2025-03-06 22:46
pm2
56
B
-rwxr-xr-x
2025-04-08 13:05
pm2-dev
59
B
-rwxr-xr-x
2025-04-08 13:05
pm2-docker
67
B
-rwxr-xr-x
2025-04-08 13:05
pm2-runtime
67
B
-rwxr-xr-x
2025-04-08 13:05
pmap
34.34
KB
-rwxr-xr-x
2022-12-19 06:06
po2debconf
8.47
KB
-rwxr-xr-x
2020-12-30 01:09
pod2html
4.04
KB
-rwxr-xr-x
2023-11-25 20:59
pod2man
14.68
KB
-rwxr-xr-x
2023-11-25 20:59
pod2text
10.55
KB
-rwxr-xr-x
2023-11-25 20:59
pod2usage
4.01
KB
-rwxr-xr-x
2023-11-25 20:59
podchecker
3.57
KB
-rwxr-xr-x
2023-11-25 20:59
podebconf-display-po
12.67
KB
-rwxr-xr-x
2015-01-10 14:10
podebconf-report-po
31.76
KB
-rwxr-xr-x
2015-01-10 15:44
pr
79.11
KB
-rwxr-xr-x
2022-09-20 15:27
preconv
66.43
KB
-rwxr-xr-x
2023-03-07 09:38
print
18.06
KB
-rwxr-xr-x
2021-11-29 13:07
printenv
34.83
KB
-rwxr-xr-x
2022-09-20 15:27
printf
62.92
KB
-rwxr-xr-x
2022-09-20 15:27
prlimit
38.83
KB
-rwxr-xr-x
2024-11-21 20:01
procan
79.91
KB
-rwxr-xr-x
2022-11-06 08:15
prove
13.34
KB
-rwxr-xr-x
2023-11-25 20:59
prtstat
18.57
KB
-rwxr-xr-x
2022-12-13 05:27
ps
142.93
KB
-rwxr-xr-x
2022-12-19 06:06
psfaddtable
30.62
KB
-rwxr-xr-x
2023-03-23 09:34
psfgettable
30.62
KB
-rwxr-xr-x
2023-03-23 09:34
psfstriptable
30.62
KB
-rwxr-xr-x
2023-03-23 09:34
psfxtable
30.62
KB
-rwxr-xr-x
2023-03-23 09:34
pslog
14.45
KB
-rwxr-xr-x
2022-12-13 05:27
pstree
35.78
KB
-rwxr-xr-x
2022-12-13 05:27
pstree.x11
35.78
KB
-rwxr-xr-x
2022-12-13 05:27
ptar
3.48
KB
-rwxr-xr-x
2023-11-25 20:59
ptardiff
2.58
KB
-rwxr-xr-x
2023-11-25 20:59
ptargrep
4.29
KB
-rwxr-xr-x
2023-11-25 20:59
ptx
135.23
KB
-rwxr-xr-x
2022-09-20 15:27
pv
63.98
KB
-rwxr-xr-x
2022-04-12 00:55
pwd
42.92
KB
-rwxr-xr-x
2022-09-20 15:27
pwdx
14.3
KB
-rwxr-xr-x
2022-12-19 06:06
py3clean
7.63
KB
-rwxr-xr-x
2023-04-09 10:22
py3compile
13
KB
-rwxr-xr-x
2023-04-09 10:22
py3versions
12.52
KB
-rwxr-xr-x
2023-04-09 10:22
pydoc3
79
B
-rwxr-xr-x
2024-11-30 21:22
pydoc3.11
79
B
-rwxr-xr-x
2024-11-30 21:22
pygettext3
23.67
KB
-rwxr-xr-x
2023-02-07 13:37
pygettext3.11
23.67
KB
-rwxr-xr-x
2023-02-07 13:37
python3
6.52
MB
-rwxr-xr-x
2024-11-30 21:22
python3-config
3
KB
-rwxr-xr-x
2024-11-30 21:22
python3.11
6.52
MB
-rwxr-xr-x
2024-11-30 21:22
python3.11-config
3
KB
-rwxr-xr-x
2024-11-30 21:22
pzstd
742.38
KB
-rwxr-xr-x
2023-03-18 20:58
querybts
10.64
KB
-rwxr-xr-x
2023-04-29 06:38
ranlib
51.17
KB
-rwxr-xr-x
2023-01-14 17:24
rbash
1.21
MB
-rwxr-xr-x
2024-03-29 19:40
rdma
180.6
KB
-rwxr-xr-x
2023-05-22 13:19
readelf
751.38
KB
-rwxr-xr-x
2023-01-14 17:24
readlink
50.89
KB
-rwxr-xr-x
2022-09-20 15:27
realpath
50.92
KB
-rwxr-xr-x
2022-09-20 15:27
recode-sr-latin
14.3
KB
-rwxr-xr-x
2023-02-26 15:20
redis-benchmark
738.63
KB
-rwxr-xr-x
2025-01-19 10:41
redis-check-aof
2.28
MB
-rwxr-xr-x
2025-01-19 10:41
redis-check-rdb
2.28
MB
-rwxr-xr-x
2025-01-19 10:41
redis-cli
366.27
KB
-rwxr-xr-x
2025-01-19 10:41
redis-server
2.28
MB
-rwxr-xr-x
2025-01-19 10:41
rename.ul
22.3
KB
-rwxr-xr-x
2024-11-21 20:01
renice
14.3
KB
-rwxr-xr-x
2024-11-21 20:01
replace
4.5
MB
-rwxr-xr-x
2025-02-19 00:56
report-hw
2.06
KB
-rwxr-xr-x
2021-09-22 18:06
reportbug
110.11
KB
-rwxr-xr-x
2023-04-29 06:38
reset
30.24
KB
-rwxr-xr-x
2023-05-07 14:33
resizecons
26.8
KB
-rwxr-xr-x
2023-03-23 09:34
resizepart
70.31
KB
-rwxr-xr-x
2024-11-21 20:01
resolve_stack_dump
4.52
MB
-rwxr-xr-x
2025-02-19 00:56
resolveip
4.52
MB
-rwxr-xr-x
2025-02-19 00:56
rev
14.3
KB
-rwxr-xr-x
2024-11-21 20:01
rgrep
30
B
-rwxr-xr-x
2020-01-29 12:09
rm
71.05
KB
-rwxr-xr-x
2022-09-20 15:27
rmdir
54.92
KB
-rwxr-xr-x
2022-09-20 15:27
rnano
280.74
KB
-rwxr-xr-x
2024-05-06 06:10
rotatelogs
26.31
KB
-rwxr-xr-x
2024-10-04 15:21
routel
1.62
KB
-rwxr-xr-x
2023-05-22 13:19
rpcgen
95
KB
-rwxr-xr-x
2022-12-02 21:30
rrsync
12.34
KB
-rwxr-xr-x
2025-01-15 18:47
rsync
502.38
KB
-rwxr-xr-x
2025-01-15 18:47
rsync-ssl
5.02
KB
-rwxr-xr-x
2025-01-15 18:47
rtstat
26.59
KB
-rwxr-xr-x
2023-05-22 13:19
run-mailcap
18.06
KB
-rwxr-xr-x
2021-11-29 13:07
run-parts
26.91
KB
-rwxr-xr-x
2023-07-28 23:46
runcon
42.95
KB
-rwxr-xr-x
2022-09-20 15:27
rview
1.55
MB
-rwxr-xr-x
2025-02-16 05:23
savelog
10.24
KB
-rwxr-xr-x
2023-07-28 23:46
scp
266.63
KB
-rwxr-xr-x
2025-02-14 13:06
screendump
14.47
KB
-rwxr-xr-x
2023-03-23 09:34
script
70.3
KB
-rwxr-xr-x
2024-11-21 20:01
scriptlive
54.3
KB
-rwxr-xr-x
2024-11-21 20:01
scriptreplay
46.3
KB
-rwxr-xr-x
2024-11-21 20:01
sdiff
55.08
KB
-rwxr-xr-x
2023-02-03 19:00
sed
123.46
KB
-rwxr-xr-x
2023-01-05 19:55
see
18.06
KB
-rwxr-xr-x
2021-11-29 13:07
select-default-iwrap
474
B
-rwxr-xr-x
2023-03-14 21:17
select-editor
2.39
KB
-rwxr-xr-x
2023-01-14 16:28
sensible-browser
1.26
KB
-rwxr-xr-x
2023-01-14 16:28
sensible-editor
1.24
KB
-rwxr-xr-x
2023-01-14 16:28
sensible-pager
565
B
-rwxr-xr-x
2023-01-14 16:28
seq
58.92
KB
-rwxr-xr-x
2022-09-20 15:27
setarch
26.58
KB
-rwxr-xr-x
2024-11-21 20:01
setfont
58.9
KB
-rwxr-xr-x
2023-03-23 09:34
setkeycodes
14.52
KB
-rwxr-xr-x
2023-03-23 09:34
setleds
18.55
KB
-rwxr-xr-x
2023-03-23 09:34
setlogcons
14.52
KB
-rwxr-xr-x
2023-03-23 09:34
setmetamode
14.66
KB
-rwxr-xr-x
2023-03-23 09:34
setpci
30.31
KB
-rwxr-xr-x
2023-01-17 23:50
setpriv
78.31
KB
-rwxr-xr-x
2024-11-21 20:01
setsid
14.3
KB
-rwxr-xr-x
2024-11-21 20:01
setterm
46.31
KB
-rwxr-xr-x
2024-11-21 20:01
setupcon
39.35
KB
-rwxr-xr-x
2023-05-21 21:30
setvtrgb
14.65
KB
-rwxr-xr-x
2023-03-23 09:34
sftp
282.59
KB
-rwxr-xr-x
2025-02-14 13:06
sg
47.75
KB
-rwsr-xr-x
2023-03-23 12:40
sh
122.7
KB
-rwxr-xr-x
2023-01-05 13:20
sha1sum
54.95
KB
-rwxr-xr-x
2022-09-20 15:27
sha224sum
58.95
KB
-rwxr-xr-x
2022-09-20 15:27
sha256sum
58.95
KB
-rwxr-xr-x
2022-09-20 15:27
sha384sum
62.95
KB
-rwxr-xr-x
2022-09-20 15:27
sha512sum
62.95
KB
-rwxr-xr-x
2022-09-20 15:27
shasum
9.75
KB
-rwxr-xr-x
2023-11-25 20:59
showconsolefont
22.57
KB
-rwxr-xr-x
2023-03-23 09:34
showkey
18.56
KB
-rwxr-xr-x
2023-03-23 09:34
shred
63.14
KB
-rwxr-xr-x
2022-09-20 15:27
shtool
138.76
KB
-rwxr-xr-x
2019-12-23 21:26
shtoolize
15.16
KB
-rwxr-xr-x
2019-12-23 21:26
shuf
58.98
KB
-rwxr-xr-x
2022-09-20 15:27
size
26.86
KB
-rwxr-xr-x
2023-01-14 17:24
skill
30.33
KB
-rwxr-xr-x
2022-12-19 06:06
slabtop
22.37
KB
-rwxr-xr-x
2022-12-19 06:06
sleep
42.86
KB
-rwxr-xr-x
2022-09-20 15:27
slogin
1.07
MB
-rwxr-xr-x
2025-02-14 13:06
snice
30.33
KB
-rwxr-xr-x
2022-12-19 06:06
socat
401.98
KB
-rwxr-xr-x
2022-11-06 08:15
soelim
50.43
KB
-rwxr-xr-x
2023-03-07 09:38
sort
115.68
KB
-rwxr-xr-x
2022-09-20 15:27
sotruss
4.18
KB
-rwxr-xr-x
2025-03-06 22:46
splain
18.99
KB
-rwxr-xr-x
2023-11-25 20:59
split
59.55
KB
-rwxr-xr-x
2022-09-20 15:27
splitfont
14.39
KB
-rwxr-xr-x
2023-03-23 09:34
sprof
26.81
KB
-rwxr-xr-x
2025-03-06 22:46
ss
189.14
KB
-rwxr-xr-x
2023-05-22 13:19
ssh
1.07
MB
-rwxr-xr-x
2025-02-14 13:06
ssh-add
518.44
KB
-rwxr-xr-x
2025-02-14 13:06
ssh-agent
474.38
KB
-rwxr-sr-x
2025-02-14 13:06
ssh-argv0
1.42
KB
-rwxr-xr-x
2025-02-14 11:18
ssh-copy-id
12.38
KB
-rwxr-xr-x
2023-02-02 12:21
ssh-keygen
646.44
KB
-rwxr-xr-x
2025-02-14 13:06
ssh-keyscan
622.47
KB
-rwxr-xr-x
2025-02-14 13:06
stat
95.2
KB
-rwxr-xr-x
2022-09-20 15:27
stdbuf
58.92
KB
-rwxr-xr-x
2022-09-20 15:27
streamzip
7.75
KB
-rwxr-xr-x
2023-11-25 20:59
strings
30.98
KB
-rwxr-xr-x
2023-01-14 17:24
strip
155.7
KB
-rwxr-xr-x
2023-01-14 17:24
stty
83.02
KB
-rwxr-xr-x
2022-09-20 15:27
su
70.31
KB
-rwsr-xr-x
2024-11-21 20:01
sudo
275.02
KB
-rwsr-xr-x
2023-06-27 11:45
sudoedit
275.02
KB
-rwsr-xr-x
2023-06-27 11:45
sudoreplay
115.7
KB
-rwxr-xr-x
2023-06-27 11:45
sum
50.96
KB
-rwxr-xr-x
2022-09-20 15:27
sync
38.89
KB
-rwxr-xr-x
2022-09-20 15:27
systemctl
1.29
MB
-rwxr-xr-x
2025-03-06 14:56
systemd
90.38
KB
-rwxr-xr-x
2025-03-06 14:56
systemd-analyze
182.61
KB
-rwxr-xr-x
2025-03-06 14:56
systemd-ask-password
18.48
KB
-rwxr-xr-x
2025-03-06 14:56
systemd-cat
18.38
KB
-rwxr-xr-x
2025-03-06 14:56
systemd-cgls
22.48
KB
-rwxr-xr-x
2025-03-06 14:56
systemd-cgtop
38.4
KB
-rwxr-xr-x
2025-03-06 14:56
systemd-creds
42.61
KB
-rwxr-xr-x
2025-03-06 14:56
systemd-cryptenroll
58.6
KB
-rwxr-xr-x
2025-03-06 14:56
systemd-delta
26.38
KB
-rwxr-xr-x
2025-03-06 14:56
systemd-detect-virt
18.37
KB
-rwxr-xr-x
2025-03-06 14:56
systemd-escape
18.37
KB
-rwxr-xr-x
2025-03-06 14:56
systemd-firstboot
50.59
KB
-rwxr-xr-x
2025-03-06 14:56
systemd-hwdb
126.66
KB
-rwxr-xr-x
2025-03-06 14:56
systemd-id128
22.37
KB
-rwxr-xr-x
2025-03-06 14:56
systemd-inhibit
22.39
KB
-rwxr-xr-x
2025-03-06 14:56
systemd-machine-id-setup
18.48
KB
-rwxr-xr-x
2025-03-06 14:56
systemd-mount
50.59
KB
-rwxr-xr-x
2025-03-06 14:56
systemd-notify
18.38
KB
-rwxr-xr-x
2025-03-06 14:56
systemd-path
18.37
KB
-rwxr-xr-x
2025-03-06 14:56
systemd-repart
150.69
KB
-rwxr-xr-x
2025-03-06 14:56
systemd-run
58.57
KB
-rwxr-xr-x
2025-03-06 14:56
systemd-socket-activate
26.38
KB
-rwxr-xr-x
2025-03-06 14:56
systemd-stdio-bridge
18.38
KB
-rwxr-xr-x
2025-03-06 14:56
systemd-sysext
42.49
KB
-rwxr-xr-x
2025-03-06 14:56
systemd-sysusers
62.68
KB
-rwxr-xr-x
2025-03-06 14:56
systemd-tmpfiles
110.57
KB
-rwxr-xr-x
2025-03-06 14:56
systemd-tty-ask-password-agent
34.38
KB
-rwxr-xr-x
2025-03-06 14:56
systemd-umount
50.59
KB
-rwxr-xr-x
2025-03-06 14:56
tabs
18.23
KB
-rwxr-xr-x
2023-05-07 14:33
tac
111.05
KB
-rwxr-xr-x
2022-09-20 15:27
tail
75.14
KB
-rwxr-xr-x
2022-09-20 15:27
tar
519.52
KB
-rwxr-xr-x
2024-01-20 09:27
tasksel
26.82
KB
-rwxr-xr-x
2023-05-25 06:27
taskset
62.31
KB
-rwxr-xr-x
2024-11-21 20:01
tbl
146.43
KB
-rwxr-xr-x
2023-03-07 09:38
tee
42.95
KB
-rwxr-xr-x
2022-09-20 15:27
telnet
186.2
KB
-rwxr-xr-x
2023-08-23 10:01
tempfile
14.18
KB
-rwxr-xr-x
2023-07-28 23:46
test
58.89
KB
-rwxr-xr-x
2022-09-20 15:27
tic
90.34
KB
-rwxr-xr-x
2023-05-07 14:33
timedatectl
42.37
KB
-rwxr-xr-x
2025-03-06 14:56
timeout
47.49
KB
-rwxr-xr-x
2022-09-20 15:27
tload
18.32
KB
-rwxr-xr-x
2022-12-19 06:06
toe
22.23
KB
-rwxr-xr-x
2023-05-07 14:33
top
131.58
KB
-rwxr-xr-x
2022-12-19 06:06
touch
107.05
KB
-rwxr-xr-x
2022-09-20 15:27
tput
26.27
KB
-rwxr-xr-x
2023-05-07 14:33
tr
54.89
KB
-rwxr-xr-x
2022-09-20 15:27
traceproto
2.82
KB
-rwxr-xr-x
2023-02-25 12:24
traceproto.db
2.82
KB
-rwxr-xr-x
2023-02-25 12:24
traceroute
71.23
KB
-rwxr-xr-x
2023-02-25 12:24
traceroute-nanog
1.58
KB
-rwxr-xr-x
2023-02-25 12:24
traceroute.db
71.23
KB
-rwxr-xr-x
2023-02-25 12:24
traceroute6
71.23
KB
-rwxr-xr-x
2023-02-25 12:24
traceroute6.db
71.23
KB
-rwxr-xr-x
2023-02-25 12:24
troff
755.83
KB
-rwxr-xr-x
2023-03-07 09:38
true
34.83
KB
-rwxr-xr-x
2022-09-20 15:27
truncate
42.89
KB
-rwxr-xr-x
2022-09-20 15:27
tryaffix
4.8
KB
-rwxr-xr-x
2022-03-29 18:19
tset
30.24
KB
-rwxr-xr-x
2023-05-07 14:33
tsort
54.89
KB
-rwxr-xr-x
2022-09-20 15:27
tty
34.86
KB
-rwxr-xr-x
2022-09-20 15:27
tzselect
14.99
KB
-rwxr-xr-x
2025-03-06 22:46
ucf
40.69
KB
-rwxr-xr-x
2024-12-20 07:39
ucfq
18.91
KB
-rwxr-xr-x
2024-12-20 07:39
ucfr
10.85
KB
-rwxr-xr-x
2024-12-20 07:39
uclampset
62.31
KB
-rwxr-xr-x
2024-11-21 20:01
udevadm
1.29
MB
-rwxr-xr-x
2025-03-06 14:56
ul
22.31
KB
-rwxr-xr-x
2024-11-21 20:01
umount
34.3
KB
-rwsr-xr-x
2024-11-21 20:01
uname
42.86
KB
-rwxr-xr-x
2022-09-20 15:27
uncompress
2.29
KB
-rwxr-xr-x
2022-04-10 02:22
unexpand
42.92
KB
-rwxr-xr-x
2022-09-20 15:27
unicode_start
2.71
KB
-rwxr-xr-x
2023-03-23 09:34
unicode_stop
528
B
-rwxr-xr-x
2023-03-23 09:34
uniq
46.95
KB
-rwxr-xr-x
2022-09-20 15:27
unlink
38.83
KB
-rwxr-xr-x
2022-09-20 15:27
unlzma
82.7
KB
-rwxr-xr-x
2025-04-03 19:55
unmkinitramfs
3.59
KB
-rwxr-xr-x
2024-08-22 19:30
unshare
82.54
KB
-rwxr-xr-x
2024-11-21 20:01
unxz
82.7
KB
-rwxr-xr-x
2025-04-03 19:55
unzip
175.05
KB
-rwxr-xr-x
2023-02-19 18:02
unzipsfx
82.86
KB
-rwxr-xr-x
2023-02-19 18:02
unzstd
1.22
MB
-rwxr-xr-x
2023-03-18 20:58
update-alternatives
58.31
KB
-rwxr-xr-x
2023-05-11 02:04
update-mime-database
59.27
KB
-rwxr-xr-x
2022-04-29 17:19
uptime
14.3
KB
-rwxr-xr-x
2022-12-19 06:06
usb-devices
4.35
KB
-rwxr-xr-x
2024-01-24 21:32
usbhid-dump
30.76
KB
-rwxr-xr-x
2024-01-24 21:32
usbreset
14.46
KB
-rwxr-xr-x
2024-01-24 21:32
users
38.89
KB
-rwxr-xr-x
2022-09-20 15:27
utmpdump
30.3
KB
-rwxr-xr-x
2024-11-21 20:01
vdir
147.8
KB
-rwxr-xr-x
2022-09-20 15:27
vi
1.55
MB
-rwxr-xr-x
2025-02-16 05:23
view
1.55
MB
-rwxr-xr-x
2025-02-16 05:23
vim.tiny
1.55
MB
-rwxr-xr-x
2025-02-16 05:23
vmstat
34.72
KB
-rwxr-xr-x
2022-12-19 06:06
w
22.3
KB
-rwxr-xr-x
2022-12-19 06:06
wall
38.3
KB
-rwxr-xr-x
2024-11-21 20:01
watch
26.71
KB
-rwxr-xr-x
2022-12-19 06:06
watchgnupg
18.23
KB
-rwxr-xr-x
2023-03-26 13:03
wc
51.05
KB
-rwxr-xr-x
2022-09-20 15:27
wdctl
70.34
KB
-rwxr-xr-x
2024-11-21 20:01
wget
459.36
KB
-rwxr-xr-x
2025-03-03 13:32
whatis
51.29
KB
-rwxr-xr-x
2023-03-12 22:23
whereis
30.77
KB
-rwxr-xr-x
2024-11-21 20:01
which
946
B
-rwxr-xr-x
2023-07-28 23:46
which.debianutils
946
B
-rwxr-xr-x
2023-07-28 23:46
whiptail
26.75
KB
-rwxr-xr-x
2023-01-31 14:53
who
59.02
KB
-rwxr-xr-x
2022-09-20 15:27
whoami
38.86
KB
-rwxr-xr-x
2022-09-20 15:27
write
22.31
KB
-rwxr-xr-x
2024-11-21 20:01
wsrep_sst_backup
2.39
KB
-rwxr-xr-x
2025-02-19 00:56
wsrep_sst_common
66.5
KB
-rwxr-xr-x
2025-02-19 00:56
wsrep_sst_mariabackup
49.21
KB
-rwxr-xr-x
2025-02-19 00:56
wsrep_sst_mysqldump
8.04
KB
-rwxr-xr-x
2025-02-19 00:56
wsrep_sst_rsync
29.7
KB
-rwxr-xr-x
2025-02-19 00:56
wsrep_sst_rsync_wan
29.7
KB
-rwxr-xr-x
2025-02-19 00:56
x86_64
26.58
KB
-rwxr-xr-x
2024-11-21 20:01
x86_64-linux-gnu-addr2line
23.14
KB
-rwxr-xr-x
2023-01-14 17:24
x86_64-linux-gnu-ar
51.17
KB
-rwxr-xr-x
2023-01-14 17:24
x86_64-linux-gnu-as
897.41
KB
-rwxr-xr-x
2023-01-14 17:24
x86_64-linux-gnu-c++filt
18.51
KB
-rwxr-xr-x
2023-01-14 17:24
x86_64-linux-gnu-cpp
1.24
MB
-rwxr-xr-x
2023-01-08 09:12
x86_64-linux-gnu-cpp-12
1.24
MB
-rwxr-xr-x
2023-01-08 09:12
x86_64-linux-gnu-dwp
1.79
MB
-rwxr-xr-x
2023-01-14 17:24
x86_64-linux-gnu-elfedit
35.03
KB
-rwxr-xr-x
2023-01-14 17:24
x86_64-linux-gnu-g++
1.25
MB
-rwxr-xr-x
2023-01-08 09:12
x86_64-linux-gnu-g++-12
1.25
MB
-rwxr-xr-x
2023-01-08 09:12
x86_64-linux-gnu-gcc
1.24
MB
-rwxr-xr-x
2023-01-08 09:12
x86_64-linux-gnu-gcc-12
1.24
MB
-rwxr-xr-x
2023-01-08 09:12
x86_64-linux-gnu-gcc-ar
34.54
KB
-rwxr-xr-x
2023-01-08 09:12
x86_64-linux-gnu-gcc-ar-12
34.54
KB
-rwxr-xr-x
2023-01-08 09:12
x86_64-linux-gnu-gcc-nm
34.54
KB
-rwxr-xr-x
2023-01-08 09:12
x86_64-linux-gnu-gcc-nm-12
34.54
KB
-rwxr-xr-x
2023-01-08 09:12
x86_64-linux-gnu-gcc-ranlib
34.54
KB
-rwxr-xr-x
2023-01-08 09:12
x86_64-linux-gnu-gcc-ranlib-12
34.54
KB
-rwxr-xr-x
2023-01-08 09:12
x86_64-linux-gnu-gcov
720.16
KB
-rwxr-xr-x
2023-01-08 09:12
x86_64-linux-gnu-gcov-12
720.16
KB
-rwxr-xr-x
2023-01-08 09:12
x86_64-linux-gnu-gcov-dump
568.02
KB
-rwxr-xr-x
2023-01-08 09:12
x86_64-linux-gnu-gcov-dump-12
568.02
KB
-rwxr-xr-x
2023-01-08 09:12
x86_64-linux-gnu-gcov-tool
588.09
KB
-rwxr-xr-x
2023-01-08 09:12
x86_64-linux-gnu-gcov-tool-12
588.09
KB
-rwxr-xr-x
2023-01-08 09:12
x86_64-linux-gnu-gold
2.99
MB
-rwxr-xr-x
2023-01-14 17:24
x86_64-linux-gnu-gp-archive
159.06
KB
-rwxr-xr-x
2023-01-14 17:24
x86_64-linux-gnu-gp-collect-app
175.27
KB
-rwxr-xr-x
2023-01-14 17:24
x86_64-linux-gnu-gp-display-html
578.29
KB
-rwxr-xr-x
2023-01-14 17:24
x86_64-linux-gnu-gp-display-src
150.81
KB
-rwxr-xr-x
2023-01-14 17:24
x86_64-linux-gnu-gp-display-text
257.3
KB
-rwxr-xr-x
2023-01-14 17:24
x86_64-linux-gnu-gprof
108.35
KB
-rwxr-xr-x
2023-01-14 17:24
x86_64-linux-gnu-gprofng
146.59
KB
-rwxr-xr-x
2023-01-14 17:24
x86_64-linux-gnu-ld
1.27
MB
-rwxr-xr-x
2023-01-14 17:24
x86_64-linux-gnu-ld.bfd
1.27
MB
-rwxr-xr-x
2023-01-14 17:24
x86_64-linux-gnu-ld.gold
2.99
MB
-rwxr-xr-x
2023-01-14 17:24
x86_64-linux-gnu-lto-dump
30.47
MB
-rwxr-xr-x
2023-01-08 09:12
x86_64-linux-gnu-lto-dump-12
30.47
MB
-rwxr-xr-x
2023-01-08 09:12
x86_64-linux-gnu-nm
44.03
KB
-rwxr-xr-x
2023-01-14 17:24
x86_64-linux-gnu-objcopy
155.66
KB
-rwxr-xr-x
2023-01-14 17:24
x86_64-linux-gnu-objdump
362.56
KB
-rwxr-xr-x
2023-01-14 17:24
x86_64-linux-gnu-pkg-config
44.04
KB
-rwxr-xr-x
2023-01-22 11:06
x86_64-linux-gnu-pkgconf
44.04
KB
-rwxr-xr-x
2023-01-22 11:06
x86_64-linux-gnu-python3-config
3
KB
-rwxr-xr-x
2024-11-30 21:22
x86_64-linux-gnu-python3.11-config
3
KB
-rwxr-xr-x
2024-11-30 21:22
x86_64-linux-gnu-ranlib
51.17
KB
-rwxr-xr-x
2023-01-14 17:24
x86_64-linux-gnu-readelf
751.38
KB
-rwxr-xr-x
2023-01-14 17:24
x86_64-linux-gnu-size
26.86
KB
-rwxr-xr-x
2023-01-14 17:24
x86_64-linux-gnu-strings
30.98
KB
-rwxr-xr-x
2023-01-14 17:24
x86_64-linux-gnu-strip
155.7
KB
-rwxr-xr-x
2023-01-14 17:24
xargs
70.45
KB
-rwxr-xr-x
2023-01-08 18:07
xauth
51.5
KB
-rwxr-xr-x
2023-01-24 16:29
xdg-user-dir
234
B
-rwxr-xr-x
2022-09-26 14:37
xdg-user-dirs-update
26.16
KB
-rwxr-xr-x
2022-09-26 14:37
xgettext
292.78
KB
-rwxr-xr-x
2023-02-26 15:20
xsubpp
5.05
KB
-rwxr-xr-x
2023-11-25 20:59
xz
82.7
KB
-rwxr-xr-x
2025-04-03 19:55
xzcat
82.7
KB
-rwxr-xr-x
2025-04-03 19:55
xzcmp
7.25
KB
-rwxr-xr-x
2025-04-03 19:55
xzdiff
7.25
KB
-rwxr-xr-x
2025-04-03 19:55
xzegrep
10.09
KB
-rwxr-xr-x
2025-04-03 19:55
xzfgrep
10.09
KB
-rwxr-xr-x
2025-04-03 19:55
xzgrep
10.09
KB
-rwxr-xr-x
2025-04-03 19:55
xzless
1.77
KB
-rwxr-xr-x
2025-04-03 19:55
xzmore
2.14
KB
-rwxr-xr-x
2025-04-03 19:55
yes
38.83
KB
-rwxr-xr-x
2022-09-20 15:27
ypdomainname
22.15
KB
-rwxr-xr-x
2022-12-19 13:33
zcat
1.94
KB
-rwxr-xr-x
2022-04-10 02:22
zcmp
1.64
KB
-rwxr-xr-x
2022-04-10 02:22
zdiff
6.31
KB
-rwxr-xr-x
2022-04-10 02:22
zdump
22.52
KB
-rwxr-xr-x
2025-03-06 22:46
zegrep
29
B
-rwxr-xr-x
2022-04-10 02:22
zfgrep
29
B
-rwxr-xr-x
2022-04-10 02:22
zforce
2.03
KB
-rwxr-xr-x
2022-04-10 02:22
zgrep
7.91
KB
-rwxr-xr-x
2022-04-10 02:22
zip
212.27
KB
-rwxr-xr-x
2023-02-19 18:00
zipcloak
92.48
KB
-rwxr-xr-x
2023-02-19 18:00
zipdetails
68.55
KB
-rwxr-xr-x
2023-11-25 20:59
zipgrep
2.89
KB
-rwxr-xr-x
2023-02-19 18:02
zipinfo
175.05
KB
-rwxr-xr-x
2023-02-19 18:02
zipnote
84.16
KB
-rwxr-xr-x
2023-02-19 18:00
zipsplit
88.19
KB
-rwxr-xr-x
2023-02-19 18:00
zless
2.15
KB
-rwxr-xr-x
2022-04-10 02:22
zmore
1.8
KB
-rwxr-xr-x
2022-04-10 02:22
znew
4.47
KB
-rwxr-xr-x
2022-04-10 02:22
zstd
1.22
MB
-rwxr-xr-x
2023-03-18 20:58
zstdcat
1.22
MB
-rwxr-xr-x
2023-03-18 20:58
zstdgrep
3.78
KB
-rwxr-xr-x
2023-03-18 20:58
zstdless
197
B
-rwxr-xr-x
2023-03-18 20:58
zstdmt
1.22
MB
-rwxr-xr-x
2023-03-18 20:58
Save
Rename
#!/bin/sh # # $Id: munchlist.X,v 1.70 2015-02-08 00:35:41-08 geoff Exp $ # # Copyright 1987, 1988, 1989, 1992, 1993, 1999, 2001, 2005, Geoff Kuenning, # Claremont, CA. # All rights reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # 1. Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # 2. Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # 3. All modifications to the source code must be clearly marked as # such. Binary redistributions based on modified source code # must be clearly marked as modified versions in the documentation # and/or other materials provided with the distribution. # 4. The code that causes the 'ispell -v' command to display a prominent # link to the official ispell Web site may not be removed. # 5. The name of Geoff Kuenning may not be used to endorse or promote # products derived from this software without specific prior # written permission. # # THIS SOFTWARE IS PROVIDED BY GEOFF KUENNING AND CONTRIBUTORS ``AS IS'' AND # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE # ARE DISCLAIMED. IN NO EVENT SHALL GEOFF KUENNING OR CONTRIBUTORS BE LIABLE # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS # OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # # Given a list of words for ispell, generate a reduced list # in which all possible affixes have been collapsed. The reduced # list will match the same list as the original. # # Usage: # # munchlist [-l lang] [-c lang] [-s hashfile] [-D] [-w chars] [-v] \ # [file] ... # # Options: # # -l lang Specifies the language table to be used. The default # is "$LIBDIR/default.aff". # -c lang Specifies "conversion" language table. If this option is # given, the input file(s) will be assumed to be described by # this table, rather than the table given in the -l option. # This may be used to convert between incompatible language # tables. (When in doubt, use this option -- it doesn't # hurt, and it may save you from creating a dictionary that has # illegal words in it). The default is no conversion. # -T suff Specifies that the source word lists are in the format # of a "suff"-suffixed file, rather than in the # canonical form. For example, "-T tex" specifies that # string characters in the word lists are in TeX format. # The string character conversions are taken from the language # table specified by the "-l" switch. # -s Remove any words that are already covered by the # dictionary in 'hashfile'. The words will be removed # only if all affixes are covered. This option should not be # specified when the main dictionary is being munched. # 'Hashfile' must have been created with the language # table given in the -l option, but this is not checked. # -D Leave temporary files for debugging purposes # -w Passed on to ispell (specify chars that are part of a word) # Unfortunately, special characters must be quoted twice # rather than once when invoking this script. Also, since # buildhash doesn't accept this option, the final ispell -l # step ignores it, making it somewhat less than useful. # -v Report progress to stderr. # # The given input files are merged, then processed by 'ispell -c' # to generate possible affix lists; these are then combined # and reduced. The final result is written to standard output. # # For portability to older systems, I have avoided getopt. # # Geoff Kuenning # 2/28/87 # # $Log: munchlist.X,v $ # Revision 1.70 2015-02-08 00:35:41-08 geoff # Be a bit more paranoid about creating temporary files. Fix a problem # with detecting a new-style sort that refuses to be backwards # compatible (and yes, it's still cretinism to break backwards # compatibility--but I have to put up with the cretins). # # Revision 1.69 2005/04/28 14:46:51 geoff # Remove references to the now-obsolete count file. # # Revision 1.68 2005/04/27 01:18:34 geoff # Work around idiotic POSIX incompatibilities in sort. Add secure # temp-file handling. # # Revision 1.67 2005/04/14 23:11:36 geoff # Pass the -w switch to icombine. # # Revision 1.66 2005/04/14 21:25:52 geoff # Make the temporary-file handling safer (using mktemp, if it exists). # # Revision 1.65 2005/04/14 14:39:33 geoff # Use /tmp as the default temp directory # # Revision 1.64 2005/04/14 14:38:23 geoff # Update license. Protect against modernized (i.e., incompatible) and # internationalized sort commands. Change the debugging names of the # minimal-affixes count and stat files. # # Revision 1.63 2002/06/20 23:46:16 geoff # Add yet more locale definitions so that we won't run into bugs caused # by sorting inconsistencies. # # Revision 1.62 2001/09/06 00:30:28 geoff # Many changes from Eli Zaretskii to support DJGPP compilation. # # Revision 1.61 2001/07/25 21:51:46 geoff # Minor license update. # # Revision 1.60 2001/07/23 20:24:04 geoff # Update the copyright and the license. # # Revision 1.59 2001/06/07 08:02:18 geoff # Fix a copule of typos in comments. # # Revision 1.58 2000/11/14 07:27:04 geoff # Don't generate an extra dot when attempting to preserve the count # files in -D mode. # # Revision 1.57 2000/10/06 23:59:48 geoff # Don't assume dot is in the path # # Revision 1.56 1999/01/07 01:22:42 geoff # Update the copyright. # # Revision 1.55 1997/12/02 06:25:01 geoff # Start the cross-expansions loop count at 1, not zero. # # Revision 1.54 1997/12/01 00:53:52 geoff # Abort the munchlist cross-product loop if it goes over 100 passes. # # Revision 1.53 1995/01/08 23:23:36 geoff # Support variable hashfile suffixes for DOS purposes. # # Revision 1.52 1994/12/27 23:08:46 geoff # Dynamically determine how to pass backslashes to 'tr' so that it'll # work on any machine. Define LC_CTYPE to work around yet more # internationalized sort programs. Work around a bug in GNU uniq that # uses the wrong separator between counts and duplicated lines. # # Revision 1.51 1994/11/21 07:02:54 geoff # Correctly quote the arguments to 'tr' when detecting systems with # unsigned sorts. Be sure to provide a zero exit status on all systems, # even if MUNCHDEBUG is not set. # # Revision 1.50 1994/10/25 05:46:05 geoff # Export values for LANG and LOCALE in an attempt to override some # stupidly-internationalized sort programs. # # Revision 1.49 1994/10/04 03:51:30 geoff # Add the MUNCHMAIL feature. If the MUNCHMAIL environment variable is # set to an email address, debugging information about the munchlist run # will automatically be collected and mailed to that address. # # Revision 1.48 1994/05/17 06:32:06 geoff # Don't look for affix tables in LIBDIR if the name contains a slash # # Revision 1.47 1994/04/27 02:50:48 geoff # Fix some cosmetic flaws in the verbose-mode messages. # # Revision 1.46 1994/01/25 07:11:59 geoff # Get rid of all old RCS log lines in preparation for the 3.1 release. # # LIBDIR=/usr/lib/ispell TDIR=${TMPDIR-/tmp} MUNCHDIR=`mktemp -d ${TDIR}/munchXXXXXXXXXX 2>/dev/null` || { echo "$0: Failed to create temporary directory, exiting..." 1>&2; exit 1; } TMP=${MUNCHDIR}/munch. MAILDEBUGDIR=${MUNCHDIR-/tmp} if [ "X$MUNCHMAIL" != X ] then exec 2> ${MAILDEBUGDIR}/munchlist.mail echo "munchlist $*" 1>&2 set -vx fi SORTTMP="-T ${TDIR}" # !!SORTTMP!! DBDIR=${MUNCHDEBUGDIR-$MAILDEBUGDIR} # Detect MS-DOS systems and arrange to use their silly suffix system if [ -z "$COMSPEC$ComSpec" ] then EXE="" else EXE=".exe" fi # # Set up some program names. This prefers the versions that are in # the same directory as munchlist was run from; if that can't be # figured out, it prefers local versions and finally ones chosen from # $PATH. # # This code could be simplified by using the dirname command, but it's # not available everywhere. For the same reason, we use -r rather than # -x to test for executable files. # case "$0" in */*) bindir=`expr "$0" : '\(.*\)/[^/]*'` ;; *) bindir='.' ;; esac if [ -r $bindir/buildhash$EXE ] then BUILDHASH=$bindir/buildhash$EXE elif [ -r ./buildhash$EXE ] then BUILDHASH=./buildhash$EXE else BUILDHASH=buildhash fi if [ -r $bindir/icombine$EXE ] then COMBINE=$bindir/icombine$EXE elif [ -r ./icombine$EXE ] then COMBINE=./icombine$EXE else COMBINE=icombine fi if [ -r $bindir/ijoin$EXE ] then JOIN=$bindir/ijoin$EXE elif [ -r ./ijoin$EXE ] then JOIN=./ijoin$EXE else JOIN=ijoin fi if [ -r $bindir/ispell$EXE ] then ISPELL=$bindir/ispell$EXE elif [ -r ./ispell$EXE ] then ISPELL=./ispell$EXE else ISPELL=ispell fi # In one of the most incredibly stupid decisions of all time, some # genius decided to break backwards compatibility by "deprecating" the # old-style sort switches even though it was trivial to recognize both # styles. The result is that that thousands of people (like me) will # have to rewrite shell scripts to tolerate that stupidity. (It's not # that the new syntax is bad--it's definitely easier to understand. # But that doesn't excuse breaking compatibility.) # CRETIN_SORT=true # # The following is necessary so that some internationalized versions of # sort(1) don't confuse things by sorting into a nonstandard order. # LANG=C LOCALE=C LC_ALL=C LC_COLLATE=C LC_CTYPE=C export LANG LOCALE LC_COLLATE LC_CTYPE # # The following aren't strictly necessary, but I've been made paranoid # by problems with the stuff above. It can't hurt to set them to a # sensible value. LC_MESSAGES=C LC_MONETARY=C LC_NUMERIC=C LC_TIME=C export LC_MESSAGES LC_MONETARY LC_NUMERIC LC_TIME debug=no dictopt= langtabs=${LIBDIR}/default.aff convtabs= strip=no icflags= verbose=false # The following value of "wchars" is necessary to prevent ispell from # receiving a null argument if -w is not specified. As long as "A" is # a member of the existing character set, ispell will ignore the argument. wchars=-wA while [ $# != 0 ] do case "$1" in -l) case "$2" in */*) langtabs=$2 ;; *) if [ -r "$2" ] then langtabs="$2" else langtabs="${LIBDIR}/$2" fi ;; esac if [ ! -r "$langtabs" ] then echo "Can't open language table '$2'" 1>&2 rm -rf $MUNCHDIR exit 1 fi shift ;; -c) if [ -r "$2" ] then convtabs="$2" elif [ -r "${LIBDIR}/$2" ] then convtabs="${LIBDIR}/$2" else echo "Can't open conversion language table '$2'" 1>&2 rm -rf $MUNCHDIR exit 1 fi shift ;; -s) dictopt="-d $2" strip=yes shift ;; -D) debug=yes ;; -T) icflags="-T $2" shift ;; -v) verbose=true ;; -w) wchars="-w$2" shift ;; --) shift break ;; -) break ;; -*) echo 'Usage: munchlist [-l lang] [-c lang] [-T suff] [-s hashfile] [-D] [-w chars] [-v] [file] ...' \ 1>&2 rm -rf $MUNCHDIR exit 2 ;; *) break ;; esac shift done if [ "X$MUNCHMAIL" != X ] then verbose=true debug=yes fi trap "rm -rf $MUNCHDIR; exit 1" 1 2 13 15 # # Names of temporary files. This is just to make the code a little easier # to read. # EXPANDEDINPUT=${TMP}a STRIPPEDINPUT=${TMP}b CRUNCHEDINPUT=${TMP}c PRODUCTLIST=${TMP}d EXPANDEDPAIRS=${TMP}e LEGALFLAGLIST=${TMP}f JOINEDPAIRS=${TMP}g MINIMALAFFIXES=${TMP}h CROSSROOTS=${TMP}i CROSSEXPANDED=${TMP}j CROSSPAIRS=${TMP}k CROSSILLEGAL=${TMP}l ILLEGALCOMBOS=${TMP}m FAKEDICT=${TMP}n # Ispell insists that hash files have a ".hash" suffix FAKEHASH=${TMP}o.hash AWKSCRIPT=${TMP}p # If the file exists than we should exit with error ERRORFLAGFILE=${TMP}z if [ "$debug" = yes ] then touch $EXPANDEDINPUT $STRIPPEDINPUT $CRUNCHEDINPUT $PRODUCTLIST \ $EXPANDEDPAIRS $LEGALFLAGLIST $JOINEDPAIRS $MINIMALAFFIXES \ $CROSSROOTS $CROSSEXPANDED $CROSSPAIRS $CROSSILLEGAL $ILLEGALCOMBOS \ $FAKEDICT $FAKEHASH $AWKSCRIPT rm -f ${DBDIR}/EXPANDEDINPUT ${DBDIR}/STRIPPEDINPUT \ ${DBDIR}/CRUNCHEDINPUT ${DBDIR}/PRODUCTLIST ${DBDIR}/EXPANDEDPAIRS \ ${DBDIR}/LEGALFLAGLIST ${DBDIR}/JOINEDPAIRS ${DBDIR}/MINIMALAFFIXES \ ${DBDIR}/CROSSROOTS ${DBDIR}/CROSSEXPANDED ${DBDIR}/CROSSPAIRS \ ${DBDIR}/CROSSILLEGAL ${DBDIR}/ILLEGALCOMBOS ${DBDIR}/FAKEDICT \ ${DBDIR}/FAKEHASH.hash ${DBDIR}/AWKSCRIPT \ ${DBDIR}/CROSSROOTS.[0-9]* ${DBDIR}/CROSSEXP.[0-9]* \ ${DBDIR}/CROSSPAIRS.[0-9]* ${DBDIR}/CROSSILLEGAL.[0-9]* ln $EXPANDEDINPUT ${DBDIR}/EXPANDEDINPUT ln $STRIPPEDINPUT ${DBDIR}/STRIPPEDINPUT ln $CRUNCHEDINPUT ${DBDIR}/CRUNCHEDINPUT ln $PRODUCTLIST ${DBDIR}/PRODUCTLIST ln $EXPANDEDPAIRS ${DBDIR}/EXPANDEDPAIRS ln $LEGALFLAGLIST ${DBDIR}/LEGALFLAGLIST ln $JOINEDPAIRS ${DBDIR}/JOINEDPAIRS ln $MINIMALAFFIXES ${DBDIR}/MINIMALAFFIXES ln $CROSSROOTS ${DBDIR}/CROSSROOTS ln $CROSSEXPANDED ${DBDIR}/CROSSEXPANDED ln $CROSSPAIRS ${DBDIR}/CROSSPAIRS ln $CROSSILLEGAL ${DBDIR}/CROSSILLEGAL ln $ILLEGALCOMBOS ${DBDIR}/ILLEGALCOMBOS ln $FAKEDICT ${DBDIR}/FAKEDICT ln $FAKEHASH ${DBDIR}/FAKEHASH.hash ln $AWKSCRIPT ${DBDIR}/AWKSCRIPT fi run() { "$@" || { status=$? touch "$ERRORFLAGFILE" echo "$@ failed with $status" > "$ERRORFLAGFILE" exit $status } } checkerrorflagfile() { [ ! -e "$ERRORFLAGFILE" ] || { cat "$ERRORFLAGFILE" 1>&2 rm -rf $MUNCHDIR exit 1 } } rm -f "$ERRORFLAGFILE" JOIN="run $JOIN" COMBINE="run $COMBINE" ISPELL="run $ISPELL" set -e # # Create a dummy dictionary to hold a compiled copy of the language # table. Initially, it holds the conversion table, if it exists. # case "X$convtabs" in X) convtabs="$langtabs" ;; esac echo 'QQQQQQQQ' > $FAKEDICT $BUILDHASH -s $FAKEDICT $convtabs $FAKEHASH \ || (echo "Couldn't create fake hash file" 1>&2; rm -rf $MUNCHDIR; exit 1) \ || exit 1 # # Figure out how 'sort' sorts signed fields, for arguments to ijoin. # This is a little bit of a tricky pipe, but the result is that SIGNED # is set to "-s" if characters with the top bit set sort before those # without, and "-u" if the reverse is true. How does it work? The # first "tr" step generates two lines, one containing "-u", the other # with the same but with the high-order bit set. The second "tr" # changes the high-bit "-u" back to "-s". If the high-bit "-u" was # sorted first, the sed step will select "-s" for SIGNED; otherwise # it'll pick "-u". We have to be careful about backslash quoting # conventions, because some systems differ. # backslash=\\ for i in 0 1 2 3 do if [ `echo a | tr "${backslash}141" b` = b ] then break fi backslash="$backslash$backslash" done SIGNED=`echo '-s -u' | tr s "${backslash}365" | sort | tr "${backslash}365" s | sed -e 1q` # # Collect all the input and expand all the affix options ($ISPELL -e), # and preserve (sorted) for later joining in EXPANDEDINPUT. The icombine # step is to make sure that unneeded capitalizations (e.g., Farmer and farmer) # are weeded out. The first sort must be folded for icombine; the second # must be unfolded for join. # $verbose && echo "Collecting input." 1>&2 if $CRETIN_SORT then sortopts='-k 1f,1 -k 1' else sortopts='+0f -1 +0' fi if [ $# -eq 0 ] then $ISPELL "$wchars" -e1 -d $FAKEHASH -p /dev/null | tr " " ' ' else cat "$@" | $ISPELL "$wchars" -e1 -d $FAKEHASH -p /dev/null | tr " " ' ' fi \ | sort $SORTTMP -u $sortopts \ | $COMBINE $icflags "$wchars" $langtabs \ | sort $SORTTMP -u > $EXPANDEDINPUT checkerrorflagfile # # If a conversion table existed, recreate the fake hash file with the # "real" language table. # case "$convtabs" in $langtabs) ;; *) $BUILDHASH -s $FAKEDICT $langtabs $FAKEHASH \ || (echo "Couldn't create fake hash file" 1>&2; \ rm -rf $MUNCHDIR; exit 1) \ || exit 1 ;; esac rm -f ${FAKEDICT}* # # If the -s (strip) option was specified, remove all # expanded words that are covered by the dictionary. This produces # the final list of expanded words that this dictionary must cover. # Leave the list in STRIPPEDINPUT. # if [ "X$strip" = "Xno" ] then rm -f $STRIPPEDINPUT ln $EXPANDEDINPUT $STRIPPEDINPUT if [ "$debug" = yes ] then rm -f ${DBDIR}/STRIPPEDINPUT ln $STRIPPEDINPUT ${DBDIR}/STRIPPEDINPUT fi else $verbose && echo "Stripping words already in the dictionary." 1>&2 $ISPELL "$wchars" -l $dictopt -p /dev/null < $EXPANDEDINPUT \ > $STRIPPEDINPUT checkerrorflagfile fi # # Figure out what the flag-marking character is. # $verbose && echo "Finding flag marker." 1>&2 flagmarker=`$ISPELL -D -d $FAKEHASH \ | sed -n -e '/^flagmarker/s/flagmarker //p'` case "$flagmarker" in \\*) flagmarker=`expr "$flagmarker" : '.\(.\)'` ;; esac checkerrorflagfile # # Munch the input to generate roots and affixes ($ISPELL -c). We are # only interested in words that have at least one affix (grep -E $flagmarker); # the next step will pick up the rest. Some of the roots are illegal. We # use join to restrict the output to those root words that are found # in the original dictionary. # $verbose && echo "Generating roots and affixes." 1>&2 if $CRETIN_SORT then sortopts='-k 1,1 -k 2' else sortopts='+0 -1 +1' fi $ISPELL "$wchars" -c -W0 -d $FAKEHASH -p /dev/null < $STRIPPEDINPUT \ | tr " " ' ' \ | grep -a -E "$flagmarker" | sort $SORTTMP -u "-t$flagmarker" $sortopts \ | $JOIN $SIGNED "-t$flagmarker" - $EXPANDEDINPUT > $CRUNCHEDINPUT checkerrorflagfile # # We now have a list of legal roots, and of affixes that apply to the # root words. However, it is possible for some affix flags to generate more # than one output word. For example, with the flag table entry # # flag R: . > ER # . > ERS # # the input "BOTHER" will generate an entry "BOTH/R" in CRUNCHEDINPUT. But # this will accept "BOTHER" and "BOTHERS" in the dictionary, which is # wrong (in this case, though it's good English). # # To cure this problem, we first have to know which flags generate which # expansions. We use $ISPELL -e3 to expand the flags (the second e causes # the root and flag to be included in the output), and get pairs # suitable for joining. In the example above, we would get # # BOTH/R BOTHER # BOTH/R BOTHERS # # We save this in EXPANDEDPAIRS for the next step. # $verbose && echo 'Expanding dictionary into EXPANDEDPAIRS.' 1>&2 if $CRETIN_SORT then sortopts='-k 2' else sortopts='+1' fi $ISPELL "$wchars" -e3 -d $FAKEHASH -p /dev/null < $CRUNCHEDINPUT \ | sort $SORTTMP $sortopts > $EXPANDEDPAIRS checkerrorflagfile # # Now we want to extract the lines in EXPANDEDPAIRS in which the second field # is *not* listed in the original dictionary EXPANDEDINPUT; these illegal # lines contain the flags we cannot include without accepting illegal words. # It is somewhat easier to extract those which actually are listed (with # join), and then use comm to strip these from EXPANDEDPAIRS to get the # illegal expansions, together with the flags that generate them (we must # re-sort EXPANDEDPAIRS before running comm). Sed # gets rid of the expansion and uniq gets rid of duplicates. Comm then # selects the remainder of the list from CRUNCHEDINPUT and puts it in # LEGALFLAGLIST. The final step is to use a sort and icombine to put # the list into a one-entry-per-root format. # # BTW, I thought of using cut for the sed step (on systems that have it), # but it turns out that sed is faster! # $JOIN -j1 2 -o 1.1 1.2 $SIGNED $EXPANDEDPAIRS $EXPANDEDINPUT \ | sort $SORTTMP -u > $JOINEDPAIRS sort $SORTTMP -o $EXPANDEDPAIRS $EXPANDEDPAIRS sort $SORTTMP -o $CRUNCHEDINPUT $CRUNCHEDINPUT $verbose && echo 'Creating list of legal roots/flags.' 1>&2 if $CRETIN_SORT then sortopts='-k 1f,1 -k 1' else sortopts='+0f -1 +0' fi comm -13 $JOINEDPAIRS $EXPANDEDPAIRS \ | (sed -e 's; .*$;;' ; rm -f $JOINEDPAIRS $EXPANDEDPAIRS) \ | uniq \ | (comm -13 - $CRUNCHEDINPUT ; rm -f $CRUNCHEDINPUT) \ | sort $SORTTMP -u "-t$flagmarker" $sortopts \ | $COMBINE "$wchars" $langtabs > $LEGALFLAGLIST checkerrorflagfile # # LEGALFLAGLIST now contains root/flag combinations that, when expanded, # produce only words from EXPANDEDPAIRS. However, there is still a # problem if the language tables have any cross-product flags. A legal # root may appear in LEGALFLAGLIST with two flags that participate # in cross-products. When such a dictionary entry is expanded, # the cross-products will generate some extra words that may not # be in EXPANDEDPAIRS. We need to remove these from LEGALFLAGLIST. # # The first step is to collect the names of the flags that participate # in cross-products. Ispell will dump the language tables for us, and # sed is a pretty handy way to strip out extra information. We use # uniq -c and a numerical sort to put the flags in approximate order of how # "productive" they are (in terms of how likely they are to generate a lot # of output words). The least-productive flags are given last and will # be removed first. # $verbose \ && echo 'Creating list of flags that participate in cross-products.' 1>&2 if $CRETIN_SORT then sortopts='-k 1rn,1 -k 3' else sortopts='+0rn -1 +2' fi $ISPELL -D -d $FAKEHASH \ | sed -n -e '1,$s/:.*$// /^flagmarker/d /^prefixes/,/^suffixes/s/^ flag \*/p /p /^suffixes/,$s/^ flag \*/s /p' \ | sort $SORTTMP \ | uniq -c \ | tr ' ' ' ' \ | sort $SORTTMP $sortopts > $PRODUCTLIST checkerrorflagfile if [ `grep -a -F -c ' p ' $PRODUCTLIST` -gt 0 \ -a `grep -a -F -c ' s ' $PRODUCTLIST` -gt 0 ] then # # The language tables allow cross products. See if LEGALFLAGLIST has # any roots with multiple cross-product flags. Put them in CROSSROOTS. # $verbose && echo 'Finding prefix and suffix flags.' 1>&2 preflags=`sed -n -e 's/^[ 0-9]*p //p' $PRODUCTLIST | tr -d ' '` sufflags=`sed -n -e 's/^[ 0-9]*s //p' $PRODUCTLIST | tr -d ' '` grep -a -E "$flagmarker.*[$preflags].*[$sufflags]|$flagmarker.*[$sufflags].*[$preflags]" \ $LEGALFLAGLIST \ > $CROSSROOTS || : # # We will need an awk script; it's so big that it core-dumps my shell # under certain conditions. The rationale behind the script is commented # where the script is used. Note that you may want to change this # script for languages other than English. # case "$flagmarker" in /) sedchar=: ;; *) sedchar=/ ;; esac $verbose && echo 'Creating awk script.' 1>&2 sed -e "s/PREFLAGS/$preflags/" -e "s/SUFFLAGS/$sufflags/" \ -e "s;ILLEGALCOMBOS;$ILLEGALCOMBOS;" \ -e "s${sedchar}FLAGMARKER${sedchar}$flagmarker${sedchar}" \ > $AWKSCRIPT << 'ENDOFAWKSCRIPT' BEGIN \ { preflags = "PREFLAGS" sufflags = "SUFFLAGS" illegalcombos = "ILLEGALCOMBOS" flagmarker = "FLAGMARKER" pflaglen = length (preflags) for (i = 1; i <= pflaglen; i++) pflags[i] = substr (preflags, i, 1); sflaglen = length (sufflags) for (i = 1; i <= sflaglen; i++) sflags[i] = substr (sufflags, i, 1); } { len = length ($2) pnew2 = "" snew2 = "" pbad = "" sbad = "" sufs = 0 pres = 0 for (i = 1; i <= len; i++) { curflag = substr ($2, i, 1) for (j = 1; j <= pflaglen; j++) { if (pflags[j] == curflag) { pres++ pnew2 = substr ($2, 1, i - 1) substr ($2, i + 1) pbad = curflag } } for (j = 1; j <= sflaglen; j++) { if (sflags[j] == curflag) { sufs++ snew2 = substr ($2, 1, i - 1) substr ($2, i + 1) sbad = curflag } } } if (pres == 1) { print $1 flagmarker pnew2 print $1 flagmarker pbad >> illegalcombos } else if (sufs == 1) { print $1 flagmarker snew2 print $1 flagmarker sbad >> illegalcombos } else if (pres > 0) { print $1 flagmarker pnew2 print $1 flagmarker pbad >> illegalcombos } else { print $1 flagmarker snew2 print $1 flagmarker sbad >> illegalcombos } } ENDOFAWKSCRIPT : > $ILLEGALCOMBOS dbnum=1 while [ -s $CROSSROOTS ] do # # CROSSROOTS contains the roots whose cross-product expansions # might be illegal. We now need to locate the actual illegal ones. # We do this in much the same way we created LEGALFLAGLIST from # CRUNCHEDINPUT. First we make CROSSEXPANDED, which is analogous # to EXPANDEDPAIRS. # $verbose && echo "Creating cross expansions (pass $dbnum)." 1>&2 if $CRETIN_SORT then sortopts='-k 2' else sortopts='+1' fi $ISPELL "$wchars" -e3 -d $FAKEHASH -p /dev/null < $CROSSROOTS \ | sort $SORTTMP $sortopts > $CROSSEXPANDED checkerrorflagfile # # Now we join CROSSEXPANDED against EXPANDEDINPUT to produce # CROSSPAIRS, and then comm that against CROSSEXPANDED to # get CROSSILLEGAL, the list of illegal cross-product flag # combinations. # $JOIN -j1 2 -o 1.1 1.2 $SIGNED $CROSSEXPANDED $EXPANDEDINPUT \ | sort $SORTTMP -u > $CROSSPAIRS checkerrorflagfile sort $SORTTMP -u -o $CROSSEXPANDED $CROSSEXPANDED $verbose \ && echo "Finding illegal cross expansions (pass $dbnum)." 1>&2 comm -13 $CROSSPAIRS $CROSSEXPANDED \ | sed -e 's; .*$;;' \ | uniq > $CROSSILLEGAL if [ "$debug" = yes ] then mv $CROSSROOTS $DBDIR/CROSSROOTS.$dbnum ln $CROSSEXPANDED $DBDIR/CROSSEXP.$dbnum ln $CROSSPAIRS $DBDIR/CROSSPAIRS.$dbnum ln $CROSSILLEGAL $DBDIR/CROSSILLEGAL.$dbnum fi # # Now it is time to try to clear up the illegalities. For # each word in the illegal list, remove one of the cross-product # flags. The flag chosen is selected in an attempt to cure the # problem quickly, as follows: (1) if there is only one suffix # flag or only one prefix flag, we remove that. (2) If there is # a prefix flag, we remove the "least desirable" (according to # the order of preflags). (This may be pro-English prejudice, # and you might want to change this if your language is prefix-heavy). # (3) Otherwise we remove the least-desirable suffix flag # # The output of the awk script becomes the new CROSSROOTS. In # addition, we add the rejected flags to ILLEGALCOMBOS (this is done # inside the awk script) so they can be removed from LEGALFLAGLIST # later. # awk "-F$flagmarker" -f $AWKSCRIPT $CROSSILLEGAL > $CROSSROOTS if [ "$debug" = yes ] then rm -f $CROSSEXPANDED $CROSSPAIRS $CROSSILLEGAL fi dbnum=`expr $dbnum + 1` if [ $dbnum -gt 100 ] then echo "Too many passes, aborting cross-product loop. Munchlist failed." 1>&2 if [ "X$MUNCHMAIL" != X ] then ( ls -ld ${DBDIR}/[A-Z]* cat ${MAILDEBUGDIR}/munchlist.mail ) | mail -s 'Munchlist debug output' "$MUNCHMAIL" rm -f ${MAILDEBUGDIR}/munchlist.mail fi rm -rf $MUNCHDIR exit 1 fi done rm -f $CROSSEXPANDED $CROSSPAIRS $CROSSILLEGAL $AWKSCRIPT # # Now we have, in ILLEGALCOMBOS, a list of root/flag combinations # that must be removed from LEGALFLAGLIST to get the final list # of truly legal flags. ILLEGALCOMBOS has one flag per line, so # by turning LEGALFLAGLIST into this form (sed), it's an # easy task for comm. We have to recombine flags again after the # extraction, to get all flags for a given root on the same line so that # cross-products will come out right. # if [ -s $ILLEGALCOMBOS ] then sort $SORTTMP -u -o $ILLEGALCOMBOS $ILLEGALCOMBOS $verbose && echo 'Finding roots of cross expansions.' 1>&2 if $CRETIN_SORT then sortopts='-k 1f,1 -k 1' else sortopts='+0f -1 +0' fi sort $SORTTMP $LEGALFLAGLIST \ | sed -e '/\/../{ s;^\(.*\)/\(.\)\(.*\);\1/\2\ \1/\3; P D }' \ | comm -23 - $ILLEGALCOMBOS \ | sort $SORTTMP -u "-t$flagmarker" $sortopts \ | $COMBINE "$wchars" $langtabs > $CROSSROOTS checkerrorflagfile mv $CROSSROOTS $LEGALFLAGLIST if [ "$debug" = yes ] then rm -f ${DBDIR}/LEGALFLAGLIST1 ln $LEGALFLAGLIST ${DBDIR}/LEGALFLAGLIST1 fi fi fi rm -f $PRODUCTLIST $CROSSROOTS $ILLEGALCOMBOS $EXPANDEDINPUT # # We now have (in LEGALFLAGLIST) a list of roots and flags which will # accept words taken from EXPANDEDINPUT and no others (though some of # EXPANDEDINPUT is not covered by this list). However, many of the # expanded words can be generated in more than one way. For example, # "bather" can be generated from "bath/R" and "bathe/R". This wastes # unnecessary space in the raw dictionary and, in some cases, in the # hash file as well. The solution is to list the various ways of # getting a given word and choose exactly one. All other things being # equal, we want to choose the one with the highest expansion length # to root length ratio. The $ISPELL -e4 option takes care of this by # providing us with a field to sort on. # # The ispell/awk combination is similar to the ispell/sed pipe used to # generate EXPANDEDPAIRS, except that ispell adds an extra field # giving the sort order. The first sort gets things in order so the # first root listed is the one we want, and the second sort (-um) then # selects that first root. Sed strips the expansion from the root, # and a final sort -u generates MINIMALAFFIXES, the final list of # affixes that (more or less) minimally covers what it can from # EXPANDEDINPUT. # $verbose && echo 'Eliminating non-optimal affixes.' 1>&2 if $CRETIN_SORT then sortopts1='-k 2,2 -k 2rn,3 -k 1,1' sortopts2='-k 2,2' sortopts3='-k 1f,1 -k 1' else sortopts1='+1 -2 +2rn -3 +0 -1' sortopts2='+1 -2' sortopts3='+0f -1 +0' fi $ISPELL "$wchars" -e4 -d $FAKEHASH -p /dev/null < $LEGALFLAGLIST \ | sort $SORTTMP $sortopts1 \ | sort $SORTTMP -um $sortopts2 \ | sed -e 's; .*$;;' \ | sort $SORTTMP -u "-t$flagmarker" $sortopts3 > $MINIMALAFFIXES rm -f $LEGALFLAGLIST # # Now we're almost done. MINIMALAFFIXES covers some (with luck, most) # of the words in STRIPPEDINPUT. Now we must create a list of the remaining # words (those omitted by MINIMALAFFIXES) and add it to MINIMALAFFIXES. # The best way to do this is to actually build a partial dictionary from # MINIMALAFFIXES in FAKEHASH, and then use $ISPELL -l to list the words that # are not covered by this dictionary. This must then be combined with the # reduced version of MINIMALAFFIXES and sorted to produce the final result. # $verbose && echo "Generating output word list." 1>&2 if $CRETIN_SORT then sortopts='-k 1f,1 -k 1' else sortopts='+0f -1 +0' fi if [ -s $MINIMALAFFIXES ] then $BUILDHASH -s $MINIMALAFFIXES $langtabs $FAKEHASH > /dev/null \ || (echo "Couldn't create intermediate hash file" 1>&2; rm -rf $MUNCHDIR; exit 1) \ || exit 1 if [ "$debug" = yes ] then rm -f ${DBDIR}/MINIMALAFFIXES.stat ln $MINIMALAFFIXES.stat ${DBDIR}/MINIMALAFFIXES..stat fi ($ISPELL "$wchars" -l -d $FAKEHASH -p /dev/null < $STRIPPEDINPUT; \ $COMBINE "$wchars" $langtabs < $MINIMALAFFIXES) \ | sort $SORTTMP "-t$flagmarker" -u $sortopts else # MINIMALAFFIXES is empty; just produce a sorted version of STRIPPEDINPUT sort $SORTTMP "-t$flagmarker" -u $sortopts $STRIPPEDINPUT fi checkerrorflagfile if [ "X$MUNCHMAIL" != X ] then ( ls -ld ${DBDIR}/[A-Z]* cat ${MAILDEBUGDIR}/munchlist.mail ) | mail -s 'Munchlist debug output' "$MUNCHMAIL" rm -f ${MAILDEBUGDIR}/munchlist.mail fi rm -rf $MUNCHDIR exit 0