[NOTE]常用Linux命令总结[Thx for commandlinefu]
总结 commandlinefu.com 的vote数目最多的实用命令如下(按vote数目),送给英文不好的亲们:
——————————————
lsof -i -P | grep -i "listen"
lsof -Pni4 | grep LISTEN
netstat -plnt
查看正在监听的端口
——————————————
——————————————————————————————————
netstat -ant | awk '{print $NF}' | grep -v '[a-z]' | sort | uniq -c
列出当前所有网络连接的状态数目
——————————————————————————————————
——————————————————————————————————
netstat -ntauple
List programs with open ports and connections
——————————————————————————————————
——————————————————————————————————
ssh -N -L2001:localhost:80 somemachine
建立一条到目标地址的80端口的隧道
访问的时候可以直接访问 http://localhost:2001(任意的port)
——————————————————————————————————
——————————————————————————————————
ssh user@host cat /path/to/remotefile | diff /path/to/localfile -
对比两个机器上的某个文件是否相同
——————————————————————————————————
————————————————————————————————————
(cd /tmp && ls)
跳到某个目录执行命令后back to 当前目录,在不改变工作目录的情况下执行命令
————————————————————————————————————
————————————————————————————————————
net rpc shutdown -I ipAddressOfWindowsPC -U username%password
远程关闭某台windows机器
————————————————————————————————————
————————————————————————————————————
getconf LONG_BIT
查看机器位数
————————————————————————————————————
————————————————————————————————————
pushd /tmp
切换工作目录到 /tmp
popd 弹出工作目录,即回到上级目录
————————————————————————————————————
————————————————————————————————————
mv old new
快速重命名某个文件
————————————————————————————————————
————————————————————————————————————
mkdir -p a/long/directory/path
建立一个目录结构
————————————————————————————————————
————————————————————————————————————
vim scp://username@host//path/to/somefile
编辑某个远程文件
————————————————————————————————————
————————————————————————————————————
rm -f !(other.txt)
删除除去 other.txt 以外的所有文件
————————————————————————————————————
————————————————————————————————————
timeout 5s COMMAND
执行某个命令,如果在5s内没完成就杀掉
————————————————————————————————————
————————————————————————————————————
cat /dev/urandom | hexdump -C | grep "ca fe"
可以让你装作很忙的样子
————————————————————————————————————
————————————————————————————————————
mysqldump --add-drop-table --extended-insert --force --log-error=error.log -uUSER -pPASS OLD_DB_NAME | ssh -C user@newhost "mysql -uUSER -pPASS NEW_DB_NAME"
通过SSH 备份 MySQL(未实验)
————————————————————————————————————
————————————————————————————————————
( ( sleep 2h; your-command your-args ) & )
两小时后启动command,后台启动(时间可以改)
————————————————————————————————————
————————————————————————————————————
lsof -c XXX
查看被某个XXX进程打开的文件
————————————————————————————————————
————————————————————————————————————
sudo find / -mmin 60 -type f
查看60分钟内被修改的文件
————————————————————————————————————
————————————————————————————————————
find / -type f -size +500M
查看大于500M的文件
————————————————————————————————————