Linux asiatechwebsite 3.10.0-1160.144.1.el7.tuxcare.els3.x86_64 #1 SMP Fri Mar 6 13:52:53 UTC 2026 x86_64
Apache
: 10.190.0.3 | : 216.73.216.156
2134 Domain
7.4.33
asiatechinc
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
usr /
bin /
[ HOME SHELL ]
Name
Size
Permission
Action
2to3
95
B
-rwxr-xr-x
GET
14.71
KB
-rwxr-xr-x
HEAD
14.71
KB
-rwxr-xr-x
Mail
383.67
KB
-rwxr-xr-x
POST
14.71
KB
-rwxr-xr-x
[
40.52
KB
-rwxr-xr-x
a2p
105.32
KB
-rwxr-xr-x
ab
55.48
KB
-rwxr-xr-x
abs2rel
1.62
KB
-rwxr-xr-x
aclocal
35.87
KB
-rwxr-xr-x
aclocal-1.13
35.87
KB
-rwxr-xr-x
acpi_listen
15.35
KB
-rwxr-xr-x
addftinfo
24.27
KB
-rwxr-xr-x
addr2line
28.42
KB
-rwxr-xr-x
afm2tfm
38.41
KB
-rwxr-xr-x
alias
29
B
-rwxr-xr-x
allcm
3.4
KB
-rwxr-xr-x
allec
3.4
KB
-rwxr-xr-x
allneeded
903
B
-rwxr-xr-x
alt-java
8.87
KB
-rwxr-xr-x
alt-mysql-reconfigure
27.42
KB
-rwxr-xr-x
alt-php-mysql-reconfigure
27.42
KB
-rwxr-xr-x
alt-php-mysql-reconfigure.py
27.42
KB
-rwxr-xr-x
animate
7.05
KB
-rwxr-xr-x
annotate
11.13
KB
-rwxr-xr-x
annotate-output
1.74
KB
-rwxr-xr-x
anthoscli
132.86
MB
-rwxr-xr-x
applydeltarpm
68.53
KB
-rwxr-xr-x
apropos
45.49
KB
-rwxr-xr-x
ar
61.21
KB
-rwxr-xr-x
arch
32.3
KB
-rwxr-xr-x
arpaname
7.03
KB
-rwxr-xr-x
as
377.28
KB
-rwxr-xr-x
aserver
28.21
KB
-rwxr-xr-x
aspell
163.35
KB
-rwxr-xr-x
at
51.73
KB
-rwsr-xr-x
atq
51.73
KB
-rwsr-xr-x
atrm
51.73
KB
-rwsr-xr-x
audit2allow
14.21
KB
-rwxr-xr-x
audit2why
14.21
KB
-rwxr-xr-x
aulast
15.48
KB
-rwxr-xr-x
aulastlog
11.35
KB
-rwxr-xr-x
ausyscall
11.18
KB
-rwxr-xr-x
autoconf
14.42
KB
-rwxr-xr-x
autoheader
8.33
KB
-rwxr-xr-x
autom4te
31.43
KB
-rwxr-xr-x
automake
246.44
KB
-rwxr-xr-x
automake-1.13
246.44
KB
-rwxr-xr-x
autopoint
25.95
KB
-rwxr-xr-x
autoreconf
20.57
KB
-rwxr-xr-x
autoscan
16.72
KB
-rwxr-xr-x
autoupdate
33.08
KB
-rwxr-xr-x
auvirt
31.93
KB
-rwxr-xr-x
awk
418.55
KB
-rwxr-xr-x
base64
36.48
KB
-rwxr-xr-x
basename
28.35
KB
-rwxr-xr-x
bash
941.93
KB
-rwxr-xr-x
bashbug
6.8
KB
-rwxr-xr-x
bashbug-64
6.8
KB
-rwxr-xr-x
batch
137
B
-rwxr-xr-x
bc
81.47
KB
-rwxr-xr-x
bdftogd
3.91
KB
-rwxr-xr-x
bdftopcf
44.19
KB
-rwxr-xr-x
bdftruncate
11.2
KB
-rwxr-xr-x
berkeley_db47_svc
58.46
KB
-rwxr-xr-x
bg
26
B
-rwxr-xr-x
bibtex
105.88
KB
-rwxr-xr-x
bind9-config
3.47
KB
-rwxr-xr-x
bison
393.34
KB
-rwxr-xr-x
bond2team
22.74
KB
-rwxr-xr-x
bootctl
68.99
KB
-rwxr-xr-x
bq
5.7
KB
-rwxr-xr-x
brotli
765.84
KB
-rwxr-xr-x
build-classpath
1.5
KB
-rwxr-xr-x
build-classpath-directory
383
B
-rwxr-xr-x
build-jar-repository
1.53
KB
-rwxr-xr-x
bunzip2
31.89
KB
-rwxr-xr-x
busctl
403.15
KB
-rwxr-xr-x
byacc
84.48
KB
-rwxr-xr-x
bzcat
31.89
KB
-rwxr-xr-x
bzcmp
2.08
KB
-rwxr-xr-x
bzdiff
2.08
KB
-rwxr-xr-x
bzgrep
1.64
KB
-rwxr-xr-x
bzip2
31.89
KB
-rwxr-xr-x
bzip2recover
15.24
KB
-rwxr-xr-x
bzless
1.23
KB
-rwxr-xr-x
bzmore
1.23
KB
-rwxr-xr-x
c++
754.59
KB
-rwxr-x---
c++filt
27.92
KB
-rwxr-xr-x
c2ph
35.75
KB
-rwxr-xr-x
c89
224
B
-rwxr-x---
c99
215
B
-rwxr-x---
ca-legacy
1.6
KB
-rwxr-xr-x
cairo-sphinx
69.99
KB
-rwxr-xr-x
cal
36.8
KB
-rwxr-xr-x
captoinfo
64.26
KB
-rwxr-xr-x
cat
52.81
KB
-rwxr-xr-x
catchsegv
3.26
KB
-rwxr-xr-x
catman
36.75
KB
-rwxr-xr-x
cc
750.58
KB
-rwxr-x---
ccache-swig
48.48
KB
-rwxr-xr-x
cd
26
B
-rwxr-xr-x
centrino-decode
6.13
KB
-rwxr-xr-x
certutil
179.75
KB
-rwxr-xr-x
chacl
15.27
KB
-rwxr-xr-x
chage
72.16
KB
-rwxr-xr-x
chardetect
307
B
-rwxr-xr-x
chattr
11.27
KB
-rwxr-xr-x
chcat
13.12
KB
-rwxr-xr-x
chcon
61.46
KB
-rwxr-xr-x
check-binary-files
3.25
KB
-rwxr-xr-x
checkbashisms
21.69
KB
-rwxr-xr-x
checkmodule
400.48
KB
-rwxr-xr-x
checkpolicy
412.46
KB
-rwxr-xr-x
checksctp
7
KB
-rwxr-xr-x
chfn
23.41
KB
-rwx--x--x
chgrp
61.32
KB
-rwxr-xr-x
chmem
40.43
KB
-rwxr-xr-x
chmod
57.21
KB
-rwxr-xr-x
chown
61.36
KB
-rwxr-xr-x
chronyc
85.03
KB
-rwxr-xr-x
chrt
32.17
KB
-rwxr-xr-x
chsh
23.32
KB
-rwx--x--x
chvt
11.14
KB
-rwxr-xr-x
ci
801
B
-rwxr-xr-x
cifsiostat
48.52
KB
-rwxr-xr-x
cksum
32.38
KB
-rwxr-xr-x
cl-linksafe-apply-group
554
B
-rwxr-xr-x
cl-linksafe-reconfigure
4.83
KB
-rwxr-xr-x
clean-binary-files
12.91
KB
-rwxr-xr-x
clear
7.02
KB
-rwxr-xr-x
cmp
44.14
KB
-rwxr-xr-x
cmsutil
110.59
KB
-rwxr-xr-x
co
801
B
-rwxr-xr-x
col
23.88
KB
-rwxr-xr-x
colcrt
11.29
KB
-rwxr-xr-x
colrm
23.77
KB
-rwxr-xr-x
column
27.99
KB
-rwxr-xr-x
combinedeltarpm
52.09
KB
-rwxr-xr-x
combinediff
48.7
KB
-rwxr-xr-x
comm
36.55
KB
-rwxr-xr-x
command
31
B
-rwxr-xr-x
compare
11.09
KB
-rwxr-xr-x
compile_et
1.45
KB
-rwxr-xr-x
composite
7.05
KB
-rwxr-xr-x
config_data
7.05
KB
-rwxr-xr-x
conjure
7.05
KB
-rwxr-xr-x
convert
7.05
KB
-rwxr-xr-x
coredumpctl
154.52
KB
-rwxr-xr-x
corelist
10.02
KB
-rwxr-xr-x
cp
151.55
KB
-rwxr-xr-x
cpan
4.97
KB
-rwxr-xr-x
cpan-mirrors
4.27
KB
-r-xr-xr-x
cpan2dist
21.31
KB
-rwxr-xr-x
cpanp
3.31
KB
-rwxr-xr-x
cpanp-run-perl
553
B
-rwxr-xr-x
cpapi1
3.04
MB
-rwxr-xr-x
cpapi2
3.04
MB
-rwxr-xr-x
cpapi3
3.04
MB
-rwxr-xr-x
cpio
142.58
KB
-rwxr-xr-x
cpp
754.58
KB
-rwxr-xr-x
cpupower
66.34
KB
-rwxr-xr-x
create-jar-links
4.55
KB
-rwxr-xr-x
crlutil
127
KB
-rwxr-xr-x
crontab
56.23
KB
-rwsr-xr-x
cscope
656.2
KB
-rwxr-xr-x
cscope-indexer
3.77
KB
-rwxr-xr-x
csplit
48.82
KB
-rwxr-xr-x
csslint-0.6
19.55
KB
-rwxr-xr-x
ctags
237.99
KB
-rwxr-xr-x
curl
153
KB
-rwxr-xr-x
cut
40.61
KB
-rwxr-xr-x
cvtsudoers
241.7
KB
-rwxr-xr-x
cxpm
28.05
KB
-rwxr-xr-x
date
60.74
KB
-rwxr-xr-x
db47_archive
10.21
KB
-rwxr-xr-x
db47_checkpoint
10.27
KB
-rwxr-xr-x
db47_codegen
22.25
KB
-rwxr-xr-x
db47_deadlock
10.28
KB
-rwxr-xr-x
db47_dump
14.25
KB
-rwxr-xr-x
db47_hotbackup
18.38
KB
-rwxr-xr-x
db47_load
26.33
KB
-rwxr-xr-x
db47_printlog
62.8
KB
-rwxr-xr-x
db47_recover
10.27
KB
-rwxr-xr-x
db47_stat
14.22
KB
-rwxr-xr-x
db47_upgrade
10.23
KB
-rwxr-xr-x
db47_verify
10.22
KB
-rwxr-xr-x
db_archive
11.23
KB
-rwxr-xr-x
db_checkpoint
11.3
KB
-rwxr-xr-x
db_deadlock
11.31
KB
-rwxr-xr-x
db_dump
15.33
KB
-rwxr-xr-x
db_dump185
64.45
KB
-rwxr-xr-x
db_hotbackup
15.34
KB
-rwxr-xr-x
db_load
27.51
KB
-rwxr-xr-x
db_log_verify
15.34
KB
-rwxr-xr-x
db_printlog
32.26
KB
-rwxr-xr-x
db_recover
11.33
KB
-rwxr-xr-x
db_replicate
15.34
KB
-rwxr-xr-x
db_stat
15.26
KB
-rwxr-xr-x
db_tuner
19.33
KB
-rwxr-xr-x
db_upgrade
11.23
KB
-rwxr-xr-x
db_verify
11.25
KB
-rwxr-xr-x
dbilogstrip
1.43
KB
-rwxr-xr-x
dbiprof
6.15
KB
-rwxr-xr-x
dbiproxy
5.35
KB
-rwxr-xr-x
dbus-binding-tool
94.49
KB
-rwxr-xr-x
dbus-cleanup-sockets
11
KB
-rwxr-xr-x
dbus-daemon
218
KB
-rwxr-xr-x
dbus-monitor
23.13
KB
-rwxr-xr-x
dbus-run-session
14.97
KB
-rwxr-xr-x
dbus-send
27.07
KB
-rwxr-xr-x
dbus-test-tool
23.13
KB
-rwxr-xr-x
dbus-update-activation-environ...
15.02
KB
-rwxr-xr-x
dbus-uuidgen
10.98
KB
-rwxr-xr-x
dc
44.33
KB
-rwxr-xr-x
dd
73.14
KB
-rwxr-xr-x
deallocvt
11.16
KB
-rwxr-xr-x
debuginfo-install
7.88
KB
-rwxr-xr-x
dehtmldiff
1.32
KB
-rwxr-xr-x
delv
39.98
KB
-rwxr-xr-x
df
102.55
KB
-rwxr-xr-x
dgawk
502.12
KB
-rwxr-xr-x
dict_util
419.6
KB
-rwxr-xr-x
dict_util_string
389.46
KB
-rwxr-xr-x
diff
195.46
KB
-rwxr-xr-x
diff-jars
1.21
KB
-rwxr-xr-x
diff3
60.65
KB
-rwxr-xr-x
diffstat
35.76
KB
-rwxr-xr-x
dig
146.96
KB
-rwxr-xr-x
dir
114.85
KB
-rwxr-xr-x
dircolors
40.44
KB
-rwxr-xr-x
dirname
28.31
KB
-rwxr-xr-x
display
7.05
KB
-rwxr-xr-x
dltest
11.05
KB
-rwxr-xr-x
dmesg
48.52
KB
-rwxr-xr-x
dnf
1.9
KB
-rwxr-xr-x
dnf-2
1.9
KB
-rwxr-xr-x
dnsdomainname
15.41
KB
-rwxr-xr-x
docker-credential-gcloud
5.72
KB
-rwxr-xr-x
domainname
15.41
KB
-rwxr-xr-x
doveadm
2.94
MB
-rwxr-xr-x
doveconf
541.95
KB
-rwxr-xr-x
dovecot-sysreport
5.81
KB
-rwxr-xr-x
doxygen
8.47
MB
-rwxr-xr-x
dpkg
275.27
KB
-rwxr-xr-x
dpkg-deb
140.41
KB
-rwxr-xr-x
dpkg-divert
132.63
KB
-rwxr-xr-x
dpkg-maintscript-helper
18.58
KB
-rwxr-xr-x
dpkg-query
140.8
KB
-rwxr-xr-x
dpkg-split
111.28
KB
-rwxr-xr-x
dpkg-statoverride
70.52
KB
-rwxr-xr-x
dpkg-trigger
66.26
KB
-rwxr-xr-x
dracut
55.83
KB
-rwxr-xr-x
dsync
2.94
MB
-rwxr-xr-x
dtrace
16.66
KB
-rwxr-xr-x
du
110.34
KB
-rwxr-xr-x
dumpkeys
77.51
KB
-rwxr-xr-x
dumpsexp
15.19
KB
-rwxr-xr-x
dvi2fax
1.07
KB
-rwxr-xr-x
dvilualatex
5.8
MB
-rwxr-xr-x
dviluatex
5.8
MB
-rwxr-xr-x
dvipdf
1
KB
-rwxr-xr-x
dvipdfm
603.09
KB
-rwxr-xr-x
dvipdfmx
603.09
KB
-rwxr-xr-x
dvipdft
2.63
KB
-rwxr-xr-x
dvips
200.07
KB
-rwxr-xr-x
dvired
3.01
KB
-rwxr-xr-x
dwp
3.03
MB
-rwxr-xr-x
dwz
162.6
KB
-rwxr-xr-x
ea-php71
19.22
MB
-rwxr-xr-x
ea-php71-pear
383
B
-rwxr-xr-x
ea-php71-pecl
299
B
-rwxr-xr-x
ea-php73
4.84
MB
-rwxr-xr-x
ea-php73-pear
383
B
-rwxr-xr-x
ea-php73-pecl
299
B
-rwxr-xr-x
ea-php74
6.09
MB
-rwxr-xr-x
ea-php74-pear
383
B
-rwxr-xr-x
ea-php74-pecl
299
B
-rwxr-xr-x
ea-php80
6.67
MB
-rwxr-xr-x
ea-php80-pear
383
B
-rwxr-xr-x
ea-php80-pecl
299
B
-rwxr-xr-x
ea-php81
6.71
MB
-rwxr-xr-x
ea-php81-pear
383
B
-rwxr-xr-x
ea-php81-pecl
299
B
-rwxr-xr-x
ea-php82
6.73
MB
-rwxr-xr-x
ea-php82-pear
383
B
-rwxr-xr-x
ea-php82-pecl
299
B
-rwxr-xr-x
ea-php83
6.74
MB
-rwxr-xr-x
ea-php83-pear
383
B
-rwxr-xr-x
ea-php83-pecl
299
B
-rwxr-xr-x
easy_install
320
B
-rwxr-xr-x
easy_install-2.7
328
B
-rwxr-xr-x
easy_install-3.6
234
B
-rwxr-xr-x
ebb
603.09
KB
-rwxr-xr-x
echo
32.31
KB
-rwxr-xr-x
editdiff
2
KB
-rwxr-xr-x
egrep
290
B
-rwxr-xr-x
eject
48.81
KB
-rwxr-xr-x
elfedit
32.18
KB
-rwxr-xr-x
elinks
1.3
MB
-rwxr-xr-x
env
28.33
KB
-rwxr-xr-x
envsubst
36.01
KB
-rwxr-xr-x
eps2eps
639
B
-rwxr-xr-x
eqn
144.41
KB
-rwxr-xr-x
eqn2graph
2.62
KB
-rwxr-xr-x
espdiff
1.53
KB
-rwxr-xr-x
etex
715.38
KB
-rwxr-xr-x
eu-addr2line
23.66
KB
-rwxr-xr-x
eu-ar
35.97
KB
-rwxr-xr-x
eu-elfcmp
32.16
KB
-rwxr-xr-x
eu-elfcompress
27.64
KB
-rwxr-xr-x
eu-elflint
108.8
KB
-rwxr-xr-x
eu-findtextrel
19.55
KB
-rwxr-xr-x
eu-make-debug-archive
2.84
KB
-rwxr-xr-x
eu-nm
44.92
KB
-rwxr-xr-x
eu-objdump
32.45
KB
-rwxr-xr-x
eu-ranlib
19.58
KB
-rwxr-xr-x
eu-readelf
230.43
KB
-rwxr-xr-x
eu-size
19.42
KB
-rwxr-xr-x
eu-stack
23.64
KB
-rwxr-xr-x
eu-strings
19.59
KB
-rwxr-xr-x
eu-strip
56.75
KB
-rwxr-xr-x
eu-unstrip
48.23
KB
-rwxr-xr-x
ex
906.4
KB
-rwxr-xr-x
expand
32.48
KB
-rwxr-xr-x
expr
36.53
KB
-rwxr-xr-x
extractbb
603.09
KB
-rwxr-xr-x
f95
754.58
KB
-rwxr-xr-x
factor
93.29
KB
-rwxr-xr-x
fallocate
27.84
KB
-rwxr-xr-x
false
28.25
KB
-rwxr-xr-x
fc
26
B
-rwxr-xr-x
fc-cache
132
B
-rwxr-xr-x
fc-cache-64
15.45
KB
-rwxr-xr-x
fc-cat
15.4
KB
-rwxr-xr-x
fc-conflist
11.2
KB
-rwxr-xr-x
fc-list
11.26
KB
-rwxr-xr-x
fc-match
11.32
KB
-rwxr-xr-x
fc-pattern
11.26
KB
-rwxr-xr-x
fc-query
11.23
KB
-rwxr-xr-x
fc-scan
11.27
KB
-rwxr-xr-x
fc-validate
11.27
KB
-rwxr-xr-x
fg
26
B
-rwxr-xr-x
fgconsole
11.16
KB
-rwxr-xr-x
fgrep
290
B
-rwxr-xr-x
filan
89.13
KB
-rwxr-xr-x
file
19.3
KB
-rwxr-xr-x
filterdiff
45.2
KB
-rwxr-xr-x
find
194.63
KB
-rwxr-xr-x
find-jar
748
B
-rwxr-xr-x
find-repos-of-install
4.27
KB
-rwxr-xr-x
find2perl
23.06
KB
-rwxr-xr-x
findmnt
58.38
KB
-rwxr-xr-x
fipscheck
15.37
KB
-rwxr-xr-x
fipshmac
11.3
KB
-rwxr-xr-x
firewall-cmd
113.48
KB
-rwxr-xr-x
firewall-offline-cmd
101.18
KB
-rwxr-xr-x
fixcvsdiff
1.83
KB
-rwxr-xr-x
flex
318.07
KB
-rwxr-xr-x
flex++
318.07
KB
-rwxr-xr-x
flipdiff
48.7
KB
-rwxr-xr-x
flock
23.88
KB
-rwxr-xr-x
fmt
36.48
KB
-rwxr-xr-x
fmtutil
32.28
KB
-rwxr-xr-x
fmtutil-sys
831
B
-rwxr-xr-x
fold
36.46
KB
-rwxr-xr-x
fonttosfnt
35.99
KB
-rwxr-xr-x
free
19.33
KB
-rwxr-xr-x
freetype-config
4.39
KB
-rwxr-xr-x
fribidi
16.09
KB
-rwxr-xr-x
ftp
85.5
KB
-rwxr-xr-x
funzip
31.38
KB
-rwxr-xr-x
g++
754.59
KB
-rwxr-x---
gapplication
19.48
KB
-rwxr-xr-x
gawk
418.55
KB
-rwxr-xr-x
gcc
750.58
KB
-rwxr-x---
gcc-ar
26.45
KB
-rwxr-xr-x
gcc-nm
26.45
KB
-rwxr-xr-x
gcc-ranlib
26.45
KB
-rwxr-xr-x
gce_workload_cert_refresh
13.27
MB
-rwxr-xr-x
gcloud
5.69
KB
-rwxr-xr-x
gcore
2.12
KB
-rwxr-xr-x
gcov
311.45
KB
-rwxr-xr-x
gd2copypal
7.06
KB
-rwxr-xr-x
gd2togif
7.05
KB
-rwxr-xr-x
gd2topng
11.06
KB
-rwxr-xr-x
gdb
6.51
MB
-rwxr-xr-x
gdb-add-index
1.09
KB
-rwxr-xr-x
gdbus
40.17
KB
-rwxr-xr-x
gdcmpgif
11.08
KB
-rwxr-xr-x
gdiffmk
6.88
KB
-rwxr-xr-x
gdk-pixbuf-query-loaders-64
15.31
KB
-rwxr-xr-x
gdk-pixbuf-thumbnailer
15.52
KB
-rwxr-xr-x
gdlib-config
2.52
KB
-rwxr-xr-x
gdparttopng
11.07
KB
-rwxr-xr-x
gdtopng
7.04
KB
-rwxr-xr-x
gencat
22.11
KB
-rwxr-xr-x
gendiff
586
B
-rwxr-xr-x
genl-ctrl-list
11.27
KB
-rwxr-xr-t
geoiplookup
15.28
KB
-rwxr-xr-x
geoiplookup6
11.16
KB
-rwxr-xr-x
geoipupdate
31.28
KB
-rwxr-xr-x
geqn
144.41
KB
-rwxr-xr-x
getconf
22.02
KB
-rwxr-xr-x
getent
26.39
KB
-rwxr-xr-x
getfacl
24.29
KB
-rwxr-xr-x
getkeycodes
11.16
KB
-rwxr-xr-x
getopt
15.38
KB
-rwxr-xr-x
getopts
31
B
-rwxr-xr-x
gettext
35.94
KB
-rwxr-xr-x
gettext.sh
4.52
KB
-rwxr-xr-x
gettextize
42.69
KB
-rwxr-xr-x
gfortran
754.58
KB
-rwxr-xr-x
gftodvi
43.96
KB
-rwxr-xr-x
gftopk
27.63
KB
-rwxr-xr-x
gftype
27.58
KB
-rwxr-xr-x
ghostscript
10.97
KB
-rwxr-xr-x
giftogd2
7.05
KB
-rwxr-xr-x
gindxbib
36.89
KB
-rwxr-xr-x
gio
73.41
KB
-rwxr-xr-x
gio-querymodules-64
11.31
KB
-rwxr-xr-x
git
1.46
MB
-rwxr-xr-x
git-credential-gcloud.sh
6.16
KB
-rwxr-xr-x
git-receive-pack
1.46
MB
-rwxr-xr-x
git-shell
722.02
KB
-rwxr-xr-x
git-upload-archive
1.46
MB
-rwxr-xr-x
git-upload-pack
795.52
KB
-rwxr-xr-x
glib-compile-schemas
44.38
KB
-rwxr-xr-x
glookbib
41.27
KB
-rwxr-xr-x
gmake
178.47
KB
-rwxr-xr-x
gneqn
271
B
-rwxr-xr-x
gnroff
3.31
KB
-rwxr-xr-x
google_authorized_keys
713.51
KB
-rwxr-xr-x
google_authorized_keys_sk
714.52
KB
-rwxr-xr-x
google_authorized_principals
718.98
KB
-rwxr-xr-x
google_disk_expand
1.26
KB
-rwxr-xr-x
google_guest_agent
14.18
MB
-rwxr-xr-x
google_metadata_script_runner
15.27
MB
-rwxr-xr-x
google_optimize_local_ssd
2.46
KB
-rwxr-xr-x
google_osconfig_agent
16.95
MB
-rwxr-xr-x
google_oslogin_nss_cache
718.34
KB
-rwxr-xr-x
google_set_hostname
3.03
KB
-rwxr-xr-x
google_set_multiqueue
10.96
KB
-rwxr-xr-x
gpasswd
76.57
KB
-rwsr-xr-x
gpg
732.4
KB
-rwxr-xr-x
gpg-agent
289.74
KB
-rwxr-xr-x
gpg-connect-agent
152.69
KB
-rwxr-xr-x
gpg-error
23.18
KB
-rwxr-xr-x
gpg-error-config
1.83
KB
-rwxr-xr-x
gpg-zip
3.23
KB
-rwxr-xr-x
gpg2
732.4
KB
-rwxr-xr-x
gpgconf
140.31
KB
-rwxr-xr-x
gpgparsemail
23.7
KB
-rwxr-xr-x
gpgsplit
48.88
KB
-rwxr-xr-x
gpgv
345.38
KB
-rwxr-xr-x
gpgv2
345.38
KB
-rwxr-xr-x
gpic
180.41
KB
-rwxr-xr-x
gprof
98.41
KB
-rwxr-xr-x
gr2fonttest
23.66
KB
-rwxr-xr-x
grap2graph
2.39
KB
-rwxr-xr-x
grefer
118.5
KB
-rwxr-xr-x
grep
155.3
KB
-rwxr-xr-x
grepdiff
45.2
KB
-rwxr-xr-x
grn
77.74
KB
-rwxr-xr-x
grodvi
98.61
KB
-rwxr-xr-x
groff
81.63
KB
-rwxr-xr-x
grolbp
107.45
KB
-rwxr-xr-x
grolj4
94.37
KB
-rwxr-xr-x
grops
140.85
KB
-rwxr-xr-x
grotty
98.59
KB
-rwxr-xr-x
groups
32.41
KB
-rwxr-xr-x
grub2-editenv
396.09
KB
-rwxr-xr-x
grub2-file
838.38
KB
-rwxr-xr-x
grub2-fstest
1.03
MB
-rwxr-xr-x
grub2-glue-efi
258.8
KB
-rwxr-xr-x
grub2-kbdcomp
1.63
KB
-rwxr-xr-x
grub2-menulst2cfg
241.83
KB
-rwxr-xr-x
grub2-mkfont
287.6
KB
-rwxr-xr-x
grub2-mkimage
379.24
KB
-rwxr-xr-x
grub2-mklayout
264.87
KB
-rwxr-xr-x
grub2-mknetdir
429.77
KB
-rwxr-xr-x
grub2-mkpasswd-pbkdf2
271.3
KB
-rwxr-xr-x
grub2-mkrelpath
258.48
KB
-rwxr-xr-x
grub2-mkrescue
1
MB
-rwxr-xr-x
grub2-mkstandalone
534.3
KB
-rwxr-xr-x
grub2-render-label
843.2
KB
-rwxr-xr-x
grub2-script-check
295.41
KB
-rwxr-xr-x
grub2-syslinux2cfg
767.74
KB
-rwxr-xr-x
gs
10.97
KB
-rwxr-xr-x
gsbj
350
B
-rwxr-xr-x
gsdj
352
B
-rwxr-xr-x
gsdj500
352
B
-rwxr-xr-x
gsettings
23.8
KB
-rwxr-xr-x
gsftopk
27.88
KB
-rwxr-xr-x
gslj
353
B
-rwxr-xr-x
gslp
350
B
-rwxr-xr-x
gsnd
277
B
-rwxr-xr-x
gsoelim
32.59
KB
-rwxr-xr-x
gss-client
23.17
KB
-rwxr-xr-x
gstack
1.05
KB
-rwxr-xr-x
gsutil
5.74
KB
-rwxr-xr-x
gtar
338.02
KB
-rwxr-xr-x
gtbl
115.96
KB
-rwxr-xr-x
gtk-query-immodules-2.0-64
15.29
KB
-rwxr-xr-x
gtk-update-icon-cache
32.45
KB
-rwxr-xr-x
gtroff
512.96
KB
-rwxr-xr-x
gunzip
2.2
KB
-rwxr-xr-x
gzexe
5.79
KB
-rwxr-xr-x
gzip
98.43
KB
-rwxr-xr-x
h2ph
27.65
KB
-rwxr-xr-x
h2xs
59.15
KB
-rwxr-xr-x
hdsploader
11.18
KB
-rwxr-xr-x
head
40.51
KB
-rwxr-xr-x
hexdump
32.02
KB
-rwxr-xr-x
hmac256
15.67
KB
-rwxr-xr-x
host
127.02
KB
-rwxr-xr-x
hostid
28.32
KB
-rwxr-xr-x
hostname
15.41
KB
-rwxr-xr-x
hostnamectl
318.07
KB
-rwxr-xr-x
hpftodit
114.38
KB
-rwxr-xr-x
htdbm
23.1
KB
-rwxr-xr-x
htdigest
15.07
KB
-rwxr-xr-x
htop
165.65
KB
-rwxr-xr-x
htpasswd
23.11
KB
-rwxr-xr-x
httxt2dbm
10.99
KB
-rwxr-xr-x
hunspell
53.11
KB
-rwxr-xr-x
i360-check-flow
389.46
KB
-rwxr-xr-x
i360-exclcomp
449.79
KB
-rwxr-xr-x
i360-pkg-watcher
6.87
MB
-rwxr-xr-x
i360-renameat2
7.06
KB
-rwxr-xr-x
i360-storage
992
B
-rwxr-xr-x
i360-storage-hdb
114.51
KB
-rwxr-xr-x
i360-storage-mkcustom
1.18
KB
-rwxr-xr-x
i360-storage-new
5.54
KB
-rwxr-xr-x
i360-storage-replacehdb-v2
857
B
-rwxr-xr-x
i360-storage.immunity
652.03
KB
-rwxr-xr-x
i360-storage.v2
9.85
MB
-rwxr-xr-x
i360-sync-config
6.4
MB
-rwxr-xr-x
i360-sync-config.sh
180
B
-rwxr-xr-x
i360_wafd_check
3.32
MB
-rwxr-xr-x
i360_wafd_list
2.73
MB
-rwxr-xr-x
i386
15.27
KB
-rwxr-xr-x
iceauth
31.73
KB
-rwxr-xr-x
iconv
58.14
KB
-rwxr-xr-x
id
36.52
KB
-rwxr-xr-x
ident
110.45
KB
-rwxr-xr-x
identify
7.06
KB
-rwxr-xr-x
idiag-socket-details
11.34
KB
-rwxr-xr-x
idle
93
B
-rwxr-xr-x
idn
32.45
KB
-rwxr-xr-x
ifnames
4.03
KB
-rwxr-xr-x
igawk
3.11
KB
-rwxr-xr-x
im360-k8s-syncer
56.02
MB
-rwxr-xr-x
import
7.05
KB
-rwxr-xr-x
imunify-agent-proxy
12.53
MB
-rwxr-xr-x
imunify-antivirus
1
KB
-rwxr-xr-x
imunify-fgw-dump
5.82
MB
-rwxr-xr-x
imunify-resident
12.75
MB
-rwxr-xr-x
imunify-service
1020
B
-rwxr-xr-x
imunify360-agent
1.01
KB
-rwxr-xr-x
imunify360-command-wrapper
9.14
KB
-rwxr-xr-x
imunify360-dos-protection
7.31
MB
-rwxr-xr-x
indent
73.82
KB
-rwxr-xr-x
indxbib
36.89
KB
-rwxr-xr-x
info
265.19
KB
-rwxr-xr-x
infocmp
56.07
KB
-rwxr-xr-x
infokey
21.47
KB
-rwxr-xr-x
infotocap
64.26
KB
-rwxr-xr-x
inimf
285.68
KB
-rwxr-xr-x
initex
313.38
KB
-rwxr-xr-x
innochecksum
9.68
MB
-rwxr-xr-x
inotifywait
27.56
KB
-rwxr-xr-x
inotifywatch
23.49
KB
-rwxr-xr-x
install
139.59
KB
-rwxr-xr-x
install-catalog
4.27
KB
-rwxr-xr-x
instmodsh
4.15
KB
-rwxr-xr-x
interdiff
48.7
KB
-rwxr-xr-x
intltool-extract
28.06
KB
-rwxr-xr-x
intltool-merge
38.87
KB
-rwxr-xr-x
intltool-prepare
8.4
KB
-rwxr-xr-x
intltool-update
34.18
KB
-rwxr-xr-x
intltoolize
6.98
KB
-rwxr-xr-x
ionice
23.86
KB
-rwxr-xr-x
iostat
60.79
KB
-rwxr-xr-x
ipcalc
15.05
KB
-rwxr-xr-x
ipcmk
24
KB
-rwxr-xr-x
ipcrm
27.85
KB
-rwxr-xr-x
ipcs
48.37
KB
-rwxr-xr-x
iptables-xml
91.52
KB
-rwxr-xr-t
isc-config.sh
3.47
KB
-rwxr-xr-x
isosize
23.83
KB
-rwxr-xr-x
ispell
988
B
-rwxr-xr-x
isql
31.69
KB
-rwxr-xr-x
iusql
23.61
KB
-rwxr-xr-x
jade
621.21
KB
-rwxr-xr-x
java
8.77
KB
-rwxr-xr-x
jjs
8.9
KB
-rwxr-xr-x
jobs
28
B
-rwxr-xr-x
join
48.75
KB
-rwxr-xr-x
journalctl
537.88
KB
-rwxr-xr-x
js
3.36
MB
-rwxr-xr-x
json_pp
3.82
KB
-rwxr-xr-x
json_reformat
35.89
KB
-rwxr-xr-x
json_verify
27.52
KB
-rwxr-xr-x
json_xs
6.74
KB
-rwxr-xr-x
jvmjar
1.7
KB
-rwxr-xr-x
kbd_mode
11.16
KB
-rwxr-xr-x
kbdinfo
11.19
KB
-rwxr-xr-x
kbdrate
11.22
KB
-rwxr-xr-x
kcare-scanner-interface
4.68
KB
-rwxr-xr-x
kcare-uname
582
B
-rwxr-xr-x
kcarectl
1.21
KB
-rwxr-xr-x
kernel-install
4.7
KB
-rwxr-xr-x
keyctl
27.94
KB
-rwxr-xr-x
keytool
8.9
KB
-rwxr-xr-x
kill
32.82
KB
-rwxr-xr-x
killall
24.14
KB
-rwxr-xr-x
kmod
143.24
KB
-rwxr-xr-x
kpseaccess
7.02
KB
-rwxr-xr-x
kpsepath
3.38
KB
-rwxr-xr-x
kpsereadlink
7.04
KB
-rwxr-xr-x
kpsestat
11.04
KB
-rwxr-xr-x
kpsetool
3.38
KB
-rwxr-xr-x
kpsewhere
1.41
KB
-rwxr-xr-x
kpsewhich
20.18
KB
-rwxr-xr-x
kpsexpand
3.38
KB
-rwxr-xr-x
krb5-config
6.96
KB
-rwxr-xr-x
last
19.11
KB
-rwxr-xr-x
lastb
19.11
KB
-rwxr-xr-x
lastlog
19.15
KB
-rwxr-xr-x
latex
715.38
KB
-rwxr-xr-x
lchfn
15.52
KB
-rwxr-xr-x
lchsh
15.49
KB
-rwxr-xr-x
ld
982.59
KB
-rwxr-x---
ld.bfd
982.59
KB
-rwxr-x---
ld.gold
5.11
MB
-rwxr-xr-x
ldd
5.18
KB
-rwxr-xr-x
less
154.56
KB
-rwxr-xr-x
lessecho
11.13
KB
-rwxr-xr-x
lesskey
16.67
KB
-rwxr-xr-x
lesspipe.sh
2.24
KB
-rwxr-xr-x
lex
318.07
KB
-rwxr-xr-x
lexgrog
85.09
KB
-rwxr-xr-x
libcare-cron
1.07
KB
-rwxr-xr-x
libgcrypt-config
3.78
KB
-rwxr-xr-x
libmcrypt-config
1.38
KB
-rwxr-xr-x
libnetcfg
15.36
KB
-rwxr-xr-x
libpng-config
2.38
KB
-rwxr-xr-x
libpng15-config
2.38
KB
-rwxr-xr-x
libtool
314.04
KB
-rwxr-xr-x
libtoolize
76.8
KB
-rwxr-xr-x
libwmf-fontmap
12.78
KB
-rwxr-xr-x
licensecheck
19.66
KB
-rwxr-xr-x
link
28.3
KB
-rwxr-xr-x
links
1.3
MB
-rwxr-xr-x
linux-boot-prober
5.85
KB
-rwxr-xr-x
linux32
15.27
KB
-rwxr-xr-x
linux64
15.27
KB
-rwxr-xr-x
linuxdoc
1.6
KB
-rwxr-xr-x
lkbib
41.26
KB
-rwxr-xr-x
ln
57.22
KB
-rwxr-xr-x
loadkeys
110.48
KB
-rwxr-xr-x
loadunimap
23.88
KB
-rwxr-xr-x
locale
37.11
KB
-rwxr-xr-x
localectl
326.23
KB
-rwxr-xr-x
localedef
318.31
KB
-rwxr-xr-x
logger
28.62
KB
-rwxr-xr-x
login
36.38
KB
-rwxr-xr-x
loginctl
489.6
KB
-rwxr-xr-x
logname
28.31
KB
-rwxr-xr-x
logresolve
14.99
KB
-rwxr-xr-x
look
11.27
KB
-rwxr-xr-x
lookbib
41.27
KB
-rwxr-xr-x
lprsetup.sh
5.34
KB
-rwxr-xr-x
ls
114.85
KB
-rwxr-xr-x
lsattr
11.25
KB
-rwxr-xr-x
lsblk
79.17
KB
-rwxr-xr-x
lscpu
60.75
KB
-rwxr-xr-x
lsdiff
45.2
KB
-rwxr-xr-x
lsinitrd
6.26
KB
-rwxr-xr-x
lsipc
60.95
KB
-rwxr-xr-x
lslocks
41.01
KB
-rwxr-xr-x
lslogins
52.88
KB
-rwxr-xr-x
lsmem
40.78
KB
-rwxr-xr-x
lsns
36.43
KB
-rwxr-xr-x
lsphp
937
B
-rwxr-xr-x
lsscsi
56.48
KB
-rwxr-xr-x
lua
15.47
KB
-rwxr-xr-x
luac
119.03
KB
-rwxr-xr-x
lualatex
5.8
MB
-rwxr-xr-x
luatex
5.8
MB
-rwxr-xr-x
lwp-download
8.43
KB
-rwxr-xr-x
lwp-dump
2.73
KB
-rwxr-xr-x
lwp-mirror
2.42
KB
-rwxr-xr-x
lwp-request
14.71
KB
-rwxr-xr-x
lz4
105.87
KB
-rwxr-xr-x
lz4_decompress
627
KB
-rwxr-xr-x
lz4c
105.87
KB
-rwxr-xr-x
lz4cat
105.87
KB
-rwxr-xr-x
m4
151.17
KB
-rwxr-xr-x
machinectl
533.93
KB
-rwxr-xr-x
mail
383.67
KB
-rwxr-xr-x
mailx
383.67
KB
-rwxr-xr-x
make
178.47
KB
-rwxr-xr-x
makedb
18.11
KB
-rwxr-xr-x
makedeltarpm
68.39
KB
-rwxr-xr-x
makeindex
77.96
KB
-rwxr-xr-x
makeinfo
50.83
KB
-rwxr-xr-x
man
100.44
KB
-rwxr-xr-x
mandb
122.25
KB
-rwxr-xr-x
manpage-alert
2.51
KB
-rwxr-xr-x
manpath
32.55
KB
-rwxr-xr-x
mapscrn
19.78
KB
-rwxr-xr-x
mcookie
15.44
KB
-rwxr-xr-x
mcrypt
85.29
KB
-rwxr-xr-x
md5sum
40.53
KB
-rwxr-xr-x
mdecrypt
85.29
KB
-rwxr-xr-x
mdig
44.2
KB
-rwxr-xr-x
merge
110.43
KB
-rwxr-xr-x
mesg
10.98
KB
-rwxr-xr-x
mf
285.68
KB
-rwxr-xr-x
mf-nowin
281.03
KB
-rwxr-xr-x
mft
51.7
KB
-rwxr-xr-x
mixartloader
15.38
KB
-rwxr-xr-x
mkdir
77.9
KB
-rwxr-xr-x
mkfifo
61.59
KB
-rwxr-xr-x
mkfontdir
65
B
-rwxr-xr-x
mkfontscale
32.48
KB
-rwxr-xr-x
mkindex
947
B
-rwxr-xr-x
mkinitrd
2.94
KB
-rwxr-xr-x
mkluatexfontdb
2.55
KB
-rwxr-xr-x
mknod
65.61
KB
-rwxr-xr-x
mkocp
171
B
-rwxr-xr-x
mkofm
85
B
-rwxr-xr-x
mktemp
40.66
KB
-rwxr-xr-x
mktexfmt
32.28
KB
-rwxr-xr-x
mktexlsr
7.39
KB
-rwxr-xr-x
mktexmf
3.72
KB
-rwxr-xr-x
mktexpk
9.51
KB
-rwxr-xr-x
mktextfm
4.74
KB
-rwxr-xr-x
modulemd-validator
11.66
KB
-rwxr-xr-x
modutil
165.78
KB
-rwxr-xr-x
mogrify
7.05
KB
-rwxr-xr-x
mokutil
44.94
KB
-rwxr-xr-x
montage
7.05
KB
-rwxr-xr-x
more
40.15
KB
-rwxr-xr-x
mount
43.23
KB
-rwxr-xr-x
mountpoint
15.32
KB
-rwxr-xr-x
mpstat
56.54
KB
-rwxr-xr-x
mptopdf
4.13
KB
-rwxr-xr-x
msgattrib
23.36
KB
-rwxr-xr-x
msgcat
23.34
KB
-rwxr-xr-x
msgcmp
23.59
KB
-rwxr-xr-x
msgcomm
19.31
KB
-rwxr-xr-x
msgconv
19.3
KB
-rwxr-xr-x
msgen
19.3
KB
-rwxr-xr-x
msgexec
15.33
KB
-rwxr-xr-x
msgfilter
27.56
KB
-rwxr-xr-x
msgfmt
77.05
KB
-rwxr-xr-x
msgfmt.py
6.33
KB
-rwxr-xr-x
msggrep
35.97
KB
-rwxr-xr-x
msghack
12.45
KB
-rwxr-xr-x
msginit
44.38
KB
-rwxr-xr-x
msgmerge
52.6
KB
-rwxr-xr-x
msgunfmt
31.7
KB
-rwxr-xr-x
msguniq
19.31
KB
-rwxr-xr-x
mv
127.3
KB
-rwxr-xr-x
my_print_defaults
8.81
MB
-rwxr-xr-x
myisam_ftdump
11.08
MB
-rwxr-xr-x
myisamchk
11.55
MB
-rwxr-xr-x
myisamlog
7.42
MB
-rwxr-xr-x
myisampack
11.21
MB
-rwxr-xr-x
mysql
12.1
MB
-rwxr-xr-x
mysql_config
840
B
-rwxr-xr-x
mysql_config-64
5.11
KB
-rwxr-xr-x
mysql_config_editor
8.98
MB
-rwxr-xr-x
mysql_install_db
11.44
MB
-rwxr-xr-x
mysql_plugin
8.88
MB
-rwxr-xr-x
mysql_secure_installation
10.71
MB
-rwxr-xr-x
mysql_ssl_rsa_setup
9.23
MB
-rwxr-xr-x
mysql_tzinfo_to_sql
4.99
MB
-rwxr-xr-x
mysql_upgrade
14.18
MB
-rwxr-xr-x
mysqladmin
10.76
MB
-rwxr-xr-x
mysqlbinlog
12.69
MB
-rwxr-xr-x
mysqlcheck
11.04
MB
-rwxr-xr-x
mysqld_pre_systemd
3.74
KB
-rwxr-xr-x
mysqldump
11.13
MB
-rwxr-xr-x
mysqldumpslow
7.66
KB
-rwxr-xr-x
mysqlimport
10.76
MB
-rwxr-xr-x
mysqlpump
20.23
MB
-rwxr-xr-x
mysqlshow
10.72
MB
-rwxr-xr-x
mysqlslap
10.82
MB
-rwxr-xr-x
nail
383.67
KB
-rwxr-xr-x
named-rrchecker
15.32
KB
-rwxr-xr-x
namei
27.95
KB
-rwxr-xr-x
nano
201.08
KB
-rwxr-xr-x
nc
371.27
KB
-rwxr-xr-x
ncat
371.27
KB
-rwxr-xr-x
ncurses5-config
5.68
KB
-rwxr-xr-x
ncursesw5-config
5.68
KB
-rwxr-xr-x
ndptool
23.63
KB
-rwxr-xr-x
needs-restarting
8.17
KB
-rwxr-xr-x
neqn
271
B
-rwxr-xr-x
netstat
151.38
KB
-rwxr-xr-x
nettle-hash
11.33
KB
-rwxr-xr-x
nettle-lfib-stream
7.05
KB
-rwxr-xr-x
newgidmap
38.09
KB
-rwxr-xr-x
newgrp
40.95
KB
-rwxr-xr-x
newuidmap
38.06
KB
-rwxr-xr-x
nf-ct-add
11.8
KB
-rwxr-xr-x
nf-ct-list
15.84
KB
-rwxr-xr-x
nf-exp-add
16.21
KB
-rwxr-xr-x
nf-exp-delete
15.99
KB
-rwxr-xr-x
nf-exp-list
11.8
KB
-rwxr-xr-x
nf-log
11.23
KB
-rwxr-xr-x
nf-monitor
11.18
KB
-rwxr-xr-x
nf-queue
11.27
KB
-rwxr-xr-x
nfsiostat-sysstat
52.55
KB
-rwxr-xr-x
ngettext
35.95
KB
-rwxr-xr-x
nice
32.32
KB
-rwxr-xr-x
nisdomainname
15.41
KB
-rwxr-xr-x
nl
40.6
KB
-rwxr-xr-x
nl-addr-add
11.65
KB
-rwxr-xr-x
nl-addr-delete
11.73
KB
-rwxr-xr-x
nl-addr-list
15.88
KB
-rwxr-xr-x
nl-class-add
11.7
KB
-rwxr-xr-t
nl-class-delete
11.55
KB
-rwxr-xr-t
nl-class-list
11.48
KB
-rwxr-xr-t
nl-classid-lookup
11.29
KB
-rwxr-xr-t
nl-cls-add
11.76
KB
-rwxr-xr-t
nl-cls-delete
11.68
KB
-rwxr-xr-t
nl-cls-list
11.58
KB
-rwxr-xr-t
nl-fib-lookup
11.41
KB
-rwxr-xr-x
nl-link-enslave
7.05
KB
-rwxr-xr-x
nl-link-ifindex2name
7.06
KB
-rwxr-xr-x
nl-link-list
11.52
KB
-rwxr-xr-t
nl-link-name2ifindex
7.05
KB
-rwxr-xr-x
nl-link-release
7.05
KB
-rwxr-xr-x
nl-link-set
11.64
KB
-rwxr-xr-x
nl-link-stats
11.39
KB
-rwxr-xr-x
nl-list-caches
11.08
KB
-rwxr-xr-x
nl-list-sockets
7.06
KB
-rwxr-xr-x
nl-monitor
11.2
KB
-rwxr-xr-x
nl-neigh-add
11.51
KB
-rwxr-xr-x
nl-neigh-delete
11.57
KB
-rwxr-xr-x
nl-neigh-list
11.46
KB
-rwxr-xr-x
nl-neightbl-list
11.27
KB
-rwxr-xr-x
nl-pktloc-lookup
11.36
KB
-rwxr-xr-t
nl-qdisc-add
11.6
KB
-rwxr-xr-t
nl-qdisc-delete
11.54
KB
-rwxr-xr-t
nl-qdisc-list
11.63
KB
-rwxr-xr-t
nl-route-add
11.73
KB
-rwxr-xr-x
nl-route-delete
15.86
KB
-rwxr-xr-x
nl-route-get
11.18
KB
-rwxr-xr-x
nl-route-list
11.77
KB
-rwxr-xr-x
nl-rule-list
11.3
KB
-rwxr-xr-x
nl-tctree-list
11.53
KB
-rwxr-xr-x
nl-util-addr
7.03
KB
-rwxr-xr-x
nm
45.43
KB
-rwxr-xr-x
nm-online
15.16
KB
-rwxr-xr-x
nmcli
809.16
KB
-rwxr-xr-x
nmtui
646.77
KB
-rwxr-xr-x
nmtui-connect
646.77
KB
-rwxr-xr-x
nmtui-edit
646.77
KB
-rwxr-xr-x
nmtui-hostname
646.77
KB
-rwxr-xr-x
nohup
32.42
KB
-rwxr-xr-x
nproc
32.37
KB
-rwxr-xr-x
nroff
3.31
KB
-rwxr-xr-x
nsenter
28.22
KB
-rwxr-xr-x
nsgmls
106.91
KB
-rwxr-xr-x
nslookup
130.93
KB
-rwxr-xr-x
nss-policy-check
15.26
KB
-rwxr-xr-x
nsupdate
65.2
KB
-rwxr-xr-x
numfmt
64.71
KB
-rwxr-xr-x
objcopy
227.34
KB
-rwxr-xr-x
objdump
357.75
KB
-rwxr-xr-x
ocs
7.11
KB
-rwxr-xr-x
od
64.81
KB
-rwxr-xr-x
odbc_config
11.04
KB
-rwxr-xr-x
odbcinst
27.69
KB
-rwxr-xr-x
oldfind
186.41
KB
-rwxr-xr-x
onsgmls
106.91
KB
-rwxr-xr-x
open
19.48
KB
-rwxr-xr-x
openjade
621.21
KB
-rwxr-xr-x
openssl
542.27
KB
-rwxr-xr-x
openvt
19.48
KB
-rwxr-xr-x
orbd
8.95
KB
-rwxr-xr-x
os-prober
5.51
KB
-rwxr-xr-x
osgmlnorm
44.69
KB
-rwxr-xr-x
ospam
65.63
KB
-rwxr-xr-x
ospcat
31.71
KB
-rwxr-xr-x
ospent
23.6
KB
-rwxr-xr-x
osx
77.5
KB
-rwxr-xr-x
p11-kit
32.18
KB
-rwxr-xr-x
pack200
8.9
KB
-rwxr-xr-x
package-cleanup
17.39
KB
-rwxr-xr-x
page_owner_sort
10.2
KB
-rwxr-xr-x
pango-list
11.1
KB
-rwxr-xr-x
pango-querymodules-64
28.26
KB
-rwxr-xr-x
pango-view
49.47
KB
-rwxr-xr-x
paperconf
11.23
KB
-rwxr-xr-x
passwd
27.2
KB
-rwsr-xr-x
paste
32.34
KB
-rwxr-xr-x
patch
147
KB
-rwxr-xr-x
pathchk
32.31
KB
-rwxr-xr-x
pchrt
3.93
KB
-rwxr-xr-x
pcre-config
2.09
KB
-rwxr-xr-x
pdf2dsc
698
B
-rwxr-xr-x
pdf2ps
909
B
-rwxr-xr-x
pdfetex
715.38
KB
-rwxr-xr-x
pdflatex
715.38
KB
-rwxr-xr-x
pdfroff
20.12
KB
-rwxr-xr-x
pdftex
715.38
KB
-rwxr-xr-x
pdns_control
7.57
MB
-rwxr-xr-x
pdnsutil
70.77
MB
-rwxr-xr-x
peekfd
11.21
KB
-rwxr-xr-x
perl
11.14
KB
-rwxr-xr-x
perl5.16.3
11.14
KB
-rwxr-xr-x
perlbug
43.61
KB
-rwxr-xr-x
perldoc
203
B
-rwxr-xr-x
perlivp
10.52
KB
-rwxr-xr-x
perlml
5.98
KB
-rwxr-xr-x
perlthanks
43.61
KB
-rwxr-xr-x
perror
8.95
MB
-rwxr-xr-x
pf2afm
498
B
-rwxr-xr-x
pfbtopfa
516
B
-rwxr-xr-x
pfbtops
15.21
KB
-rwxr-xr-x
pflags
2.06
KB
-rwxr-xr-x
pftp
85.5
KB
-rwxr-xr-x
pgawk
418.59
KB
-rwxr-xr-x
pgrep
27.67
KB
-rwxr-xr-x
php
937
B
-rwxr-xr-x
pic
180.41
KB
-rwxr-xr-x
pic2graph
2.95
KB
-rwxr-xr-x
piconv
7.99
KB
-rwxr-xr-x
pidstat
68.91
KB
-rwxr-xr-x
pinentry
2.54
KB
-rwxr-xr-x
pinentry-curses
49.19
KB
-rwxr-xr-x
ping
64.63
KB
-rwxr-xr-x
ping6
64.63
KB
-rwxr-xr-x
pinky
36.57
KB
-rwxr-xr-x
pip-3
407
B
-rwxr-xr-x
pip-3.6
407
B
-rwxr-xr-x
pip3
407
B
-rwxr-xr-x
pip3.6
407
B
-rwxr-xr-x
pk12util
103.22
KB
-rwxr-xr-x
pkaction
15
KB
-rwxr-xr-x
pkcheck
23.03
KB
-rwxr-xr-x
pkcs1-conv
15.52
KB
-rwxr-xr-x
pkexec
27.02
KB
-rwxr-xr-x
pkg-config
44.38
KB
-rwxr-xr-x
pkill
27.67
KB
-rwxr-xr-x
pkla-admin-identities
19.23
KB
-rwxr-xr-x
pkla-check-authorization
27.3
KB
-rwxr-xr-x
pktogf
23.61
KB
-rwxr-xr-x
pkttyagent
18.98
KB
-rwxr-xr-x
pktype
19.51
KB
-rwxr-xr-x
pl2pm
4.42
KB
-rwxr-xr-x
pldd
14.11
KB
-rwxr-xr-x
plesk_configure
342
B
-rwxr-xr-x
plymouth
39.77
KB
-rwxr-xr-x
pmap
27.61
KB
-rwxr-xr-x
pngtogd
7.05
KB
-rwxr-xr-x
pngtogd2
7.05
KB
-rwxr-xr-x
pod2html
4
KB
-rwxr-xr-x
pod2latex
10.1
KB
-rwxr-xr-x
pod2man
13.26
KB
-rwxr-xr-x
pod2texi
19.21
KB
-rwxr-xr-x
pod2text
10.75
KB
-rwxr-xr-x
pod2usage
3.67
KB
-rwxr-xr-x
podchecker
3.7
KB
-rwxr-xr-x
podselect
2.55
KB
-rwxr-xr-x
policytool
8.91
KB
-rwxr-xr-x
polkitd
1.19
MB
-rwx------
post-grohtml
187.55
KB
-rwxr-xr-x
powernow-k8-decode
6.15
KB
-rwxr-xr-x
pphs
404
B
-rwxr-xr-x
pr
65.11
KB
-rwxr-xr-x
pre-grohtml
86.24
KB
-rwxr-xr-x
precat
5.52
KB
-rwxr-xr-x
preconv
40.88
KB
-rwxr-xr-x
preunzip
5.52
KB
-rwxr-xr-x
prezip
5.52
KB
-rwxr-xr-x
prezip-bin
11.05
KB
-rwxr-xr-x
printafm
395
B
-rwxr-xr-x
printenv
28.28
KB
-rwxr-xr-x
printf
48.61
KB
-rwxr-xr-x
prlimit
41.2
KB
-rwxr-xr-x
procan
76.99
KB
-rwxr-xr-x
prove
13.13
KB
-rwxr-xr-x
prtstat
15.25
KB
-rwxr-xr-x
ps
97.77
KB
-rwxr-xr-x
ps2ascii
631
B
-rwxr-xr-x
ps2epsi
2.69
KB
-rwxr-xr-x
ps2pdf
272
B
-rwxr-xr-x
ps2pdf12
215
B
-rwxr-xr-x
ps2pdf13
215
B
-rwxr-xr-x
ps2pdf14
215
B
-rwxr-xr-x
ps2pdfwr
1.07
KB
-rwxr-xr-x
ps2ps
647
B
-rwxr-xr-x
ps2ps2
669
B
-rwxr-xr-x
psed
52.08
KB
-rwxr-xr-x
psfaddtable
19.48
KB
-rwxr-xr-x
psfgettable
19.48
KB
-rwxr-xr-x
psfstriptable
19.48
KB
-rwxr-xr-x
psfxtable
19.48
KB
-rwxr-xr-x
pstack
1.05
KB
-rwxr-xr-x
pstree
27.84
KB
-rwxr-xr-x
pstree.x11
27.84
KB
-rwxr-xr-x
pstruct
35.75
KB
-rwxr-xr-x
ptar
3.43
KB
-rwxr-xr-x
ptardiff
2.41
KB
-rwxr-xr-x
ptargrep
4.13
KB
-rwxr-xr-x
ptaskset
3.8
KB
-rwxr-xr-x
ptx
65.08
KB
-rwxr-xr-x
pwd
32.45
KB
-rwxr-xr-x
pwdx
11.27
KB
-rwxr-xr-x
pwmake
11.13
KB
-rwxr-xr-x
pwscore
11.13
KB
-rwxr-xr-x
pydoc
78
B
-rwxr-xr-x
pydoc3
78
B
-rwxr-xr-x
pydoc3.6
78
B
-rwxr-xr-x
pygettext.py
21.57
KB
-rwxr-xr-x
pynche
137
B
-rwxr-xr-x
python
6.98
KB
-rwxr-xr-x
python-config
1.79
KB
-rwxr-xr-x
python2
6.98
KB
-rwxr-xr-x
python2-config
1.79
KB
-rwxr-xr-x
python2.7
6.98
KB
-rwxr-xr-x
python2.7-config
1.79
KB
-rwxr-xr-x
python3
11.07
KB
-rwxr-xr-x
python3.6
11.07
KB
-rwxr-xr-x
python3.6m
11.07
KB
-rwxr-xr-x
pyvenv
435
B
-rwxr-xr-x
pyvenv-3.6
435
B
-rwxr-xr-x
qemu-ga
267.8
KB
-rwxr-xr-x
quota
83.31
KB
-rwsr-xr-x
quotasync
70.84
KB
-rwxr-xr-x
ranlib
61.21
KB
-rwxr-xr-x
raw
15.27
KB
-rwxr-xr-x
rcs
175.6
KB
-rwxr-xr-x
rcsclean
819
B
-rwxr-xr-x
rcsdiff
816
B
-rwxr-xr-x
rcsfreeze
4.34
KB
-rwxr-xr-x
rcsmerge
819
B
-rwxr-xr-x
rdate
10.3
KB
-rwxr-xr-x
read
28
B
-rwxr-xr-x
readelf
509.84
KB
-rwxr-xr-x
readlink
40.82
KB
-rwxr-xr-x
realpath
61.23
KB
-rwxr-xr-x
rebuild-jar-repository
1.76
KB
-rwxr-xr-x
recode-sr-latin
15.29
KB
-rwxr-xr-x
recountdiff
3.36
KB
-rwxr-xr-x
rediff
36.04
KB
-rwxr-xr-x
refer
118.5
KB
-rwxr-xr-x
rename
11.26
KB
-rwxr-xr-x
renice
11.21
KB
-rwxr-xr-x
replace
5.16
MB
-rwxr-xr-x
repo-graph
4.09
KB
-rwxr-xr-x
repo-rss
10.07
KB
-rwxr-xr-x
repoclosure
11.42
KB
-rwxr-xr-x
repodiff
13.97
KB
-rwxr-xr-x
repomanage
6.88
KB
-rwxr-xr-x
repoquery
55.68
KB
-rwxr-xr-x
reposync
14.14
KB
-rwxr-xr-x
repotrack
9.86
KB
-rwxr-xr-x
rescan-scsi-bus.sh
33.81
KB
-rwxr-xr-x
reset
19.59
KB
-rwxr-xr-x
resizecons
19.63
KB
-rwxr-xr-x
resolve_stack_dump
8.88
MB
-rwxr-xr-x
resolveip
8.81
MB
-rwxr-xr-x
restore_infected
1019
B
-rwxr-xr-x
rev
11.26
KB
-rwxr-xr-x
rlog
807
B
-rwxr-xr-x
rm
61.4
KB
-rwxr-xr-x
rmdir
44.46
KB
-rwxr-xr-x
rmid
8.9
KB
-rwxr-xr-x
rmiregistry
8.91
KB
-rwxr-xr-x
rnano
201.08
KB
-rwxr-xr-x
rpcgen
90.45
KB
-rwxr-xr-x
rpm
15.75
KB
-rwxr-xr-x
rpm2cpio
11.16
KB
-rwxr-xr-x
rpmbuild
25.57
KB
-rwxr-xr-x
rpmdb
11.73
KB
-rwxr-xr-x
rpmdev-bumpspec
9.64
KB
-rwxr-xr-x
rpmdev-checksig
4.74
KB
-rwxr-xr-x
rpmdev-cksum
1.43
KB
-rwxr-xr-x
rpmdev-diff
6.56
KB
-rwxr-xr-x
rpmdev-extract
7.83
KB
-rwxr-xr-x
rpmdev-md5
1.43
KB
-rwxr-xr-x
rpmdev-newinit
2.92
KB
-rwxr-xr-x
rpmdev-newspec
8.28
KB
-rwxr-xr-x
rpmdev-packager
2.99
KB
-rwxr-xr-x
rpmdev-rmdevelrpms
9.82
KB
-rwxr-xr-x
rpmdev-setuptree
2.31
KB
-rwxr-xr-x
rpmdev-sha1
1.43
KB
-rwxr-xr-x
rpmdev-sha224
1.43
KB
-rwxr-xr-x
rpmdev-sha256
1.43
KB
-rwxr-xr-x
rpmdev-sha384
1.43
KB
-rwxr-xr-x
rpmdev-sha512
1.43
KB
-rwxr-xr-x
rpmdev-sort
2.33
KB
-rwxr-xr-x
rpmdev-sum
1.43
KB
-rwxr-xr-x
rpmdev-vercmp
2.81
KB
-rwxr-xr-x
rpmdev-wipetree
1.48
KB
-rwxr-xr-x
rpmdumpheader
11.09
KB
-rwxr-xr-x
rpminfo
9.88
KB
-rwxr-xr-x
rpmkeys
11.73
KB
-rwxr-xr-x
rpmls
1.01
KB
-rwxr-xr-x
rpmquery
15.75
KB
-rwxr-xr-x
rpmsign
15.8
KB
-rwxr-xr-x
rpmspec
15.99
KB
-rwxr-xr-x
rpmverify
15.75
KB
-rwxr-xr-x
rsync
488.38
KB
-rwxr-xr-x
rsyslog-recover-qi.pl
5.96
KB
-rwxr-xr-x
rtf2rtf
23.58
KB
-rwxr-xr-x
run-parts
2.04
KB
-rwxr-xr-x
run-with-aspell
85
B
-rwxr-xr-x
runcon
32.47
KB
-rwxr-xr-x
rvi
906.4
KB
-rwxr-xr-x
rview
906.4
KB
-rwxr-xr-x
rvim
2.23
MB
-rwxr-xr-x
s2p
52.08
KB
-rwxr-xr-x
sadf
168.46
KB
-rwxr-xr-x
sandbox
17.52
KB
-rwxr-xr-x
sar
95.4
KB
-rwxr-xr-x
scl
19.5
KB
-rwxr-xr-x
scl_enabled
258
B
-rwxr-xr-x
scl_source
1.83
KB
-rwxr-xr-x
scp
89.25
KB
-rwxr-xr-x
script
19.61
KB
-rwxr-xr-x
scriptreplay
15.29
KB
-rwxr-xr-x
scsi-rescan
33.81
KB
-rwxr-xr-x
scsi_logging_level
7.72
KB
-rwxr-xr-x
scsi_mandat
3.55
KB
-rwxr-xr-x
scsi_readcap
1.3
KB
-rwxr-xr-x
scsi_ready
1.09
KB
-rwxr-xr-x
scsi_satl
3.76
KB
-rwxr-xr-x
scsi_start
1.25
KB
-rwxr-xr-x
scsi_stop
1.44
KB
-rwxr-xr-x
scsi_temperature
936
B
-rwxr-xr-x
sctp_darn
44.55
KB
-rwxr-xr-x
sctp_status
23.67
KB
-rwxr-xr-x
sctp_test
31.78
KB
-rwxr-xr-x
sdiff
48.41
KB
-rwxr-xr-x
secon
24.06
KB
-rwxr-xr-x
sed
74.29
KB
-rwxr-xr-x
sedismod
249.42
KB
-rwxr-xr-x
sedispol
176.32
KB
-rwxr-xr-x
semodule_package
15.3
KB
-rwxr-xr-x
seq
48.48
KB
-rwxr-xr-x
servertool
8.91
KB
-rwxr-xr-x
sessreg
11.24
KB
-rwxr-xr-x
setarch
15.27
KB
-rwxr-xr-x
setfacl
36.73
KB
-rwxr-xr-x
setfont
40.38
KB
-rwxr-xr-x
setkeycodes
11.16
KB
-rwxr-xr-x
setleds
11.16
KB
-rwxr-xr-x
setmetamode
11.21
KB
-rwxr-xr-x
setpriv
36.06
KB
-rwxr-xr-x
setsid
11.23
KB
-rwxr-xr-x
setterm
27.48
KB
-rwxr-xr-x
setup-nsssysinit
1.5
KB
-rwxr-xr-x
setup-nsssysinit.sh
1.5
KB
-rwxr-xr-x
setvtrgb
11.34
KB
-rwxr-xr-x
sexp-conv
23.63
KB
-rwxr-xr-x
sftp
142.01
KB
-rwxr-xr-x
sg
40.95
KB
-rwxr-xr-x
sg_compare_and_write
15.82
KB
-rwxr-xr-x
sg_copy_results
20.02
KB
-rwxr-xr-x
sg_dd
43.63
KB
-rwxr-xr-x
sg_decode_sense
15.49
KB
-rwxr-xr-x
sg_emc_trespass
11.09
KB
-rwxr-xr-x
sg_format
24.05
KB
-rwxr-xr-x
sg_get_config
28.22
KB
-rwxr-xr-x
sg_get_lba_status
15.5
KB
-rwxr-xr-x
sg_ident
15.46
KB
-rwxr-xr-x
sg_inq
83.68
KB
-rwxr-xr-x
sg_logs
92.48
KB
-rwxr-xr-x
sg_luns
19.65
KB
-rwxr-xr-x
sg_map
15.23
KB
-rwxr-xr-x
sg_map26
23.77
KB
-rwxr-xr-x
sg_modes
29.3
KB
-rwxr-xr-x
sg_opcodes
23.88
KB
-rwxr-xr-x
sg_persist
28.34
KB
-rwxr-xr-x
sg_prevent
11.29
KB
-rwxr-xr-x
sg_raw
19.78
KB
-rwxr-xr-x
sg_rbuf
19.66
KB
-rwxr-xr-x
sg_rdac
15.13
KB
-rwxr-xr-x
sg_read
23.33
KB
-rwxr-xr-x
sg_read_block_limits
11.31
KB
-rwxr-xr-x
sg_read_buffer
15.53
KB
-rwxr-xr-x
sg_read_long
15.55
KB
-rwxr-xr-x
sg_readcap
19.66
KB
-rwxr-xr-x
sg_reassign
15.54
KB
-rwxr-xr-x
sg_referrals
15.48
KB
-rwxr-xr-x
sg_requests
15.58
KB
-rwxr-xr-x
sg_reset
11.46
KB
-rwxr-xr-x
sg_rmsn
11.32
KB
-rwxr-xr-x
sg_rtpg
15.39
KB
-rwxr-xr-x
sg_safte
19.59
KB
-rwxr-xr-x
sg_sanitize
19.88
KB
-rwxr-xr-x
sg_sat_identify
15.55
KB
-rwxr-xr-x
sg_sat_phy_event
15.87
KB
-rwxr-xr-x
sg_sat_set_features
15.41
KB
-rwxr-xr-x
sg_scan
15.34
KB
-rwxr-xr-x
sg_senddiag
20.02
KB
-rwxr-xr-x
sg_ses
67.55
KB
-rwxr-xr-x
sg_start
19.7
KB
-rwxr-xr-x
sg_stpg
19.61
KB
-rwxr-xr-x
sg_sync
15.52
KB
-rwxr-xr-x
sg_test_rwbuf
15.6
KB
-rwxr-xr-x
sg_turs
15.48
KB
-rwxr-xr-x
sg_unmap
15.5
KB
-rwxr-xr-x
sg_verify
15.7
KB
-rwxr-xr-x
sg_vpd
77.67
KB
-rwxr-xr-x
sg_wr_mode
19.55
KB
-rwxr-xr-x
sg_write_buffer
15.66
KB
-rwxr-xr-x
sg_write_long
15.55
KB
-rwxr-xr-x
sg_write_same
19.9
KB
-rwxr-xr-x
sg_xcopy
35.61
KB
-rwxr-xr-x
sginfo
65.8
KB
-rwxr-xr-x
sgm_dd
31.52
KB
-rwxr-xr-x
sgml2html
1.6
KB
-rwxr-xr-x
sgml2info
1.6
KB
-rwxr-xr-x
sgml2latex
1.6
KB
-rwxr-xr-x
sgml2lyx
1.6
KB
-rwxr-xr-x
sgml2rtf
1.6
KB
-rwxr-xr-x
sgml2txt
1.6
KB
-rwxr-xr-x
sgml2xml
77.5
KB
-rwxr-xr-x
sgmlcheck
1.6
KB
-rwxr-xr-x
sgmlnorm
44.69
KB
-rwxr-xr-x
sgmlpre
15.32
KB
-rwxr-xr-x
sgmlsasp
23.65
KB
-rwxr-xr-x
sgmlwhich
265
B
-rwxr-xr-x
sgp_dd
35.83
KB
-rwxr-xr-x
sh
941.93
KB
-rwxr-xr-x
sha1sum
36.57
KB
-rwxr-xr-x
sha224sum
40.63
KB
-rwxr-xr-x
sha256sum
40.63
KB
-rwxr-xr-x
sha384sum
40.65
KB
-rwxr-xr-x
sha512sum
40.65
KB
-rwxr-xr-x
shasum
8.4
KB
-rwxr-xr-x
show-changed-rco
10.13
KB
-rwxr-xr-x
show-installed
16.18
KB
-rwxr-xr-x
showconsolefont
15.47
KB
-rwxr-xr-x
showkey
15.23
KB
-rwxr-xr-x
showrgb
7.08
KB
-rwxr-xr-x
shred
52.94
KB
-rwxr-xr-x
shuf
49.13
KB
-rwxr-xr-x
signver
102.6
KB
-rwxr-xr-x
sim_client
14.97
KB
-rwxr-xr-x
simpdftex
20.9
KB
-rwxr-xr-x
size
32.35
KB
-rwxr-xr-x
skill
23.62
KB
-rwxr-xr-x
slabinfo
34.96
KB
-rwxr-xr-x
slabtop
19.52
KB
-rwxr-xr-x
sleep
32.35
KB
-rwxr-xr-x
slogin
760.45
KB
-rwxr-xr-x
smtpd.py
18.1
KB
-rwxr-xr-x
snice
23.62
KB
-rwxr-xr-x
socat
380.43
KB
-rwxr-xr-x
soelim
32.59
KB
-rwxr-xr-x
sort
114.94
KB
-rwxr-xr-x
sotruss
4.24
KB
-rwxr-xr-x
spam
65.63
KB
-rwxr-xr-x
spectool
10
KB
-rwxr-xr-x
spell
122
B
-rwxr-xr-x
spent
23.6
KB
-rwxr-xr-x
splain
18.03
KB
-rwxr-xr-x
split
69.47
KB
-rwxr-xr-x
splitdiff
3.11
KB
-rwxr-xr-x
sprof
22.1
KB
-rwxr-xr-x
sqlite3
54.95
KB
-rwxr-xr-x
ssh
760.45
KB
-rwxr-xr-x
ssh-add
352.46
KB
-rwxr-xr-x
ssh-agent
373.26
KB
---x--s--x
ssh-copy-id
10.22
KB
-rwxr-xr-x
ssh-keygen
409.38
KB
-rwxr-xr-x
ssh-keyscan
434.7
KB
-rwxr-xr-x
ssltap
118.41
KB
-rwxr-xr-x
stap
3.39
MB
-rwxr-xr-x
stap-merge
10.96
KB
-rwxr-xr-x
stap-prep
4.08
KB
-rwxr-xr-x
stap-report
4.74
KB
-rwxr-xr-x
stapbpf
64.53
KB
-rwxr-xr-x
stapdyn
195.27
KB
-rwxr-xr-x
staprun
207.11
KB
---s--x---
stapsh
23.18
KB
-rwxr-xr-x
stat
77.19
KB
-rwxr-xr-x
stdbuf
64.88
KB
-rwxr-xr-x
strace
1009.22
KB
-rwxr-xr-x
strace-log-merge
1.28
KB
-rwxr-xr-x
stream
7.05
KB
-rwxr-xr-x
strings
36.53
KB
-rwxr-xr-x
strip
227.32
KB
-rwxr-xr-x
stty
68.61
KB
-rwxr-xr-x
su
31.38
KB
-rwsr-x---
sudo
147.88
KB
---s--x--x
sudoedit
147.88
KB
---s--x--x
sudoreplay
56.11
KB
---x--x--x
sum
36.55
KB
-rwxr-xr-x
svn
232.45
KB
-rwxr-xr-x
svnadmin
67.4
KB
-rwxr-xr-x
svndumpfilter
35.32
KB
-rwxr-xr-x
svnlook
67.45
KB
-rwxr-xr-x
svnrdump
51.54
KB
-rwxr-xr-x
svnserve
83.95
KB
-rwxr-xr-x
svnsync
51.59
KB
-rwxr-xr-x
svnversion
15.15
KB
-rwxr-xr-x
swig
1.35
MB
-rwxr-xr-x
sxpm
19.83
KB
-rwxr-xr-x
sync
28.33
KB
-rwxr-xr-x
systemctl
704.8
KB
-rwxr-xr-x
systemd-analyze
1.49
MB
-rwxr-xr-x
systemd-ask-password
60.38
KB
-rwxr-xr-x
systemd-cat
39.98
KB
-rwxr-xr-x
systemd-cgls
326.31
KB
-rwxr-xr-x
systemd-cgtop
85.09
KB
-rwxr-xr-x
systemd-coredumpctl
154.52
KB
-rwxr-xr-x
systemd-delta
76.84
KB
-rwxr-xr-x
systemd-detect-virt
39.97
KB
-rwxr-xr-x
systemd-escape
48.2
KB
-rwxr-xr-x
systemd-firstboot
101.52
KB
-rwxr-xr-x
systemd-hwdb
85.31
KB
-rwxr-xr-x
systemd-inhibit
309.83
KB
-rwxr-xr-x
systemd-loginctl
489.6
KB
-rwxr-xr-x
systemd-machine-id-setup
52.23
KB
-rwxr-xr-x
systemd-notify
48.13
KB
-rwxr-xr-x
systemd-nspawn
545.88
KB
-rwxr-xr-x
systemd-path
52.16
KB
-rwxr-xr-x
systemd-run
387.05
KB
-rwxr-xr-x
systemd-stdio-bridge
305.77
KB
-rwxr-xr-x
systemd-sysv-convert
3.89
KB
-rwxr-xr-x
systemd-tmpfiles
146.13
KB
-rwxr-xr-x
systemd-tty-ask-password-agent
84.75
KB
-rwxr-xr-x
tabs
15.3
KB
-rwxr-xr-x
tac
32.48
KB
-rwxr-xr-x
tail
65.25
KB
-rwxr-xr-x
tailf
23.88
KB
-rwxr-xr-x
tapestat
52.56
KB
-rwxr-xr-x
tar
338.02
KB
-rwxr-xr-x
taskset
32.22
KB
-rwxr-xr-x
tbl
115.96
KB
-rwxr-xr-x
tclsh
7
KB
-rwxr-xr-x
tclsh8.5
7
KB
-rwxr-xr-x
tcptraceroute
1.44
KB
-rwxr-xr-x
teamd
155.09
KB
-rwxr-xr-x
teamdctl
28.98
KB
-rwxr-xr-x
teamnl
19.09
KB
-rwxr-xr-x
tee
32.38
KB
-rwxr-xr-x
telnet
99.41
KB
-rwxr-xr-x
test
36.46
KB
-rwxr-xr-x
testgdbm
29.77
KB
-rwxr-xr-x
tex
313.38
KB
-rwxr-xr-x
texconfig
42.64
KB
-rwxr-xr-x
texconfig-dialog
12.38
KB
-rwxr-xr-x
texconfig-sys
894
B
-rwxr-xr-x
texhash
7.39
KB
-rwxr-xr-x
texi2any
50.83
KB
-rwxr-xr-x
texlinks
10.05
KB
-rwxr-xr-x
texlua
5.8
MB
-rwxr-xr-x
texluac
5.8
MB
-rwxr-xr-x
tfmtodit
32.77
KB
-rwxr-xr-x
thumbpdf
41.4
KB
-rwxr-xr-x
tic
64.26
KB
-rwxr-xr-x
timedatectl
330.2
KB
-rwxr-xr-x
timeout
53.31
KB
-rwxr-xr-x
tload
15.38
KB
-rwxr-xr-x
tmon
31.11
KB
-rwxr-xr-x
tmpwatch
27.87
KB
-rwxr-xr-t
tnameserv
8.95
KB
-rwxr-xr-x
toe
15.42
KB
-rwxr-xr-x
top
104.38
KB
-rwxr-xr-x
touch
61.02
KB
-rwxr-xr-x
tput
15.43
KB
-rwxr-xr-x
tr
44.61
KB
-rwxr-xr-x
tracepath
15.05
KB
-rwxr-xr-x
tracepath6
15.05
KB
-rwxr-xr-x
traceroute
61.86
KB
-rwxr-xr-x
traceroute6
61.86
KB
-rwxr-xr-x
troff
512.96
KB
-rwxr-xr-x
true
28.26
KB
-rwxr-xr-x
truncate
52.68
KB
-rwxr-xr-x
trust
179.08
KB
-rwxr-xr-x
tset
19.59
KB
-rwxr-xr-x
tsort
36.47
KB
-rwxr-xr-x
ttmkfdir
99.04
KB
-rwxr-xr-x
tty
28.29
KB
-rwxr-xr-x
turbostat
113.15
KB
-rwxr-xr-x
tzselect
7.17
KB
-rwxr-xr-x
uapi
3.04
MB
-rwxr-xr-x
ucs2any
19.47
KB
-rwxr-xr-x
udevadm
414.27
KB
-rwxr-xr-x
ul
19.47
KB
-rwxr-xr-x
umask
29
B
-rwxr-xr-x
umount
31.23
KB
-rwxr-xr-x
unalias
31
B
-rwxr-xr-x
uname
32.3
KB
-rwxr-xr-x
unexpand
32.45
KB
-rwxr-xr-x
unicode_start
2.5
KB
-rwxr-xr-x
unicode_stop
363
B
-rwxr-xr-x
uniq
44.71
KB
-rwxr-xr-x
unix-lpr.sh
4.07
KB
-rwxr-xr-x
unlink
28.3
KB
-rwxr-xr-x
unlz4
105.87
KB
-rwxr-xr-x
unpack200
119.29
KB
-rwxr-xr-x
unshare
15.45
KB
-rwxr-xr-x
unwrapdiff
5.8
KB
-rwxr-xr-x
unxz
73.52
KB
-rwxr-xr-x
unzip
185.16
KB
-rwxr-xr-x
unzipsfx
88.66
KB
-rwxr-xr-x
update-ca-trust
1.03
KB
-rwxr-xr-x
update-gtk-immodules
313
B
-rwxr-xr-x
update-mime-database
52.82
KB
-rwxr-xr-x
updmap
76.79
KB
-rwxr-xr-x
updmap-sys
829
B
-rwxr-xr-x
uptime
11.22
KB
-rwxr-xr-x
urlgrabber
12.17
KB
-rwxr-xr-x
users
32.42
KB
-rwxr-xr-x
usleep
10.95
KB
-rwxr-xr-x
usx2yloader
15.41
KB
-rwxr-xr-x
utmpdump
15.45
KB
-rwxr-xr-x
uuclient
14.97
KB
-rwxr-xr-x
uuidgen
11.21
KB
-rwxr-xr-x
vdir
114.85
KB
-rwxr-xr-x
verifytree
10.79
KB
-rwxr-xr-x
vi
906.4
KB
-rwxr-xr-x
view
906.4
KB
-rwxr-xr-x
vim
2.23
MB
-rwxr-xr-x
vimdiff
2.23
MB
-rwxr-xr-x
vimtutor
2.04
KB
-rwxr-xr-x
vlock
15.73
KB
-rwxr-xr-x
vmstat
31.48
KB
-rwxr-xr-x
vxloader
15.38
KB
-rwxr-xr-x
w
19.45
KB
-rwxr-xr-x
w3m
1.37
MB
-rwxr-xr-x
w3mman
1.37
KB
-rwxr-xr-x
wait
28
B
-rwxr-xr-x
wall
14.98
KB
-r-xr-sr-x
watch
24.14
KB
-rwxr-xr-x
watchgnupg
15.35
KB
-rwxr-xr-x
wc
40.67
KB
-rwxr-xr-x
wdctl
40.7
KB
-rwxr-xr-x
webpng
11.15
KB
-rwxr-xr-x
wget
408.97
KB
-rwxr-xr-x
whatis
45.49
KB
-rwxr-xr-x
whereis
20.2
KB
-rwxr-xr-x
which
23.77
KB
-rwxr-xr-x
whiptail
27.84
KB
-rwxr-xr-x
who
48.7
KB
-rwxr-xr-x
whoami
28.3
KB
-rwxr-xr-x
wish
7.04
KB
-rwxr-xr-x
wish8.5
7.04
KB
-rwxr-xr-x
withsctp
229
B
-rwxr-xr-x
wmf2eps
15.29
KB
-rwxr-xr-x
wmf2fig
15.27
KB
-rwxr-xr-x
wmf2gd
15.26
KB
-rwxr-xr-x
wmf2svg
15.3
KB
-rwxr-xr-x
wmf2x
15.25
KB
-rwxr-xr-x
word-list-compress
11.03
KB
-rwxr-xr-x
write
19.09
KB
-rwxr-xr-x
x86_64
15.27
KB
-rwxr-xr-x
x86_64-redhat-linux-c++
754.59
KB
-rwxr-x---
x86_64-redhat-linux-g++
754.59
KB
-rwxr-x---
x86_64-redhat-linux-gcc
750.58
KB
-rwxr-x---
x86_energy_perf_policy
10.23
KB
-rwxr-xr-x
xargs
60.91
KB
-rwxr-xr-x
xdvi
1.82
KB
-rwxr-xr-x
xdvi-xaw
627.39
KB
-rwxr-xr-x
xgamma
11.15
KB
-rwxr-xr-x
xgettext
265.35
KB
-rwxr-xr-x
xhost
15.38
KB
-rwxr-xr-x
xinput
52.81
KB
-rwxr-xr-x
xkill
15.27
KB
-rwxr-xr-x
xml2-config
1.68
KB
-rwxr-xr-x
xmlcatalog
15.3
KB
-rwxr-xr-x
xmllint
61.94
KB
-rwxr-xr-x
xmlwf
24
KB
-rwxr-xr-x
xmodmap
32.28
KB
-rwxr-xr-x
xmvn-builddep
1.04
KB
-rwxr-xr-x
xorg-x11-fonts-update-dirs
1.29
KB
-rwxr--r--
xrandr
60.06
KB
-rwxr-xr-x
xrdb
27.78
KB
-rwxr-xr-x
xrefresh
11.16
KB
-rwxr-xr-x
xset
31.72
KB
-rwxr-xr-x
xsetmode
11.1
KB
-rwxr-xr-x
xsetpointer
11.13
KB
-rwxr-xr-x
xsetroot
19.38
KB
-rwxr-xr-x
xslt-config
2.36
KB
-rwxr-xr-x
xsltproc
23.5
KB
-rwxr-xr-x
xstdcmap
15.77
KB
-rwxr-xr-x
xsubpp
4.45
KB
-rwxr-xr-x
xxd
14.42
KB
-rwxr-xr-x
xz
73.52
KB
-rwxr-xr-x
xzcat
73.52
KB
-rwxr-xr-x
xzcmp
6.48
KB
-rwxr-xr-x
xzdec
11.21
KB
-rwxr-xr-x
xzdiff
6.48
KB
-rwxr-xr-x
xzegrep
5.76
KB
-rwxr-xr-x
xzfgrep
5.76
KB
-rwxr-xr-x
xzgrep
5.76
KB
-rwxr-xr-x
xzless
1.76
KB
-rwxr-xr-x
xzmore
2.11
KB
-rwxr-xr-x
yacc
84.48
KB
-rwxr-xr-x
yes
28.3
KB
-rwxr-xr-x
ypdomainname
15.41
KB
-rwxr-xr-x
yum
801
B
-rwxr-xr-x
yum-builddep
9.95
KB
-rwxr-xr-x
yum-config-manager
9.35
KB
-rwxr-xr-x
yum-debug-dump
8.34
KB
-rwxr-xr-x
yum-debug-restore
7.72
KB
-rwxr-xr-x
yum-groups-manager
10.77
KB
-rwxr-xr-x
yumdownloader
10.85
KB
-rwxr-xr-x
zcat
1.9
KB
-rwxr-xr-x
zcmp
1.72
KB
-rwxr-xr-x
zdiff
5.63
KB
-rwxr-xr-x
zegrep
123
B
-rwxr-xr-x
zfgrep
123
B
-rwxr-xr-x
zforce
2.09
KB
-rwxr-xr-x
zgrep
5.98
KB
-rwxr-xr-x
zip
210.78
KB
-rwxr-xr-x
zipcloak
98.1
KB
-rwxr-xr-x
zipcmp
11.71
KB
-rwxr-xr-x
zipdetails
47.32
KB
-rwxr-xr-x
zipgrep
2.88
KB
-rwxr-xr-x
zipinfo
185.16
KB
-rwxr-xr-x
zipmerge
11.76
KB
-rwxr-xr-x
zipnote
93.73
KB
-rwxr-xr-x
zipsplit
97.75
KB
-rwxr-xr-x
ziptorrent
11.6
KB
-rwxr-xr-x
zless
1.99
KB
-rwxr-xr-x
zlib_decompress
164.46
KB
-rwxr-xr-x
zmore
2.79
KB
-rwxr-xr-x
znew
5.22
KB
-rwxr-xr-x
zone2json
21.41
MB
-rwxr-xr-x
zone2sql
21.9
MB
-rwxr-xr-x
zsoelim
32.59
KB
-rwxr-xr-x
Delete
Unzip
Zip
${this.title}
Close
Code Editor : texi2any
#! /usr/bin/perl # texi2any: Texinfo converter. # # Copyright 2010, 2011, 2012, 2013 Free Software Foundation, Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 3 of the License, # or (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. # # Original author: Patrice Dumas <pertusus@free.fr> # Parts (also from Patrice Dumas) come from texi2html.pl or texi2html.init. # for POSIX::setlocale and File::Spec require 5.00405; use strict; # for file names portability use File::Spec; # to determine the path separator and null file use Config; # for dirname and fileparse use File::Basename; #use Cwd; use Getopt::Long qw(GetOptions); # for carp #use Carp; Getopt::Long::Configure("gnu_getopt"); # This big BEGIN block deals with finding modules and # some dependencies that we ship # * in source or # * installed or # * installed relative to the script BEGIN { # emulate -w $^W = 1; my ($real_command_name, $command_directory, $command_suffix) = fileparse($0, '.pl'); my $datadir = '/usr/share'; my $package = 'texinfo'; my $updir = File::Spec->updir(); my $texinfolibdir; my $lib_dir; # in-source run if (($command_suffix eq '.pl' and !(defined($ENV{'TEXINFO_DEV_SOURCE'}) and $ENV{'TEXINFO_DEV_SOURCE'} eq 0)) or $ENV{'TEXINFO_DEV_SOURCE'}) { if (defined($ENV{'top_srcdir'})) { $texinfolibdir = File::Spec->catdir($ENV{'top_srcdir'}, 'tp'); } else { $texinfolibdir = $command_directory; } $lib_dir = File::Spec->catdir($texinfolibdir, 'maintain'); unshift @INC, $texinfolibdir; } elsif ($datadir ne '@' .'datadir@' and $package ne '@' . 'PACKAGE@' and $datadir ne '') { $texinfolibdir = File::Spec->catdir($datadir, $package); # try to make package relocatable, will only work if standard relative paths # are used if (! -f File::Spec->catfile($texinfolibdir, 'Texinfo', 'Parser.pm') and -f File::Spec->catfile($command_directory, $updir, 'share', 'texinfo', 'Texinfo', 'Parser.pm')) { $texinfolibdir = File::Spec->catdir($command_directory, $updir, 'share', 'texinfo'); } $lib_dir = $texinfolibdir; unshift @INC, $texinfolibdir; } # '@USE_EXTERNAL_LIBINTL @ and similar are substituted in the # makefile using values from configure if (defined($texinfolibdir)) { if ('yes' ne 'yes') { unshift @INC, (File::Spec->catdir($lib_dir, 'lib', 'libintl-perl', 'lib')); } if ('no' ne 'yes') { unshift @INC, (File::Spec->catdir($lib_dir, 'lib', 'Unicode-EastAsianWidth', 'lib')); } if ('yes' ne 'yes') { unshift @INC, (File::Spec->catdir($lib_dir, 'lib', 'Text-Unidecode', 'lib')); } } } use Texinfo::Convert::Texinfo; use Texinfo::Parser; use Texinfo::Structuring; use Texinfo::Convert::Info; use Texinfo::Convert::HTML; use Texinfo::Convert::TexinfoXML; use Texinfo::Convert::TexinfoSXML; use Texinfo::Convert::DocBook; use Texinfo::Convert::TextContent; use Texinfo::Convert::PlainTexinfo; use Texinfo::Convert::IXINSXML; use DebugTexinfo::DebugCount; use DebugTexinfo::DebugTree; my ($real_command_name, $command_directory, $command_suffix) = fileparse($0, '.pl'); # this associates the command line options to the arrays set during # command line parsing. my @css_files = (); my @css_refs = (); my $cmdline_options = { 'CSS_FILES' => \@css_files, 'CSS_REFS' => \@css_refs }; # determine the path separators my $path_separator = $Config{'path_sep'}; $path_separator = ':' if (!defined($path_separator)); my $quoted_path_separator = quotemeta($path_separator); # Paths and file names my $curdir = File::Spec->curdir(); my $updir = File::Spec->updir(); # set by configure, prefix for the sysconfdir and so on # This could be used in the eval my $prefix = '/usr'; my $datarootdir; my $sysconfdir; my $pkgdatadir; my $datadir; my $fallback_prefix = File::Spec->catdir(File::Spec->rootdir(), 'usr', 'local'); # We need to eval as $prefix has to be expanded. However when we haven't # run configure @sysconfdir will be expanded as an array, thus we verify # whether configure was run or not if ('/etc' ne '@' . 'sysconfdir@') { $sysconfdir = eval '"/etc"'; } else { $sysconfdir = File::Spec->catdir($fallback_prefix, 'etc'); } if ('/usr/share' ne '@' . 'datarootdir@') { $datarootdir = eval '"/usr/share"'; } else { $datarootdir = File::Spec->catdir($fallback_prefix, 'share'); } if ('/usr/share' ne '@' . 'datadir@' and 'texinfo' ne '@' . 'PACKAGE@') { $datadir = eval '"/usr/share"'; my $package = 'texinfo'; $pkgdatadir = File::Spec->catdir($datadir, $package); } else { $datadir = File::Spec->catdir($fallback_prefix, 'share'); $pkgdatadir = File::Spec->catdir($datadir, 'texinfo'); } # work-around in case libintl-perl do not do it itself # see http://www.gnu.org/software/gettext/manual/html_node/The-LANGUAGE-variable.html#The-LANGUAGE-variable if ((defined($ENV{"LC_ALL"}) and $ENV{"LC_ALL"} =~ /^(C|POSIX)$/) or (defined($ENV{"LANG"}) and $ENV{"LANG"} =~ /^(C|POSIX)$/)) { delete $ENV{"LANGUAGE"} if defined($ENV{"LANGUAGE"}); } #my $messages_textdomain = 'texinfo'; my $messages_textdomain = 'texinfo'; $messages_textdomain = 'texinfo' if ($messages_textdomain eq '@'.'PACKAGE@'); my $strings_textdomain = 'texinfo' . '_document'; $strings_textdomain = 'texinfo_document' if ($strings_textdomain eq '@'.'PACKAGE@' . '_document'); sub __($) { my $msgid = shift; return Locale::Messages::dgettext($messages_textdomain, $msgid); } sub __p($$) { my $context = shift; my $msgid = shift; return Locale::Messages::dpgettext($messages_textdomain, $context, $msgid); } my $srcdir; if (defined($ENV{'top_srcdir'})) { $srcdir = File::Spec->catdir($ENV{'top_srcdir'}, 'tp'); } else { $srcdir = $command_directory; } my $libsrcdir = File::Spec->catdir($srcdir, 'maintain'); # we want a reliable way to switch locale, so we don't use the system # gettext. Locale::Messages->select_package('gettext_pp'); #my @search_locale_dirs = ("$datadir/locale", (map $_ . '/LocaleData', @INC), # qw (/usr/share/locale /usr/local/share/locale)); if (($command_suffix eq '.pl' and !(defined($ENV{'TEXINFO_DEV_SOURCE'}) and $ENV{'TEXINFO_DEV_SOURCE'} eq 0)) or $ENV{'TEXINFO_DEV_SOURCE'}) { # in case of build from the source directory, out of source build, # this helps to locate the locales. my $locales_dir_found = 0; foreach my $locales_dir ( File::Spec->catdir($libsrcdir, $updir, 'LocaleData'), File::Spec->catdir($curdir, 'LocaleData'), File::Spec->catdir($updir, $updir, $updir, 'tp', 'LocaleData')) { if (-d $locales_dir) { Locale::Messages::bindtextdomain ($strings_textdomain, $locales_dir); # the messages in this domain are not regenerated automatically, # only when calling ./maintain/regenerate_perl_module_files.sh Locale::Messages::bindtextdomain ($messages_textdomain, $locales_dir); $locales_dir_found = 1; last; } } if (!$locales_dir_found) { warn "Locales dir for document strings not found\n"; } } else { Locale::Messages::bindtextdomain ($strings_textdomain, File::Spec->catdir($datadir, 'locale')); Locale::Messages::bindtextdomain ($messages_textdomain, File::Spec->catdir($datadir, 'locale')); } #Locale::Messages::bindtextdomain ($messages_textdomain, # File::Spec->catdir($datadir, 'locale')); # Version setting is complicated, because we cope with # * script with configure values substituted or not # * script shipped as part of texinfo or as a standalone perl module # When shipped as a perl modules, $hardcoded_version is set to undef here # by a sed one liner. The consequence is that configure.ac is not used # to retrieve the version number. # Otherwise this is only used as a safety value, and should never be used # in practice as a regexp extracts the version from configure.ac. my $hardcoded_version = "0.00-hardcoded"; # Version set in configure.ac my $configured_version = '5.1'; if ($configured_version eq '@' . 'PACKAGE_VERSION@') { # if not configured, and $hardcoded_version is set search for the version # in configure.ac if (defined($hardcoded_version)) { if (open (CONFIGURE, "< ".File::Spec->catfile($srcdir, $updir, 'configure.ac'))) { while (<CONFIGURE>) { if (/^AC_INIT\(\[[^\]]+\]\s*,\s*\[([^\]]+)\]\s*,/) { $configured_version = "$1+dev"; # +dev to distinguish from installed last; } } close (CONFIGURE); } # This should never be used, but is a safety value $configured_version = $hardcoded_version if (!defined($configured_version)); } else { # used in the standalone perl module, as $hardcoded_version is undef # and it should never be configured in that setup $configured_version = $Texinfo::Parser::VERSION; } } my $configured_package = 'texinfo'; $configured_package = 'Texinfo' if ($configured_package eq '@' . 'PACKAGE@'); my $configured_name = 'GNU Texinfo'; $configured_name = $configured_package if ($configured_name eq '@' .'PACKAGE_NAME@'); my $configured_name_version = "$configured_name $configured_version"; my $configured_url = 'http://www.gnu.org/software/texinfo/'; $configured_url = 'http://www.gnu.org/software/texinfo/' if ($configured_url eq '@' .'PACKAGE_URL@'); my $texinfo_dtd_version = '5.0'; # $hardcoded_version is undef for a standalone perl module if ($texinfo_dtd_version eq '@' . 'TEXINFO_DTD_VERSION@') { $texinfo_dtd_version = undef; if (defined($hardcoded_version)) { if (open (CONFIGURE, "< ".File::Spec->catfile($srcdir, $updir, 'configure.ac'))) { while (<CONFIGURE>) { if (/^TEXINFO_DTD_VERSION=([0-9]\S*)/) { $texinfo_dtd_version = "$1"; last; } } close (CONFIGURE); } } } # Used in case it is not hardcoded in configure and for standalone perl module $texinfo_dtd_version = $configured_version if (!defined($texinfo_dtd_version)); # defaults for options relevant in the main program, not undef, and also # defaults for all the converters. # Other relevant options (undef) are NO_WARN FORCE OUTFILE # Others are set in the converters (SHOW_MENU). my $converter_default_options = { 'ERROR_LIMIT' => 100, 'TEXI2DVI' => 'texi2dvi', 'PACKAGE_VERSION' => $configured_version, 'PACKAGE' => $configured_package, 'PACKAGE_NAME' => $configured_name, 'PACKAGE_AND_VERSION' => $configured_name_version, 'PACKAGE_URL' => $configured_url, 'PROGRAM' => $real_command_name, 'TEXINFO_DTD_VERSION' => $texinfo_dtd_version, }; # determine configuration directories. my $conf_file_name = 'Config' ; my $texinfo_htmlxref = 'htmlxref.cnf'; # directories for texinfo configuration files my @language_config_dirs = File::Spec->catdir($curdir, '.texinfo'); push @language_config_dirs, File::Spec->catdir($ENV{'HOME'}, '.texinfo') if (defined($ENV{'HOME'})); push @language_config_dirs, File::Spec->catdir($sysconfdir, 'texinfo') if (defined($sysconfdir)); push @language_config_dirs, File::Spec->catdir($datadir, 'texinfo') if (defined($datadir)); my @texinfo_config_dirs = ($curdir, @language_config_dirs); my @program_config_dirs; my @program_init_dirs; my $program_name = 'texi2any'; @program_config_dirs = ($curdir, File::Spec->catdir($curdir, ".$program_name")); push @program_config_dirs, File::Spec->catdir($ENV{'HOME'}, ".$program_name") if (defined($ENV{'HOME'})); push @program_config_dirs, File::Spec->catdir($sysconfdir, $program_name) if (defined($sysconfdir)); push @program_config_dirs, File::Spec->catdir($datadir, $program_name) if (defined($datadir)); @program_init_dirs = @program_config_dirs; foreach my $texinfo_config_dir (@language_config_dirs) { push @program_init_dirs, File::Spec->catdir($texinfo_config_dir, 'init'); } # Namespace for configuration { package Texinfo::Config; #use Carp; # passed from main program my $cmdline_options; my $default_options; # used in main program our $options = {}; sub _load_config($$) { $default_options = shift; $cmdline_options = shift; #print STDERR "cmdline_options: ".join('|',keys(%$cmdline_options))."\n"; } sub _load_init_file($) { my $file = shift; eval { require($file) ;}; my $e = $@; if ($e ne '') { main::document_warn(sprintf(main::__("error loading %s: %s\n"), $file, $e)); } } # FIXME: maybe use an opaque return status that can be used to retrieve # an error message? sub set_from_init_file($$) { my $var = shift; my $value = shift; if (!Texinfo::Common::valid_option($var)) { # carp may be better, but infortunately, it points to the routine that # loads the file, and not to the init file. main::document_warn(sprintf(main::__("%s: unknown variable %s"), 'set_from_init_file', $var)); return 0; } elsif (Texinfo::Common::obsolete_option($var)) { main::document_warn(sprintf(main::__("%s: obsolete variable %s\n"), 'set_from_init_file', $var)); } return 0 if (defined($cmdline_options->{$var})); delete $default_options->{$var}; $options->{$var} = $value; return 1; } sub set_from_cmdline($$) { my $var = shift; my $value = shift; delete $options->{$var}; delete $default_options->{$var}; if (!Texinfo::Common::valid_option($var)) { main::document_warn(sprintf(main::__("%s: unknown variable %s\n"), 'set_from_cmdline', $var)); return 0; } elsif (Texinfo::Common::obsolete_option($var)) { main::document_warn(sprintf(main::__("obsolete variable %s\n"), 'set_from_cmdline', $var)); } $cmdline_options->{$var} = $value; return 1; } # This also could get and set some @-command results. # FIXME But it does not take into account what happens during conversion, # for that something like $converter->get_conf(...) has to be used. sub get_conf($) { my $var = shift; if (exists($cmdline_options->{$var})) { return $cmdline_options->{$var}; } elsif (exists($options->{$var})) { return $options->{$var}; } elsif (exists($default_options->{$var})) { return $default_options->{$var}; } else { return undef; } } } # back in main program namespace # file: file name to locate. It can be a file path. # directories: a reference on a array containing a list of directories to # search the file in. # all_files: if true collect all the files with that name, otherwise stop # at first match. sub locate_init_file($$$) { my $file = shift; my $directories = shift; my $all_files = shift; if (File::Spec->file_name_is_absolute($file)) { return $file if (-e $file and -r $file); } else { my @files; foreach my $dir (@$directories) { next unless (-d $dir); my $possible_file = File::Spec->catfile($dir, $file); if ($all_files) { push (@files, $possible_file) if (-e $possible_file and -r $possible_file); } else { return $possible_file if (-e $possible_file and -r $possible_file); } } return @files if ($all_files); } return undef; } sub locate_and_load_init_file($$) { my $filename = shift; my $directories = shift; my $file = locate_init_file($filename, $directories, 0); if (defined($file)) { Texinfo::Config::_load_init_file($file); } else { document_warn(sprintf(__("could not read init file %s"), $filename)); } } # read initialization files foreach my $file (locate_init_file($conf_file_name, [ reverse(@program_config_dirs) ], 1)) { Texinfo::Config::_load_init_file($file); } sub set_from_cmdline($$) { return &Texinfo::Config::set_from_cmdline(@_); } sub set_from_init_file($$) { return &Texinfo::Config::set_from_init_file(@_); } sub get_conf($) { return &Texinfo::Config::get_conf(@_); } my @input_file_suffixes = ('.txi','.texinfo','.texi','.txinfo',''); my @texi2dvi_args = (); my $format = 'info'; # this is the format associated with the output format, which is replaced # when the output format changes. It may also be removed if there is the # corresponding --no-ifformat. my $default_expanded_format = [ $format ]; my @conf_dirs = (); my @include_dirs = (); my @prepend_dirs = (); # options for all the files my $parser_default_options = {'expanded_formats' => [], 'values' => {'txicommandconditionals' => 1}, 'gettext' => \&__, 'pgettext' => \&__p,}; Texinfo::Config::_load_config($converter_default_options, $cmdline_options); sub set_expansion($$) { my $region = shift; my $set = shift; $set = 1 if (!defined($set)); if ($set) { push @{$parser_default_options->{'expanded_formats'}}, $region unless (grep {$_ eq $region} @{$parser_default_options->{'expanded_formats'}}); } else { @{$parser_default_options->{'expanded_formats'}} = grep {$_ ne $region} @{$parser_default_options->{'expanded_formats'}}; @{$default_expanded_format} = grep {$_ ne $region} @{$default_expanded_format}; } } my $format_from_command_line = 0; my %format_command_line_names = ( 'xml' => 'texinfoxml', ); my %formats_table = ( 'info' => { 'nodes_tree' => 1, 'floats' => 1, 'converter' => sub{Texinfo::Convert::Info->converter(@_)}, }, 'plaintext' => { 'nodes_tree' => 1, 'floats' => 1, 'converter' => sub{Texinfo::Convert::Plaintext->converter(@_)}, }, 'html' => { 'nodes_tree' => 1, 'floats' => 1, 'split' => 1, 'internal_links' => 1, 'simple_menu' => 1, 'move_index_entries_after_items' => 1, 'converter' => sub{Texinfo::Convert::HTML->converter(@_)}, }, 'texinfoxml' => { 'nodes_tree' => 1, 'converter' => sub{Texinfo::Convert::TexinfoXML->converter(@_)}, 'floats' => 1, }, 'texinfosxml' => { 'nodes_tree' => 1, 'converter' => sub{Texinfo::Convert::TexinfoSXML->converter(@_)}, 'floats' => 1, }, 'ixinsxml' => { 'nodes_tree' => 1, 'converter' => sub{Texinfo::Convert::IXINSXML->converter(@_)}, }, 'docbook' => { 'move_index_entries_after_items' => 1, 'converter' => sub{Texinfo::Convert::DocBook->converter(@_)}, }, 'pdf' => { 'texi2dvi_format' => 1, }, 'ps' => { 'texi2dvi_format' => 1, }, 'dvi' => { 'texi2dvi_format' => 1, }, 'dvipdf' => { 'texi2dvi_format' => 1, }, 'debugcount' => { 'nodes_tree' => 1, 'floats' => 1, 'converter' => sub{DebugTexinfo::DebugCount->converter(@_)}, }, 'debugtree' => { 'split' => 1, 'converter' => sub{DebugTexinfo::DebugTree->converter(@_)}, }, 'textcontent' => { 'converter' => sub{Texinfo::Convert::TextContent->converter(@_)}, }, 'rawtext' => { 'converter' => sub{Texinfo::Convert::Text->converter(@_)}, }, 'plaintexinfo' => { 'converter' => sub{Texinfo::Convert::PlainTexinfo->converter(@_)}, }, 'parse' => { }, 'structure' => { 'nodes_tree' => 1, 'floats' => 1, 'split' => 1, }, ); my $call_texi2dvi = 0; # previous_format should be in argument if there is a possibility of error. # as a fallback, the $format global variable is used. sub set_format($;$$) { my $set_format = shift; my $previous_format = shift; $previous_format = $format if (!defined($previous_format)); my $do_not_override_command_line = shift; my $new_format; if ($format_command_line_names{$set_format}) { $new_format = $format_command_line_names{$set_format}; } else { $new_format = $set_format; } my $expanded_format = $set_format; if (!$formats_table{$new_format}) { document_warn(sprintf(__("ignoring unrecognized TEXINFO_OUTPUT_FORMAT value `%s'\n"), $new_format)); $new_format = $previous_format; } else { if ($format_from_command_line and $do_not_override_command_line) { $new_format = $previous_format; } else { if ($formats_table{$new_format}->{'texi2dvi_format'}) { $call_texi2dvi = 1; push @texi2dvi_args, '--'.$new_format; $expanded_format = 'tex'; } $default_expanded_format = [$expanded_format] if ($Texinfo::Common::texinfo_output_formats{$expanded_format}); $format_from_command_line = 1 unless ($do_not_override_command_line); } } return $new_format; } sub set_global_format($) { my $set_format = shift; $format = set_format($set_format); } sub document_warn($) { return if (get_conf('NO_WARN')); my $text = shift; chomp ($text); warn(sprintf(__p("program name: warning: warning_message", "%s: warning: %s\n"), $real_command_name, $text)); } sub _exit($$) { my $error_count = shift; my $opened_files = shift; if ($error_count and $opened_files and !get_conf('FORCE')) { while (@$opened_files) { my $opened_file = shift (@$opened_files); unlink ($opened_file); } } exit (1) if ($error_count and (!get_conf('FORCE') or $error_count > get_conf('ERROR_LIMIT'))); } sub handle_errors($$$) { my $self = shift; my $error_count = shift; my $opened_files = shift; my ($errors, $new_error_count) = $self->errors(); $error_count += $new_error_count if ($new_error_count); foreach my $error_message (@$errors) { warn $error_message->{'error_line'} if ($error_message->{'type'} eq 'error' or !get_conf('NO_WARN')); } _exit($error_count, $opened_files); return $error_count; } sub _get_converter_default($) { my $option = shift; return $Texinfo::Convert::Converter::all_converters_defaults{$option} if (defined($Texinfo::Convert::Converter::all_converters_defaults{$option})); return undef; } sub makeinfo_help() { my $makeinfo_help = __("Usage: makeinfo [OPTION]... TEXINFO-FILE...\n") . __(" or: texi2any [OPTION]... TEXINFO-FILE...\n") ."\n". __("Translate Texinfo source documentation to various other formats, by default Info files suitable for reading online with Emacs or standalone GNU Info.\n") ."\n"; $makeinfo_help .= sprintf(__("General options: --document-language=STR locale to use in translating Texinfo keywords for the output document (default C). --error-limit=NUM quit after NUM errors (default %d). --force preserve output even if errors. --help display this help and exit. --no-validate suppress node cross-reference validation. --no-warn suppress warnings (but not errors). --conf-dir=DIR search also for initialization files in DIR. --init-file=FILE load FILE to modify the default behavior. -c, --set-customization-variable VAR=VAL set customization variable VAR to VAL. -v, --verbose explain what is being done. --version display version information and exit.\n"), get_conf('ERROR_LIMIT')) ."\n"; $makeinfo_help .= __("Output format selection (default is to produce Info): --docbook output Docbook XML rather than Info. --html output HTML rather than Info. --plaintext output plain text rather than Info. --xml output Texinfo XML rather than Info. --dvi, --dvipdf, --ps, --pdf call texi2dvi to generate given output.\n") ."\n"; $makeinfo_help .= __("General output options: -E, --macro-expand=FILE output macro-expanded source to FILE, ignoring any \@setfilename. --no-headers suppress node separators, Node: lines, and menus from Info output (thus producing plain text) or from HTML (thus producing shorter output). Also, if producing Info, write to standard output by default --no-split suppress any splitting of the output; generate only one output file. --[no-]number-sections output chapter and sectioning numbers; default is on. -o, --output=DEST output to DEST. With split output, create DEST as a directory and put the output files there. With non-split output, if DEST is already a directory or ends with a /, put the output file there. Otherwise, DEST names the output file.\n") ."\n"; $makeinfo_help .= sprintf(__("Options for Info and plain text: --disable-encoding do not output accented and special characters in Info output based on \@documentencoding. --enable-encoding override --disable-encoding (default). --fill-column=NUM break Info lines at NUM characters (default %d). --footnote-style=STYLE output footnotes in Info according to STYLE: `separate' to put them in their own node; `end' to put them at the end of the node, in which they are defined (this is the default). --paragraph-indent=VAL indent Info paragraphs by VAL spaces (default %d). If VAL is `none', do not indent; if VAL is `asis', preserve existing indentation. --split-size=NUM split Info files at size NUM (default %d).\n"), _get_converter_default('fillcolumn'), _get_converter_default('paragraphindent'), _get_converter_default('SPLIT_SIZE')) ."\n"; $makeinfo_help .= __("Options for HTML: --css-include=FILE include FILE in HTML <style> output; read stdin if FILE is -. --css-ref=URL generate CSS reference to URL. --internal-links=FILE produce list of internal links in FILE. --split=SPLIT split at SPLIT, where SPLIT may be `chapter', `section' or `node'. --transliterate-file-names use file names in ASCII transliteration. --node-files produce redirection files for nodes and anchors; default is set only if split.\n") ."\n"; $makeinfo_help .= __("Options for XML and Docbook: --output-indent=VAL does nothing, retained for compatibility.\n") ."\n"; $makeinfo_help .= __("Options for DVI/PS/PDF: --Xopt=OPT pass OPT to texi2dvi; can be repeated.\n") ."\n"; $makeinfo_help .= __("Input file options: --commands-in-node-names does nothing, retained for compatibility. -D VAR define the variable VAR, as with \@set. -I DIR append DIR to the \@include search path. -P DIR prepend DIR to the \@include search path. -U VAR undefine the variable VAR, as with \@clear.\n") ."\n"; $makeinfo_help .= __("Conditional processing in input: --ifdocbook process \@ifdocbook and \@docbook even if not generating Docbook. --ifhtml process \@ifhtml and \@html even if not generating HTML. --ifinfo process \@ifinfo even if not generating Info. --ifplaintext process \@ifplaintext even if not generating plain text. --iftex process \@iftex and \@tex. --ifxml process \@ifxml and \@xml. --no-ifdocbook do not process \@ifdocbook and \@docbook text. --no-ifhtml do not process \@ifhtml and \@html text. --no-ifinfo do not process \@ifinfo text. --no-ifplaintext do not process \@ifplaintext text. --no-iftex do not process \@iftex and \@tex text. --no-ifxml do not process \@ifxml and \@xml text. Also, for the --no-ifFORMAT options, do process \@ifnotFORMAT text.\n") ."\n"; $makeinfo_help .= __(" The defaults for the \@if... conditionals depend on the output format: if generating Docbook, --ifdocbook is on and the others are off; if generating HTML, --ifhtml is on and the others are off; if generating Info, --ifinfo is on and the others are off; if generating plain text, --ifplaintext is on and the others are off; if generating XML, --ifxml is on and the others are off.\n") ."\n"; $makeinfo_help .= __("Examples: makeinfo foo.texi write Info to foo's \@setfilename makeinfo --html foo.texi write HTML to \@setfilename makeinfo --xml foo.texi write Texinfo XML to \@setfilename makeinfo --docbook foo.texi write Docbook XML to \@setfilename makeinfo --plaintext foo.texi write plain text to standard output makeinfo --pdf foo.texi write PDF using texi2dvi makeinfo --html --no-headers foo.texi write html without node lines, menus makeinfo --number-sections foo.texi write Info with numbered sections makeinfo --no-split foo.texi write one Info file however big\n") ."\n"; $makeinfo_help .= __("Email bug reports to bug-texinfo\@gnu.org, general questions and discussion to help-texinfo\@gnu.org. Texinfo home page: http://www.gnu.org/software/texinfo/") ."\n"; return $makeinfo_help; } my $Xopt_arg_nr = 0; my $latex2html_file = 'latex2html.pm'; my $result_options = Getopt::Long::GetOptions ( 'help|h' => sub { print makeinfo_help(); exit 0; }, 'version|V' => sub {print "$real_command_name (GNU texinfo) $configured_version\n\n"; printf __("Copyright (C) %s Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.\n"), "2013"; exit 0;}, 'macro-expand|E=s' => sub { set_from_cmdline('MACRO_EXPAND', $_[1]); }, 'ifhtml!' => sub { set_expansion('html', $_[1]); }, 'ifinfo!' => sub { set_expansion('info', $_[1]); }, 'ifxml!' => sub { set_expansion('xml', $_[1]); }, 'ifdocbook!' => sub { set_expansion('docbook', $_[1]); }, 'iftex!' => sub { set_expansion('tex', $_[1]); }, 'ifplaintext!' => sub { set_expansion('plaintext', $_[1]); }, 'I=s' => sub { push @texi2dvi_args, ('-'.$_[0], $_[1]); push @include_dirs, split(/$quoted_path_separator/, $_[1]); }, 'conf-dir=s' => sub { push @conf_dirs, split(/$quoted_path_separator/, $_[1]); }, 'P=s' => sub { unshift @prepend_dirs, split(/$quoted_path_separator/, $_[1]); }, 'number-sections!' => sub { set_from_cmdline('NUMBER_SECTIONS', $_[1]); }, 'number-footnotes!' => sub { set_from_cmdline('NUMBER_FOOTNOTES', $_[1]); }, 'node-files!' => sub { set_from_cmdline('NODE_FILES', $_[1]); }, 'footnote-style=s' => sub { if ($_[1] eq 'end' or $_[1] eq 'separate') { set_from_cmdline('footnotestyle', $_[1]); } else { die sprintf(__("%s: --footnote-style arg must be `separate' or `end', not `%s'.\n"), $real_command_name, $_[1]); } }, 'split=s' => sub { my $split = $_[1]; my @messages = Texinfo::Common::warn_unknown_split($_[1], \&__); if (@messages) { foreach my $message (@messages) { document_warn($message); } $split = 'node'; } set_from_cmdline('SPLIT', $split); }, 'no-split' => sub { set_from_cmdline('SPLIT', ''); set_from_cmdline('SPLIT_SIZE', undef);}, 'headers!' => sub { set_from_cmdline('HEADERS', $_[1]); set_from_cmdline('SHOW_MENU', $_[1]); $format = 'plaintext' if (!$_[1] and $format eq 'info'); }, 'output|out|o=s' => sub { my $var = 'OUTFILE'; if ($_[1] =~ m:/$: or -d $_[1]) { $var = 'SUBDIR'; } set_from_cmdline($var, $_[1]); set_from_cmdline('OUT', $_[1]); push @texi2dvi_args, '-o', $_[1]; }, 'no-validate|no-pointer-validate' => sub { set_from_cmdline('novalidate',$_[1]); $parser_default_options->{'novalidate'} = $_[1]; }, 'no-warn' => sub { set_from_cmdline('NO_WARN', $_[1]); }, 'verbose|v!' => sub {set_from_cmdline('VERBOSE', $_[1]); push @texi2dvi_args, '--verbose'; }, 'document-language=s' => sub { set_from_cmdline('documentlanguage', $_[1]); $parser_default_options->{'documentlanguage'} = $_[1]; my @messages = Texinfo::Common::warn_unknown_language($_[1], \&__); foreach my $message (@messages) { document_warn($message); } }, 'D=s' => sub {$parser_default_options->{'values'}->{$_[1]} = 1;}, 'U=s' => sub {delete $parser_default_options->{'values'}->{$_[1]};}, 'init-file=s' => sub { locate_and_load_init_file($_[1], [ @conf_dirs, @program_init_dirs ]); }, 'set-customization-variable|c=s' => sub { my $var_val = $_[1]; if ($var_val =~ s/^(\w+)\s*=?\s*//) { my $var = $1; my $value = $var_val; if ($value =~ /^undef$/i) { $value = undef; } # special case, this is a pseudo format for debug if ($var eq 'TEXINFO_OUTPUT_FORMAT') { $format = set_format($value, $format, 1); } elsif ($var eq 'TEXI2HTML') { $format = set_format('html'); $parser_default_options->{'values'}->{'texi2html'} = 1; } set_from_cmdline($var, $value); # FIXME do that here or when all command line options are processed? if ($var eq 'L2H' and get_conf('L2H')) { locate_and_load_init_file($latex2html_file, [ @conf_dirs, @program_init_dirs ]); } } }, 'css-include=s' => \@css_files, 'css-ref=s' => \@css_refs, 'transliterate-file-names!' => sub {set_from_cmdline('TRANSLITERATE_FILE_NAMES', $_[1]);}, 'error-limit|e=i' => sub { set_from_cmdline('ERROR_LIMIT', $_[1]); }, 'split-size=s' => sub {set_from_cmdline('SPLIT_SIZE', $_[1])}, 'paragraph-indent|p=s' => sub { my $value = $_[1]; if ($value =~ /^([0-9]+)$/ or $value eq 'none' or $value eq 'asis') { set_from_cmdline('paragraphindent', $_[1]); } else { die sprintf(__("%s: --paragraph-indent arg must be numeric/`none'/`asis', not `%s'.\n"), $real_command_name, $value); } }, 'fill-column|f=i' => sub {set_from_cmdline('FILLCOLUMN',$_[1]);}, 'enable-encoding' => sub {set_from_cmdline('ENABLE_ENCODING',$_[1]); $parser_default_options->{'ENABLE_ENCODING'} = $_[1];}, 'disable-encoding' => sub {set_from_cmdline('ENABLE_ENCODING', 0); $parser_default_options->{'ENABLE_ENCODING'} = 0;}, 'internal-links=s' => sub {set_from_cmdline('INTERNAL_LINKS', $_[1]);}, 'force|F' => sub {set_from_cmdline('FORCE', $_[1]);}, 'commands-in-node-names' => sub { ;}, 'output-indent=i' => sub { ;}, 'reference-limit=i' => sub { ;}, 'Xopt=s' => sub {push @texi2dvi_args, $_[1]; $Xopt_arg_nr++}, 'silent|quiet' => sub {set_from_cmdline('SILENT', $_[1]); push @texi2dvi_args, '--'.$_[0];}, 'plaintext' => sub {$format = $_[0];}, 'html' => sub {$format = set_format($_[0]);}, 'info' => sub {$format = set_format($_[0]);}, 'docbook' => sub {$format = set_format($_[0]);}, 'xml' => sub {$format = set_format($_[0]);}, 'dvi' => sub {$format = set_format($_[0]);}, 'dvipdf' => sub {$format = set_format($_[0]);}, 'ps' => sub {$format = set_format($_[0]);}, 'pdf' => sub {$format = set_format($_[0]);}, 'debug=i' => sub {set_from_cmdline('DEBUG', $_[1]); $parser_default_options->{'DEBUG'} = $_[1]; push @texi2dvi_args, '--'.$_[0]; }, ); exit 1 if (!$result_options); # For tests, set some strings to values not changing with releases my %test_conf = ( 'PACKAGE_VERSION' => '', 'PACKAGE' => 'texinfo', 'PACKAGE_NAME' => 'texinfo', 'PACKAGE_AND_VERSION' => 'texinfo', 'PACKAGE_URL' => 'http://www.gnu.org/software/texinfo/', # maybe don't set this? 'PROGRAM' => 'texi2any', ); if (get_conf('TEST')) { foreach my $conf (keys (%test_conf)) { $converter_default_options->{$conf} = $test_conf{$conf}; } } my %format_names = ( 'info' => 'Info', 'html' => 'HTML', 'docbook' => 'DocBook', 'texinfoxml' => 'Texinfo XML', 'plaintext' => 'Plain Text', ); sub format_name($) { my $format = shift; if ($format_names{$format}) { return $format_names{$format}; } else { return $format; } } if (defined($ENV{'TEXINFO_OUTPUT_FORMAT'}) and $ENV{'TEXINFO_OUTPUT_FORMAT'} ne '') { $format = set_format($ENV{'TEXINFO_OUTPUT_FORMAT'}, $format, 1); } if ($call_texi2dvi) { if (defined(get_conf('OUT')) and @ARGV > 1) { die sprintf(__('%s: when generating %s, only one input FILE may be specified with -o'."\n"), $real_command_name, format_name($format)); } } elsif($Xopt_arg_nr) { document_warn(__('--Xopt option without printed output')); } my %tree_transformations; if (get_conf('TREE_TRANSFORMATIONS')) { my @transformations = split /,/, get_conf('TREE_TRANSFORMATIONS'); foreach my $transformation (@transformations) { if (Texinfo::Common::valid_tree_transformation($transformation)) { $tree_transformations{$transformation} = 1; } else { document_warn(sprintf(__('unknown tree transformation %s'), $transformation)); } } } if (get_conf('SPLIT') and !$formats_table{$format}->{'split'}) { document_warn(sprintf(__('ignoring splitting for format %s'), format_name($format))); set_from_cmdline('SPLIT', ''); } foreach my $expanded_format (@{$default_expanded_format}) { push @{$parser_default_options->{'expanded_formats'}}, $expanded_format unless (grep {$_ eq $expanded_format} @{$parser_default_options->{'expanded_formats'}}); } my $converter_class; my %converter_defaults; # This gets the class right, even though there is a sub... if (defined($formats_table{$format}->{'converter'})) { $converter_class = ref(&{$formats_table{$format}->{'converter'}}); %converter_defaults = $converter_class->converter_defaults(); } # FIXME should this be set when the --set is set too? The corresponding # code is ready above, but commented out. # using no warnings is wrong, but a way to avoid a spurious warning. no warnings 'once'; foreach my $parser_settable_option ( keys(%Texinfo::Parser::default_customization_values)) { if (defined(get_conf($parser_settable_option))) { $parser_default_options->{$parser_settable_option} = get_conf($parser_settable_option); } elsif (defined($converter_class) and defined($converter_defaults{$parser_settable_option})) { $parser_default_options->{$parser_settable_option} = $converter_defaults{$parser_settable_option}; } } ## using no warnings is wrong, but a way to avoid a spurious warning. #no warnings 'once'; # The configuration options are upper-cased when considered as # customization variables, and lower-cased when passed to the Parser foreach my $parser_option (map {uc($_)} (keys (%Texinfo::Common::default_parser_state_configuration))) { $parser_default_options->{lc($parser_option)} = get_conf($parser_option) if (defined(get_conf($parser_option))); } # Main processing, process all the files given on the command line my @input_files = @ARGV; # use STDIN if not a tty, like makeinfo does @input_files = ('-') if (!scalar(@input_files) and !-t STDIN); die sprintf(__("%s: missing file argument.\n"), $real_command_name) .sprintf(__("Try `%s --help' for more information.\n"), $real_command_name) unless (scalar(@input_files) >= 1); my $file_number = -1; my @opened_files = (); my %unclosed_files; my $error_count = 0; # main processing while(@input_files) { $file_number++; my $input_file_arg = shift(@input_files); my $input_file_name; # try to concatenate with different suffixes. The last suffix is '' # such that the plain file name is checked. foreach my $suffix (@input_file_suffixes) { if (-e $input_file_arg.$suffix) { $input_file_name = $input_file_arg.$suffix; last; } } # in case no file was found, still set the file name $input_file_name = $input_file_arg if (!defined($input_file_name)); my ($input_filename, $input_directory, $suffix) = fileparse($input_file_name); if (!defined($input_directory) or $input_directory eq '') { $input_directory = $curdir; } my $input_file_base = $input_file_name; $input_file_base =~ s/\.te?x(i|info)?$//; my @htmlxref_dirs = @language_config_dirs; if ($input_directory ne '.' and $input_directory ne '') { unshift @htmlxref_dirs, $input_directory; } unshift @htmlxref_dirs, '.'; my @texinfo_htmlxref_files = locate_init_file ($texinfo_htmlxref, \@htmlxref_dirs, 1); my $parser_options = { %$parser_default_options }; $parser_options->{'include_directories'} = [@include_dirs]; my @prependended_include_directories = ('.'); push @prependended_include_directories, $input_directory if ($input_directory ne '.'); unshift @{$parser_options->{'include_directories'}}, @prependended_include_directories; unshift @{$parser_options->{'include_directories'}}, @prepend_dirs; my $parser = Texinfo::Parser::parser($parser_options); my $tree = $parser->parse_texi_file($input_file_name); if (!defined($tree) or $format eq 'parse') { handle_errors($parser, $error_count, \@opened_files); next; } if (defined(get_conf('DUMP_TREE')) or (get_conf('DEBUG') and get_conf('DEBUG') >= 10)) { # this is very wrong, but a way to avoid a spurious warning. no warnings 'once'; local $Data::Dumper::Purity = 1; no warnings 'once'; local $Data::Dumper::Indent = 1; print STDERR Data::Dumper->Dump([$tree]); } if ($tree_transformations{'fill_gaps_in_sectioning'}) { my ($filled_contents, $added_sections) = Texinfo::Structuring::fill_gaps_in_sectioning($tree); if (!defined($filled_contents)) { document_warn(__("fill_gaps_in_sectioning transformation return no result. No section?")); } else { $tree->{'contents'} = $filled_contents; } } if ((get_conf('SIMPLE_MENU') and $formats_table{$format}->{'simple_menu'}) or $tree_transformations{'simple_menus'}) { $parser->Texinfo::Structuring::set_menus_to_simple_menu(); } if (defined(get_conf('MACRO_EXPAND')) and $file_number == 0) { my $texinfo_text = Texinfo::Convert::Texinfo::convert ($tree, 1); #print STDERR "$texinfo_text\n"; my $macro_expand_file = get_conf('MACRO_EXPAND'); my $macro_expand_fh = Texinfo::Common::open_out($parser, $macro_expand_file, $parser->{'INPUT_PERL_ENCODING'}); my $error_macro_expand_file; if (defined($macro_expand_fh)) { print $macro_expand_fh $texinfo_text; if (!close($macro_expand_fh)) { document_warn(sprintf(__("error on closing macro expand file %s: %s\n"), $macro_expand_file, $!)); $error_macro_expand_file = 1; } $parser->Texinfo::Convert::Converter::register_close_file($macro_expand_file); } else { document_warn(sprintf(__("could not open %s for writing: %s\n"), $macro_expand_file, $!)); $error_macro_expand_file = 1; } if ($error_macro_expand_file) { $error_count++; _exit($error_count, \@opened_files); } } if (get_conf('DUMP_TEXI') or $formats_table{$format}->{'texi2dvi_format'}) { handle_errors($parser, $error_count, \@opened_files); next; } if ($formats_table{$format}->{'move_index_entries_after_items'} or $tree_transformations{'move_index_entries_after_items'}) { Texinfo::Common::move_index_entries_after_items_in_tree($tree); } if ($tree_transformations{'insert_nodes_for_sectioning_commands'}) { my ($modified_contents, $added_nodes) = Texinfo::Structuring::insert_nodes_for_sectioning_commands($parser, $tree); if (!defined($modified_contents)) { document_warn(__( "insert_nodes_for_sectioning_commands transformation return no result. No section?")); } else { $tree->{'contents'} = $modified_contents; } } Texinfo::Structuring::associate_internal_references($parser); # every format needs the sectioning structure # FIXME this adjusts the level of sectioning commands. Maybe should be # done before dumping the tree? my $structure = Texinfo::Structuring::sectioning_structure($parser, $tree); if ($tree_transformations{'complete_tree_nodes_menus'}) { Texinfo::Structuring::complete_tree_nodes_menus($parser, $tree); } if ($tree_transformations{'indent_menu_descriptions'}) { Texinfo::Convert::Plaintext::indent_menu_descriptions(undef, $parser); } if ($tree_transformations{'regenerate_master_menu'}) { Texinfo::Structuring::regenerate_master_menu($parser); } # this can be done for every format, since information is already gathered my $floats = $parser->floats_information(); my $top_node; if ($formats_table{$format}->{'nodes_tree'}) { $top_node = Texinfo::Structuring::nodes_tree($parser); } if ($formats_table{$format}->{'floats'}) { Texinfo::Structuring::number_floats($floats); } $error_count = handle_errors($parser, $error_count, \@opened_files); if ($format eq 'structure') { next; } if ($file_number != 0) { delete $cmdline_options->{'OUTFILE'} if exists($cmdline_options->{'OUTFILE'}); delete $cmdline_options->{'OUT'} if exists($cmdline_options->{'OUT'}); delete $cmdline_options->{'PREFIX'} if exists($cmdline_options->{'PREFIX'}); delete $cmdline_options->{'SUBDIR'} if (exists($cmdline_options->{'SUBDIR'}) and get_conf('SPLIT')); } my $converter_options = { %$converter_default_options, %$cmdline_options, %$Texinfo::Config::options }; $converter_options->{'parser'} = $parser; $converter_options->{'output_format'} = $format; $converter_options->{'htmlxref_files'} = \@texinfo_htmlxref_files; my $converter = &{$formats_table{$format}->{'converter'}}($converter_options); $converter->output($tree); push @opened_files, $converter->converter_opened_files(); handle_errors($converter, $error_count, \@opened_files); my $converter_unclosed_files = $converter->converter_unclosed_files(); if ($converter_unclosed_files) { foreach my $unclosed_file (keys(%$converter_unclosed_files)) { if ($unclosed_file eq '-') { $unclosed_files{$unclosed_file} = $converter_unclosed_files->{$unclosed_file}; } else { if (!close($converter_unclosed_files->{$unclosed_file})) { warn(sprintf(__("%s: error on closing %s: %s\n"), $real_command_name, $unclosed_file, $!)); $error_count++; _exit($error_count, \@opened_files); } } } } if (defined(get_conf('INTERNAL_LINKS')) and $file_number == 0 and $formats_table{$format}->{'internal_links'}) { my $internal_links_text = $converter->output_internal_links(); # always create a file, even if empty. $internal_links_text = '' if (!defined($internal_links_text)); my $internal_links_file = get_conf('INTERNAL_LINKS'); my $internal_links_fh = Texinfo::Common::open_out($converter, $internal_links_file); my $error_internal_links_file; if (defined ($internal_links_fh)) { print $internal_links_fh $internal_links_text; if (!close ($internal_links_fh)) { warn(sprintf(__("%s: error on closing internal links file %s: %s\n"), $real_command_name, $internal_links_file, $!)); $error_internal_links_file = 1; } $converter->register_close_file($internal_links_file); } else { warn(sprintf(__("%s: could not open %s for writing: %s\n"), $real_command_name, $internal_links_file, $!)); $error_internal_links_file = 1; } if ($error_internal_links_file) { $error_count++; _exit($error_count, \@opened_files); } } if (defined(get_conf('SORT_ELEMENT_COUNT')) and $file_number == 0) { my $converter_element_count_file = Texinfo::Convert::TextContent->converter($converter_options); my $use_sections = (! $formats_table{$format}->{'nodes_tree'} or (defined($converter->get_conf('USE_NODES')) and !$converter->get_conf('USE_NODES'))); my ($sorted_name_counts_array, $sort_element_count_text) = Texinfo::Convert::Converter::sort_element_counts( $converter_element_count_file, $tree, $use_sections, get_conf('SORT_ELEMENT_COUNT_WORDS')); my $sort_element_count_file = get_conf('SORT_ELEMENT_COUNT'); my $sort_element_count_fh = Texinfo::Common::open_out($converter, $sort_element_count_file); my $error_sort_element_count_file; if (defined ($sort_element_count_fh)) { print $sort_element_count_fh $sort_element_count_text; if (!close ($sort_element_count_fh)) { warn(sprintf(__("%s: error on closing internal links file %s: %s\n"), $real_command_name, $sort_element_count_file, $!)); $error_sort_element_count_file = 1; } $converter->register_close_file($sort_element_count_file); } else { warn(sprintf(__("%s: could not open %s for writing: %s\n"), $real_command_name, $sort_element_count_file, $!)); $error_sort_element_count_file = 1; } if ($error_sort_element_count_file) { $error_count++; _exit($error_count, \@opened_files); } } } foreach my $unclosed_file (keys(%unclosed_files)) { if (!close($unclosed_files{$unclosed_file})) { warn(sprintf(__("%s: error on closing %s: %s\n"), $real_command_name, $unclosed_file, $!)); $error_count++; _exit($error_count, \@opened_files); } } if ($call_texi2dvi) { if (get_conf('DEBUG') or get_conf('VERBOSE')) { print STDERR "EXEC ".join('|', (get_conf('TEXI2DVI'), @texi2dvi_args, @ARGV)) ."\n"; } exec { get_conf('TEXI2DVI') } (get_conf('TEXI2DVI'), @texi2dvi_args, @ARGV); } 1;
Close