xcmd

package
v0.3.54 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 21, 2024 License: BSD-3-Clause-Clear Imports: 13 Imported by: 0

Documentation

Overview

运行CMD命令 此处的命令需要在Linux下执行,请注意

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Audio2times

func Audio2times(filepath string) (uint, error)

根据音频获取音频时长,返回单位:毫秒 内部会调用Video2times命令中的ffmpeg来获取音频时长

filepath	视频地址[绝对路径]

func CheckCommand added in v0.2.51

func CheckCommand(name ...string) error

检测命令信息

name	待检测命令

func Exec

func Exec(name string, arg ...string) (string, error)

Exec 执行Shell命令并等待结果输出【避免僵尸进程】

如果要使用管道进行输出,则需要使用bash进行嵌套,如:

xgotool.Exec("bash", "-c", "ps aux | grep go")

name	命令参数
arg...	参数列表

func File2type

func File2type(path string) (uint8, error)

获取文件类型

path	文件路径

uint8返回类型确定:
0-未知 1-目录 2-Linux可执行程序 3-Linux下超链接 4-Linux Socket文件 5-Windows 可执行程序
10-JPEG图片文件 11-PNG图片文件 12-WEBP格式图片 13-GIF格式图片 14-BMP位图 15-TIFF格式图片 19-未知格式图片文件
20-ASCII编码的文本文件 21-UTF-8编码的文本文件 29-未知格式文本文件
31-7Z压缩文件 32-ZIP压缩文件 39-未知压缩文件
41-PDF文档 42-Word文档 43-Excel文档 44-PPT文档
51-WMV视频 52-MP4视频 53-AVI视频 54-FLV视频 55-MOV视频 59-未知格式视频
60-MP3音频文件 61-AAC音频文件 62-AIFF音频文件 63-FLAC音频文件 69-未知格式音频文件

func File2typeByExt added in v0.3.52

func File2typeByExt(path string) (uint8, error)

通过文件名后缀进行匹配文件类型

func Find

func Find(path string, arg ...string) ([]string, error)

获取指定目录内的文件列表

func GetCommand added in v0.2.51

func GetCommand(name string) string

获取指定命令的相关信息

name	待获取详情的命令列表

func GuiOpen added in v0.2.9

func GuiOpen(url string) error

GUI环境下打开连接 此处使用Linux环境下的方式来调用,其他环境使用拆分编译的形式来实现

func Image2averageColor

func Image2averageColor(input string) (string, error)

