Skip to content

几个常用的Linux命令与问题

unzip解压密码包含中文

对于压缩文件如果压缩密码带有中文,可能会因为中文编码不一致而解压失败。

一般Windows下使用GBK编码,我们可以先获取到对应的原始编码形式:

$ echo -n "qq群12345678" | iconv -f utf-8 -t gbk
qqȺ12345678

然后使用unzip解压时输入对应的编码密码就可以了。

查看网关

$ route -n 
$ ip route show
$ netstat -r

查看SSH端口

$ netstat -ntlp|grep ssh

Redis设置密码保护

> config get requirepass
1) "requirepass"
2) ""

> config set requirepass 1234
OK

> config get requirepass
1) "requirepass"
2) "1234"

清理缓存(buff/cache)

$ free -h
              total        used        free      shared  buff/cache   available
Mem:           503G         31G         33G        206G        437G        264G
Swap:          4.0G        2.5G        1.5G

$ echo 1 > /proc/sys/vm/drop_caches   # 清除pagecache
$ echo 2 > /proc/sys/vm/drop_caches   # 清除slab
$ echo 3 > /proc/sys/vm/drop_caches   # 清除pagecache和slab

查看磁盘

$ fdisk -l | grep Disk
$ lsblk

产生随机密码

$ yum install expect -y

    -l   生成密码的长度,默认是 9 位,不同版本的默认长度可能是不一样的。
    -d  生成密码中包含数字的位数,默认是 2 位。
    -c  生成密码中包含小写字母的位数,默认是 2 位。
    -C  生成密码中包含大写字母的位数,默认是 2 位。
    -s   生成密码中包含特殊字符的位数,默认是 1 位。

$ mkpasswd -l 20 -d 5 -c 5 -C 5 -s 2

nmuS*Cv{2n6BC3spK65p

Shell脚本加密

$ shc -f filename.sh -o filename
$ shc -r -f filename.sh -o filename  # 跨系统

vimdiff操作

vimdiff 打开两个文件对比时,默认是左右分屏,执行以下按键可以切换分屏方式:

ctrl+w shift+h  # 左右分屏
ctrl+w shift+k  # 上下分屏

vimdiff 对比时,不管是上下分屏或者左右分屏,当一行太长显示不下的时候都有点麻烦,以下命令改成自动换行显示:

:windo set wrap

这样就可以一眼看到该行所有内容,方便进行对比了。

另外,以下按键是在多个窗口之间切换当前工作窗口:

ctrl+w w