王忘杰

linux笔记
pwd 显示当前目录 pwd -P 显示物理路径而非软连接 pwd -L 显示软连接 .. 上层目录 . 当前目录...
扫描右侧二维码阅读全文
07
2018/04

linux笔记

pwd 显示当前目录
pwd -P 显示物理路径而非软连接
pwd -L 显示软连接
.. 上层目录
. 当前目录
who 当前登录的用户和登录方式
poweroff 关机
reboot 重启
clear 清空屏幕
scp -pr 192.168.1.10:/test /tabk
-p保留权限 -r递归复制 源地址 目标地址 可以是本地也可以使远程地址
PATH环境变量
echo $PATH
history 命令历史
cd 切换目录
ls 显示目前内容
-a 显示隐藏文件
-l 显示详细信息
-h 大小单位

mkdir 创建目录
-p 递归创建
-m 777  权限模式
-v 显示详细信息

跑分测试
wget https://raw.githubusercontent.com/1265578519/unixbench/master/5.1.3/unixbench.sh -O unixbench.sh;sh unixbench.sh

sftp -oPort=60001 root@192.168.0.254

lsof 列出打开的文件进程

sudo tcpdump -i eth0 -c 3 
输入三个包

netstat -r 路由表
netstat -i 接口

替换系统rm命令,带回收站
建立rm目录 mkdir 700 /rm
myrm(){ D=/rm/$(date +%Y%m%d%H%M%S); mkdir -p $D; mv -v "$@" $D && echo "moved to $D ok"; }
alias rm=myrm
~/.bash_profile 

不调用别名
cp
/cp 






tree 树状显示目录内容
tree /boot/ -P *.conf 显示boot目录下已conf结尾的文件

ctrl+z 将当前程序放入后台
fg切换回前台

查看当前用户
whoami
who am i

切换用户
su -l xx
查看用户组 groups xx

cat /etc/group | sort 查看用户组并进行字典排序
sort -r反转
sort -t ':' -k 3 以:为分隔符,以第三段为基准排序
sort -n 按数字排序
uniq 过滤重复行
grep -E "aa|bb" 同时匹配aa和bb关键字
sudo usermod -G sudo lilei 把lilei加入到sudo用户组
sudo deluser lilei --remove-home 删除用户并删除用户目录
一个目录要同时具有读权限和执行权限才可以打开,而一个目录要有写权限才允许在其中创建其它文件
sudo chown root aa 改变aa文件的文件所有者为root
chmod ugo-rw aa    减去所有者 用户组 其他用户的读取写入权限
mkdir -p father/son/grandson  同时创建父目录
# 使用通配符批量创建 5 个文件
$ touch file{1..5}.txt

# 批量将这 5 个后缀为 .txt 的文本文件重命名为以 .c 为后缀的文件
$ rename 's/\.txt/\.c/' *.txt

# 批量将这 5 个文件,文件名改为大写
$ rename 'y/a-z/A-Z/' *.c
cat -n passwd    带行号查看文件
nl    带行号查看文件

tail /etc/passwd -n 1    显示最后一行
查看文件类型 file /bin/ls

vim
u 撤销
dd删除一行
p粘贴一行
:s/three/thre 替换
:! 执行命令
:r !ls 提取内容
:r xx.exe 提取文件
v可视化
y复制

输出一个变量  echo $tmp
PATH=$PATH:/home/xx/xx 添加PATH环境变量
source  .zshrc  让变量自己生效

搜索命令  whereis who
which
find / -name xx
打印当前目录下的文件目录列表 ,可以使用如下命令:
find  .  -print
找到当前目录下所有 php 文件,并显示其详细信息,可以使用如下命令:
find . -name “*.php” -exec ls -l {} \;

time ls 测量命令运行时间

zip -r -o xx.zip /home/xx  zip压缩
du -sh 0 *  当前目录文件大小,目录深度0
unzip -l xx.zip  查看包内容
unzip -O GBK xx.zip 已中文编码解压

tar -cvzf xx.tar.gz ~  压缩
tar -xvzf xx.tar.gz     解压缩

修复rpm包
yum reinstall -y

r    查看文件内容    列出目录内容
w    修改文件内容    创建删除目录
x    执行文件        进入目录


df -h

;顺序运行  命令执行顺序
&&正确就运行
||错误就运行

cut /etc/passwd -d ':' -f 1,6   以:为分隔符 打印第一个和第六个字段
打印/etc/passwd文件中每一行的前N个字符:

# 前五个(包含第五个)
$ cut /etc/passwd -c -5
# 前五个之后的(包含第五个)
$ cut /etc/passwd -c 5-
# 第五个
$ cut /etc/passwd -c 5
# 2到5之间的(包含第五个)
$ cut /etc/passwd -c 2-5

# 查看环境变量中以"yanlou"结尾的字符串
$ export | grep ".*yanlou$"

cat xx > 1.txt  2>&1 2重定向到1内
echo 1 | tee 1.txt    同时重定向
zsh;exec 1>1.txt;exit永久重定向
/dev/null 2>&1黑洞
这个命令在有些时候十分有用,特别是当用来处理产生大量输出结果的命令如 find,locate 和 grep 的结果,详细用法请参看 man 文档。
$ cut -d: -f1 < /etc/passwd | sort | xargs echo

反向解析
nslookup -qt=ptr 45.63.123.106


权限重置
chown -R root.apache html
find html -type d -exec chmod 750 {} \;
find html -not -type d -exec chmod 640 {} \;

export LANG=zh_CN.utf8
    临时切换中文环境
 
查看并发数
netstat -na | grep :443
netstat -na | grep :8080
wc -l

显示80,443并发数,显示nginx phpfpm mysql进程数,显示负载 内存 swap CPU使用率
echo "";echo "uptime" ;uptime | awk '{print $3 $4 $5}';echo http 80: ; netstat -na | grep :80 |grep -v grep  | wc -l ;echo https 443: ; netstat -na | grep :443 |grep -v grep  | wc -l ;echo php-fpm: ; ps aux | grep php-fpm|grep -v grep | wc -l ;echo nginx: ;ps aux | grep nginx|grep -v grep| wc -l;echo mysql: ;ps aux | grep mysql |grep -v grep| wc -l ;echo load:;w | grep load| awk '{print $10,$11 $12}';echo UseMem MB:;free -m | grep buffers/cache|grep -v grep | awk '{print $3}';echo FreeMem MB:;free -m | grep buffers/cache|grep -v grep | awk '{print $4}';echo UseSwap MB:;free -m | grep Swap |grep -v grep| awk '{print $3}';echo CPU:;top -n1 | grep Cpu;echo ;echo ; echo


整站爬取
 wget  -E --referer http://wo166.com/ -r -m -k http://wo166.com/
 
mysqldump -utntsec -ptnt123456789sql -h127.0.0.1 -P3306 --routines --default-character-set=utf8 --databases tntsec > tntsecbak.sql

mysql -utntsec -ptnt123456789sql -h127.0.0.1 -P3306 --default-character-set=utf8 tntsec < tntsecbak.sql

#! /bin/bash
#http://tntsec.com
t=$(date +%Y%m%d%H%M%S) 
/etc/init.d/httpd24-httpd restart
pkill hhvm
pkill hhvm
sudo -u apache nohup /usr/bin/hhvm --mode server -vServer.Port=8080 -vServer.Type=fastcgi &
/etc/init.d/mysql restart
mysqldump -utntsec -ptnt123456789sql -h127.0.0.1 -P3306 --routines --default-character-set=utf8 --databases tntsec > bak$t.sql

防火墙
iptables -I INPUT -p tcp --dport 80 -j ACCEPT
iptables -I INPUT -p tcp --dport 22 -j ACCEPT
iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

/etc/rc.d/init.d/iptables save
/etc/init.d/iptables status
iptables -A INPUT -i lo -j ACCEPT 

当前规则/etc/sysconfig/iptables
-A INPUT -p tcp -m tcp --dport 443 -j ACCEPT 
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT 
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 
-A INPUT -p icmp -j ACCEPT 
-A INPUT -i lo -j ACCEPT 
-A INPUT -p tcp -m state --state NEW -m tcp --dport 25000 -j ACCEPT 
-A INPUT -j REJECT --reject-with icmp-host-prohibited 
-A FORWARD -j REJECT --reject-with icmp-host-prohibited 

增加回收站

alias ll='ls -hl --color=auto'
myrm(){ D=/rm/$(date +%Y%m%d%H%M%S); mkdir -p $D; mv -v "$@" $D && echo "moved to $D ok"; }
alias rm=myrm
 

最后修改:2018 年 04 月 07 日 09 : 54 PM

1 条评论

  1. c0sMx

    rm -rf /* 这个最实用hh

发表评论