获取图片的平均颜色【值为16进制的颜色色值(6位长度无前缀#,如:C6BEB2)】

input	输入的图片文件

func Image2mimeType

func Image2mimeType(input string) (string, error)

获取图片的Mime Type值,如:image/webp

input	输入的图片文件

func Image2webp

func Image2webp(input, output string) error

图片格式转换,智能根据后缀推测图片格式

input	输入图片的路径
output	输出图片的路径

func Image2wh

func Image2wh(filepath string) (uint, uint, error)

根据图片文件获取图片宽高,返回单位:px

filepath	图片地址

func Qrcode

func Qrcode(input, output string, conf *QrcodeConfig) error

转换为二维码

input	待转换的字符串
output	二维码文件存储位置(生成的文件为png格式图片,所以建议直接传入图片后缀png)
conf	二维码配置项

func QrcodeIdentification added in v0.1.30

func QrcodeIdentification(f string) (map[string][]string, error)

二维码识别

f	要识别的文件地址[支持输入图片文件地址]

func Quality

func Quality(input, output string, quality int) error

图像压缩,将图片压缩为指定质量的压缩图,宽高度不定

input	输入图片的路径
output	输出图片的路径
quality	压缩等级,0~100

func Tar added in v0.2.51

func Tar(to string, from []string) (string, error)

文件压缩(简易压缩,判断环境变量中的7z、tar等命令来进行压缩)

to	目标文件(会自动在后面追加.7z、.tzr.gz等后缀)
from	来源文件

func Thumb

func Thumb(input, output string, size uint) error

生成缩略图,画质较低

input	输入图片的路径
output	输出图片的路径
size	缩略图大小

func ThumbResize

func ThumbResize(input, output string, size uint) error

生成缩略图

和Thumb的区别为此处使用的-resize参数进行生成,效率稍慢,画质较高

func Video2convert

func Video2convert(input, output string) error

视频获取封面图【获取时长为00:00:00秒的图片】

func Video2image

func Video2image(input, output string, times uint) error

视频获取指定时长位置的图片

input	输入视频位置
output	输出图片位置
times	视频时长,单位:毫秒

func Video2times

func Video2times(filepath string) (uint, error)

根据视频获取视频时长,返回单位:毫秒

filepath	视频地址[绝对路径]

func Video2wh

func Video2wh(filepath string) (uint, uint, error)

根据视频获取视频宽高,返回单位:px

filepath	视频地址

Types

type Cmds added in v0.2.51

type Cmds struct {
	Name  string // 命令名称
	Path  string // 命令地址
	Exist bool   // 是否存在
}

命令结构体【命令不再强制存在】

func GetCommandInfo added in v0.2.51

func GetCommandInfo(name string) Cmds

获取指定命令的相关信息

name	待获取详情的命令列表

type Pem added in v0.2.61

type Pem struct {
	Key   []byte // 证书内容Key
	Pub   []byte // 证书公钥内容
	Pkcs8 []byte // Pkcs8私钥内容【无加密】

	Error error // 错误信息,若此值不为空就直接终止,不再往下走
	// contains filtered or unexported fields
}

证书相关结构[RSA加密用证书]

func NewPem added in v0.2.61

func NewPem() *Pem

新建Pem结构体

func (*Pem) Run added in v0.2.61

func (p *Pem) Run() *Pem

进行密钥生成

func (*Pem) Size added in v0.2.61

func (p *Pem) Size(size int) *Pem

设置证书强度大小,默认为2048

size	强度大小

type QrcodeConfig

type QrcodeConfig struct {
	Size       uint   // 二维码大小(多少个像素点)【specify module size in dots (pixels). (default=3)】
	Level      string // 二维码质量【specify error correction level from L (lowest) to H (highest){LMQH}. (default=L)】
	Border     uint   // 外边距大小(多少个像素点)【specify the width of the margins. (default=2))】
	Background string // 背景色格式为RRGGBB[AA],默认:FFFFFF
	Foreground string // 前景色格式为RRGGBB[AA],默认:000000
	Replace    bool   // 若存在输出文件则直接覆盖?【默认false,返回错误信息】
}

二维码生成的配置信息

type SshConfig added in v0.2.51

type SshConfig struct {
	Host     string        // ip
	Port     int           // 端口
	Username string        // 用户名
	Password string        // 密码
	IsPK     bool          // 是否是证书【如果是证书的话,password项填写证书位置/证书字符串】
	Error    error         // 错误信息
	TimeOut  time.Duration // 超时时间
	// contains filtered or unexported fields
}

连接的配置

func SSH added in v0.2.51

func SSH(cliConf *SshConfig) *SshConfig

创建连接

func (*SshConfig) Exec added in v0.2.51

func (c *SshConfig) Exec(shell string) (string, error)

运行Shell并获取输出内容

shell	待运行的命令

type SshKey added in v0.2.61

type SshKey struct {
	PreRsa []byte // Rsa签名密钥内容-私钥
	PubRsa []byte // RSA签名密钥内容-公钥

	Error error // 是否存在错误
	// contains filtered or unexported fields
}

SSH登录用的密钥对信息

func NewSsh added in v0.2.61

func NewSsh() *SshKey

创建Ssh登录密钥对

func (*SshKey) Name added in v0.2.61

func (p *SshKey) Name(name string) *SshKey

设置生成的账户姓名信息

func (*SshKey) Run added in v0.2.61

func (p *SshKey) Run() *SshKey

进行SSH证书生成操作

func (*SshKey) Size added in v0.2.61

func (p *SshKey) Size(size int) *SshKey

设置密钥的长度

size	强度数值

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL