linux常用命令
vi快捷键 http://www.cnblogs.com/firstForEver/p/4717372.html
shell编程的笔记 http://www.cnblogs.com/firstForEver/p/4834766.html
#mkdir -p /data/www/test123 -p参数可以创建一连串目录
#cd - 回到上一次的目录
#cd 回到家目录 root用户就是 /root
#rm -rf file1 file2 dir1 dir2 千万不要写根目录 / --->非常危险 强制删除 r是递归删除目录文件 f是force
#cp -r d1 d2 复制目录d1,生成d2 -r递归复制 --- 复制一个文件 cp f1 f2 复制f1,生成f2
#mv file1 file2 剪切/重命名
=======================
创建一个文件两种常用方法 1. #touch a.txt 2. # > a.txt (重定向)
写入一个文件,利用重定向 > , >>
#echo 'hehe' > 1.txt (覆盖
#echo 'haha' >>1.txt (>>追加,不会覆盖
=======================
#cat filename 查看文件内容 ---- #cat -n filename 可以查看行号
#tac filename 倒序查看文件内容
#head -n 5 filename 查看文件前5行 --- 默认前10行
#tail -n 6 filename 查看文件后6行 --- 默认后10行
#tail -f filename 动态实时查看文件内容,日志变化时,该用法比较好
#more filename 可以一点一点查看文件内容 按q退出查看
=======================
不知道一个命令怎么用,就man 一下... 按q退出
#chown [-R] user[:group] file... 改变文件所有者、或所属组
#chmod [-R] mode file... mode 如755 644等
=======================
常见文件类型ls -l 第一个字符
- 普通文件
d 目录
l 快捷方式链接文件
b 块设备 硬盘
c 字符设备 键盘 鼠标
=======================
ln [-s] [源文件] [链接的目标文件] 软链接类似于windows中的快捷方式 ---- 硬链接是同一个文件 同一个inode 删除一个没事
硬链接不能链接目录,软连接可以 (这就是普遍为啥硬链接应用少的原因,限制太多
========================
df (disk free) df -h 以合适的方式显示磁盘使用情况 h参数 如kb mb gb
du (disk usage) -s[h] filename 查看该文件或目录占用的总大小
du -sk 查看当前文件夹下,占用的总kb大小 s->sum, k->kb (一个块大小4kb 小于4kb的一个文件也要占用一个块 就是ll和du -k占用不同的原因)
=======================
打包、压缩
常见格式:
.gz gzip
.bz2 bzip2
.tar 打包并不压缩
.tar.gz 打包完,利用gzip压缩
.tar.bz2 打包完,利用bzip2压缩
tar -cvf 压缩后的名字.tar 原文件名 c是打包 v是可视化打包过程 f后面紧跟文件名(该文件名最好带上压缩或打包后的格式如.tar .tar.gz)
tar -czvf 压缩后的名字.tar.gz 原文件名 打包并直接压缩 z是按照gzip格式压缩 j是按照bzip2压缩
tar -xvf 压缩文件名 解压缩 x是解包 解压缩 解压缩会覆盖
tar -tf 压缩文件名 可以查看压缩的文件列表
zip 目标压缩后的文件名 filename
unzip
gzip [-d] filename --- -d是解压缩用 压缩后不保留原文件 直接写原文件名,不必写压缩后的名称 不能压缩目录
bzip2 [-d] filename --- -d是解压缩用 压缩后不保留原文件 直接写原文件名,不必写压缩后的名称 不能压缩目录 bzip2使用和gzip类似
=======================
rpm 包管理
安装:
rpm -ivh filename.rpm
-i 安装
-v 可视化
-h 安装进度
卸载:
rpm -e 包名
查询一个包是否安装:
rpm -q 包名
查询机器所有安装的包
rpm -qa
比如查找mysql的包:rpm -qa | grep -i mysql
看这个包的详细信息
rpm -qi 包名
yum:
列出yum上所有的rpm包
yum list
过滤出来一个rpm包
yum list | grep 'vim' 或者 yum search vim
安装一个rpm包
yum install -y rpm包名 -y就是一顿yes,避免总是确定
卸载一个包
yum remove -y rpm包名
=======================
find [路径] [参数]
find /tmp/ -atime (ctime、mtime) +/- n 大于n天或者小于n天 atime访问、执行 (ctime写入 改inode属性、 mtime写入)
当前文件夹下找一个名字abc...的文件
#find ./ -name "abc*"
当前文件夹下找文件里含有字符串如'mall'的文件
#grep "mall" *
如果希望递归查下去 # grep -r "mall" *
scp 远程传输用
scp src dest
scp file1 user@host:/home/user/file1
如果考虑带宽限速的问题,可以加一个-l参数,以kbit/s为单位,比如scp -l 800 file1 user@host:/home/user/file1
800差不多限速就是100kbyte/s