casyup.me@outlook.com

0%

other/useful skill

vim中执行cmd

1
!cmd

vim中编写额外的文件

1
args filename

sed处理文件

at和crontab定时

流重定向

“>”: 输出重定向, 这个操作符会覆盖已有文件的内容, 若文件不存在, 则创建

“>>”: 同样也是输出重定向, 这个操作符会将内容添加到文件尾部, 同样的, 若文件不存在, 则创建文件

@note:

​ 比较特殊的是内联输入重定向: “<<”, 我现在也不太明白这东西的实质用法和含义

​ 只知道它的行为: 它可以使用命令行的内容作为输入流, 并且可以指定一个”标识”来表示结束

管道

@brief:

​ 将一个命令的输出作为另一个命令的输入. 例如:

1
cat file | less

cat仅仅只是查看文件, 但并不会增加一些控制功能(如翻页, 搜索…)

less则提供了相关的更高级的功能, 将cat的输入(文件内容)作为less的输入

@note:

​ 其实这个例子很没有必要, 现实中这么写, 可能会被diss到死. 因为可以直接使用 less file

创建一个新文件

1
touch file

置空文件内容

1
cat /dev/null > file

@note:

​ 更加简便的方式是 > file

单引号和双引号

需要注意的是, 单引号中, 双引号不需要转义.

同样的, 双引号中, 单引号不需要转义

这会在某些场合下, 让你的字符串更加简洁易懂, 同时还更好改, 更不容易写错

@ps:

​ 我曾在一次 crontab 任务中遇到这种场合, 我使用了 crontab file 的形式来添加任务

​ 同时使用 echo + 重定向 的形式往文件中添加内容, 而要执行的命令中就包含些许单引号和双引号

​ (不过我倒是没有在这里面用到这个技巧, 因为我第一次就写对了 :) )

md5加密

1
echo "test" | md5sum

查看自己的公网信息

curl cip.cc

简析: curl 为一个在服务器中传递数据的攻击, 而 cip.cc 为一个查询网络信息的网站

当你登录 cip.cc 时, 它应当会根据你访问网站时的信息, 查询你 IP 的相关信息, 并返还给你

传递大量文件(远端和本地)

rsync

具体用法参照 man 手册

查看本地IP端口信息

1
netstat -tunlp

t : TCP

u : UDP

n : 不经过域名服务器

l : 显示监控中服务器的socket

p : 显示监控中的程序识别码和名称

@btw: 可以加入 -a 选项, 这会将所有(包括当前未监听)的端口信息都列出来

​ 与之相关的命令还有 nmap, nc

查看本机服务

1
service --status-all | grep running

这个命令可以查看本机现在运行的所有服务

@note: –status-all 之间不能空格. “–status -all” 这是错误的写法