51 lines
584 B
Go
51 lines
584 B
Go
|
package main
|
||
|
|
||
|
import (
|
||
|
"flag"
|
||
|
"fmt"
|
||
|
"io"
|
||
|
"os"
|
||
|
"strings"
|
||
|
)
|
||
|
|
||
|
var fat_table []string = []string{
|
||
|
"<",
|
||
|
">",
|
||
|
":",
|
||
|
"\"",
|
||
|
"/",
|
||
|
"\\",
|
||
|
"|",
|
||
|
"?",
|
||
|
"*",
|
||
|
}
|
||
|
|
||
|
func fatten(stdin bool, data string) {
|
||
|
for _, i := range fat_table {
|
||
|
data = strings.ReplaceAll(data, i, "_")
|
||
|
}
|
||
|
if stdin {
|
||
|
fmt.Print(data)
|
||
|
} else {
|
||
|
fmt.Println(data)
|
||
|
}
|
||
|
}
|
||
|
|
||
|
func main() {
|
||
|
flag.Parse()
|
||
|
if len(flag.Args()) > 0 {
|
||
|
for _, i := range flag.Args() {
|
||
|
fatten(false, i)
|
||
|
}
|
||
|
} else {
|
||
|
stdin, err := io.ReadAll(os.Stdin)
|
||
|
if err != nil {
|
||
|
panic(err)
|
||
|
}
|
||
|
|
||
|
fatten(true, string(stdin))
|
||
|
}
|
||
|
|
||
|
os.Exit(0)
|
||
|
}
|