__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
#!/usr/bin/env perl
# SPDX-License-Identifier: GPL-2.0
#
# Clean a text file -- or directory of text files -- of stealth whitespace.
# WARNING: this can be a highly destructive operation. Use with caution.
#
use warnings;
use bytes;
use File::Basename;
# Default options
$max_width = 79;
# Clean up space-tab sequences, either by removing spaces or
# replacing them with tabs.
sub clean_space_tabs($)
{
no bytes; # Tab alignment depends on characters
my($li) = @_;
my($lo) = '';
my $pos = 0;
my $nsp = 0;
my($i, $c);
for ($i = 0; $i < length($li); $i++) {
$c = substr($li, $i, 1);
if ($c eq "\t") {
my $npos = ($pos+$nsp+8) & ~7;
my $ntab = ($npos >> 3) - ($pos >> 3);
$lo .= "\t" x $ntab;
$pos = $npos;
$nsp = 0;
} elsif ($c eq "\n" || $c eq "\r") {
$lo .= " " x $nsp;
$pos += $nsp;
$nsp = 0;
$lo .= $c;
$pos = 0;
} elsif ($c eq " ") {
$nsp++;
} else {
$lo .= " " x $nsp;
$pos += $nsp;
$nsp = 0;
$lo .= $c;
$pos++;
}
}
$lo .= " " x $nsp;
return $lo;
}
# Compute the visual width of a string
sub strwidth($) {
no bytes; # Tab alignment depends on characters
my($li) = @_;
my($c, $i);
my $pos = 0;
my $mlen = 0;
for ($i = 0; $i < length($li); $i++) {
$c = substr($li,$i,1);
if ($c eq "\t") {
$pos = ($pos+8) & ~7;
} elsif ($c eq "\n") {
$mlen = $pos if ($pos > $mlen);
$pos = 0;
} else {
$pos++;
}
}
$mlen = $pos if ($pos > $mlen);
return $mlen;
}
$name = basename($0);
@files = ();
while (defined($a = shift(@ARGV))) {
if ($a =~ /^-/) {
if ($a eq '-width' || $a eq '-w') {
$max_width = shift(@ARGV)+0;
} else {
print STDERR "Usage: $name [-width #] files...\n";
exit 1;
}
} else {
push(@files, $a);
}
}
foreach $f ( @files ) {
print STDERR "$name: $f\n";
if (! -f $f) {
print STDERR "$f: not a file\n";
next;
}
if (!open(FILE, '+<', $f)) {
print STDERR "$name: Cannot open file: $f: $!\n";
next;
}
binmode FILE;
# First, verify that it is not a binary file; consider any file
# with a zero byte to be a binary file. Is there any better, or
# additional, heuristic that should be applied?
$is_binary = 0;
while (read(FILE, $data, 65536) > 0) {
if ($data =~ /\0/) {
$is_binary = 1;
last;
}
}
if ($is_binary) {
print STDERR "$name: $f: binary file\n";
next;
}
seek(FILE, 0, 0);
$in_bytes = 0;
$out_bytes = 0;
$blank_bytes = 0;
@blanks = ();
@lines = ();
$lineno = 0;
while ( defined($line = <FILE>) ) {
$lineno++;
$in_bytes += length($line);
$line =~ s/[ \t\r]*$//; # Remove trailing spaces
$line = clean_space_tabs($line);
if ( $line eq "\n" ) {
push(@blanks, $line);
$blank_bytes += length($line);
} else {
push(@lines, @blanks);
$out_bytes += $blank_bytes;
push(@lines, $line);
$out_bytes += length($line);
@blanks = ();
$blank_bytes = 0;
}
$l_width = strwidth($line);
if ($max_width && $l_width > $max_width) {
print STDERR
"$f:$lineno: line exceeds $max_width characters ($l_width)\n";
}
}
# Any blanks at the end of the file are discarded
if ($in_bytes != $out_bytes) {
# Only write to the file if changed
seek(FILE, 0, 0);
print FILE @lines;
if ( !defined($where = tell(FILE)) ||
!truncate(FILE, $where) ) {
die "$name: Failed to truncate modified file: $f: $!\n";
}
}
close(FILE);
}
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| atomic | Folder | 0755 |
|
|
| basic | Folder | 0755 |
|
|
| clang-tools | Folder | 0755 |
|
|
| coccinelle | Folder | 0755 |
|
|
| dtc | Folder | 0755 |
|
|
| dummy-tools | Folder | 0755 |
|
|
| gcc-plugins | Folder | 0755 |
|
|
| gdb | Folder | 0755 |
|
|
| gendwarfksyms | Folder | 0755 |
|
|
| genksyms | Folder | 0755 |
|
|
| include | Folder | 0755 |
|
|
| ipe | Folder | 0755 |
|
|
| kconfig | Folder | 0755 |
|
|
| ksymoops | Folder | 0755 |
|
|
| mod | Folder | 0755 |
|
|
| package | Folder | 0755 |
|
|
| selinux | Folder | 0755 |
|
|
| tracing | Folder | 0755 |
|
|
| Kbuild.include | File | 9.88 KB | 0644 |
|
| Kconfig.include | File | 3.27 KB | 0644 |
|
| Lindent | File | 502 B | 0755 |
|
| Makefile | File | 2.08 KB | 0644 |
|
| Makefile.asm-headers | File | 3.38 KB | 0644 |
|
| Makefile.autofdo | File | 808 B | 0644 |
|
| Makefile.btf | File | 1.13 KB | 0644 |
|
| Makefile.build | File | 16.76 KB | 0644 |
|
| Makefile.clang | File | 1.66 KB | 0644 |
|
| Makefile.clean | File | 1.88 KB | 0644 |
|
| Makefile.compiler | File | 3.49 KB | 0644 |
|
| Makefile.debug | File | 1.36 KB | 0644 |
|
| Makefile.defconf | File | 1.04 KB | 0644 |
|
| Makefile.dtbinst | File | 1.03 KB | 0644 |
|
| Makefile.dtbs | File | 4.89 KB | 0644 |
|
| Makefile.extrawarn | File | 7.81 KB | 0644 |
|
| Makefile.gcc-plugins | File | 2.59 KB | 0644 |
|
| Makefile.headersinst | File | 2.88 KB | 0644 |
|
| Makefile.host | File | 6.02 KB | 0644 |
|
| Makefile.kasan | File | 3.67 KB | 0644 |
|
| Makefile.kcov | File | 333 B | 0644 |
|
| Makefile.kcsan | File | 1004 B | 0644 |
|
| Makefile.kmsan | File | 208 B | 0644 |
|
| Makefile.lib | File | 20.62 KB | 0644 |
|
| Makefile.modfinal | File | 2.77 KB | 0644 |
|
| Makefile.modinst | File | 4.04 KB | 0644 |
|
| Makefile.modpost | File | 4.85 KB | 0644 |
|
| Makefile.package | File | 9.27 KB | 0644 |
|
| Makefile.propeller | File | 1.45 KB | 0644 |
|
| Makefile.randstruct | File | 511 B | 0644 |
|
| Makefile.ubsan | File | 984 B | 0644 |
|
| Makefile.userprogs | File | 1.59 KB | 0644 |
|
| Makefile.vdsoinst | File | 1.06 KB | 0644 |
|
| Makefile.vmlinux | File | 3.32 KB | 0644 |
|
| Makefile.vmlinux_o | File | 3.37 KB | 0644 |
|
| as-version.sh | File | 2.03 KB | 0755 |
|
| asn1_compiler | File | 34.37 KB | 0755 |
|
| asn1_compiler.c | File | 35.32 KB | 0644 |
|
| bloat-o-meter | File | 3.77 KB | 0755 |
|
| bootgraph.pl | File | 5.64 KB | 0755 |
|
| bpf_doc.py | File | 33.46 KB | 0755 |
|
| build-version | File | 177 B | 0755 |
|
| cc-can-link.sh | File | 166 B | 0755 |
|
| cc-version.sh | File | 1.36 KB | 0755 |
|
| check-git | File | 298 B | 0755 |
|
| check-sysctl-docs | File | 3.66 KB | 0755 |
|
| check-uapi.sh | File | 15.05 KB | 0755 |
|
| check-variable-fonts.sh | File | 4.65 KB | 0755 |
|
| check_extable.sh | File | 4.93 KB | 0755 |
|
| checkdeclares.pl | File | 1.1 KB | 0755 |
|
| checkincludes.pl | File | 1.94 KB | 0755 |
|
| checkkconfigsymbols.py | File | 15.75 KB | 0755 |
|
| checkpatch.pl | File | 233.11 KB | 0755 |
|
| checkstack.pl | File | 5.96 KB | 0755 |
|
| checksyscalls.sh | File | 7.51 KB | 0755 |
|
| checktransupdate.py | File | 8.91 KB | 0755 |
|
| checkversion.pl | File | 2.16 KB | 0755 |
|
| cleanfile | File | 3.46 KB | 0755 |
|
| cleanpatch | File | 5.06 KB | 0755 |
|
| coccicheck | File | 7.79 KB | 0755 |
|
| config | File | 4.78 KB | 0755 |
|
| const_structs.checkpatch | File | 1.59 KB | 0644 |
|
| decode_stacktrace.sh | File | 8.49 KB | 0755 |
|
| decodecode | File | 4.86 KB | 0755 |
|
| depmod.sh | File | 723 B | 0755 |
|
| dev-needs.sh | File | 6.07 KB | 0755 |
|
| diffconfig | File | 4.12 KB | 0755 |
|
| documentation-file-ref-check | File | 5.67 KB | 0755 |
|
| extract-ikconfig | File | 1.74 KB | 0755 |
|
| extract-module-sig.pl | File | 3.66 KB | 0755 |
|
| extract-sys-certs.pl | File | 3.75 KB | 0755 |
|
| extract-vmlinux | File | 1.66 KB | 0755 |
|
| extract_xc3028.pl | File | 44.62 KB | 0755 |
|
| faddr2line | File | 10.8 KB | 0755 |
|
| file-size.sh | File | 86 B | 0755 |
|
| find-unused-docs.sh | File | 1.27 KB | 0755 |
|
| gcc-x86_32-has-stack-protector.sh | File | 405 B | 0755 |
|
| gcc-x86_64-has-stack-protector.sh | File | 195 B | 0755 |
|
| gen-randstruct-seed.sh | File | 228 B | 0755 |
|
| gen_packed_field_checks.c | File | 1.19 KB | 0644 |
|
| generate_builtin_ranges.awk | File | 15.3 KB | 0755 |
|
| generate_initcall_order.pl | File | 5.95 KB | 0755 |
|
| generate_rust_analyzer.py | File | 6.17 KB | 0755 |
|
| generate_rust_target | File | 522.16 KB | 0755 |
|
| generate_rust_target.rs | File | 8.57 KB | 0644 |
|
| get_abi.pl | File | 25.36 KB | 0755 |
|
| get_dvb_firmware | File | 24.54 KB | 0755 |
|
| get_feat.pl | File | 14.61 KB | 0755 |
|
| get_maintainer.pl | File | 67.87 KB | 0755 |
|
| gfp-translate | File | 2.08 KB | 0755 |
|
| git.orderFile | File | 564 B | 0644 |
|
| head-object-list.txt | File | 1.28 KB | 0644 |
|
| headerdep.pl | File | 3.5 KB | 0755 |
|
| headers_install.sh | File | 2.71 KB | 0755 |
|
| insert-sys-cert | File | 21.66 KB | 0755 |
|
| insert-sys-cert.c | File | 13.08 KB | 0644 |
|
| install.sh | File | 1.06 KB | 0755 |
|
| jobserver-exec | File | 2.56 KB | 0755 |
|
| kallsyms | File | 21.82 KB | 0755 |
|
| kallsyms.c | File | 17.7 KB | 0644 |
|
| kernel-doc | File | 77.71 KB | 0755 |
|
| ld-version.sh | File | 1.82 KB | 0755 |
|
| leaking_addresses.pl | File | 14.59 KB | 0755 |
|
| link-vmlinux.sh | File | 7.59 KB | 0755 |
|
| macro_checker.py | File | 4.1 KB | 0755 |
|
| make_fit.py | File | 10.45 KB | 0755 |
|
| makelst | File | 808 B | 0755 |
|
| markup_oops.pl | File | 7.92 KB | 0755 |
|
| min-tool-version.sh | File | 630 B | 0755 |
|
| misc-check | File | 509 B | 0755 |
|
| mkcompile_h | File | 642 B | 0755 |
|
| mksysmap | File | 2.01 KB | 0755 |
|
| mkuboot.sh | File | 414 B | 0755 |
|
| module-common.c | File | 480 B | 0644 |
|
| module.lds | File | 845 B | 0644 |
|
| module.lds.S | File | 1.67 KB | 0644 |
|
| modules-check.sh | File | 443 B | 0755 |
|
| nsdeps | File | 1.56 KB | 0644 |
|
| objdiff | File | 2.83 KB | 0755 |
|
| objdump-func | File | 848 B | 0755 |
|
| orc_hash.sh | File | 316 B | 0644 |
|
| pahole-version.sh | File | 269 B | 0755 |
|
| parse-maintainers.pl | File | 4.54 KB | 0755 |
|
| patch-kernel | File | 9.95 KB | 0755 |
|
| profile2linkerlist.pl | File | 414 B | 0755 |
|
| prune-kernel | File | 912 B | 0755 |
|
| recordmcount.c | File | 17.51 KB | 0644 |
|
| recordmcount.h | File | 19.37 KB | 0644 |
|
| recordmcount.pl | File | 17.34 KB | 0755 |
|
| relocs_check.sh | File | 717 B | 0755 |
|
| remove-stale-files | File | 1.08 KB | 0755 |
|
| rust_is_available.sh | File | 10.18 KB | 0755 |
|
| rust_is_available_bindgen_0_66.h | File | 54 B | 0644 |
|
| rust_is_available_bindgen_libclang.h | File | 91 B | 0644 |
|
| rust_is_available_bindgen_libclang_concat.h | File | 69 B | 0644 |
|
| rust_is_available_test.py | File | 20.35 KB | 0755 |
|
| rustc-llvm-version.sh | File | 482 B | 0755 |
|
| rustc-version.sh | File | 598 B | 0755 |
|
| rustdoc_test_builder.rs | File | 3.25 KB | 0644 |
|
| rustdoc_test_gen.rs | File | 9.47 KB | 0644 |
|
| setlocalversion | File | 5.2 KB | 0755 |
|
| show_delta | File | 3.04 KB | 0755 |
|
| sign-file | File | 26.12 KB | 0755 |
|
| sign-file.c | File | 10.4 KB | 0644 |
|
| sorttable | File | 22.28 KB | 0755 |
|
| sorttable.c | File | 22.86 KB | 0644 |
|
| spdxcheck-test.sh | File | 284 B | 0644 |
|
| spdxcheck.py | File | 15.73 KB | 0755 |
|
| spdxexclude | File | 417 B | 0644 |
|
| spelling.txt | File | 35.64 KB | 0644 |
|
| sphinx-pre-install | File | 25.11 KB | 0755 |
|
| split-man.pl | File | 604 B | 0755 |
|
| ssl-common.h | File | 678 B | 0644 |
|
| stackdelta | File | 1.84 KB | 0755 |
|
| stackusage | File | 794 B | 0755 |
|
| subarch.include | File | 658 B | 0644 |
|
| syscall.tbl | File | 16.99 KB | 0644 |
|
| syscallhdr.sh | File | 1.89 KB | 0755 |
|
| syscallnr.sh | File | 1.45 KB | 0755 |
|
| syscalltbl.sh | File | 1.82 KB | 0755 |
|
| tags.sh | File | 11.25 KB | 0755 |
|
| target.json | File | 513 B | 0644 |
|
| tools-support-relr.sh | File | 726 B | 0755 |
|
| unifdef.c | File | 34.84 KB | 0644 |
|
| ver_linux | File | 2.59 KB | 0755 |
|
| verify_builtin_ranges.awk | File | 9.12 KB | 0755 |
|
| xen-hypercalls.sh | File | 386 B | 0755 |
|
| xz_wrap.sh | File | 3.44 KB | 0755 |
|