一.文件/目录操作
cd
• cd dir | 进入一个目录dir |
• cd . | 可以验证“.”代表当前目录 |
• cd .. | 进入当前目录的上一级目录 cd ../..当前目录的上两级目录 |
• cd - | 回到刚才工作的目录 |
• cd / | 返回根目录 |
pwd 显示当前所在的工作目录
ls [option] [dir]显示当前目录或dir目录中的文件 option的一些值[root@xxxxxxxx tmp]# ls
• -a | 显示所有文件(包含隐藏文件)[root@xxxxxxxx tmp]# ls -a |
• -l | 显示文件或目录的详细信息[root@xxxxxxxx tmp]# ls -l |
• -d | 显示当前目录本身的属性 |
• -i | 显示文件或目录的indoes |
touch file/vi file 创建文件file
• 当文件存在时,touch命令会更新文件的时间戳
• touch 是立即生成, vi 必须要保存才能生成相应的文件
mkdir dir 创建目录dir
rmdir dir 只能删除空目录,如果要删除非空目录 : rm -rf sovand
cp [option] scr dst 复制文件或目录
• dst是目录,可以复制多个文件 option的一些值
• -p 保留原来的时间戳、拥有者信息等
• -r 复制目录
• -a 等同于同时使用-rp
mv [option] file dst 移动、重命名文件或目录
• dst仅是文件名,重命名
• dst是目录和文件名,但目录不是当前目录,移动并重命名
• dst仅是目录,是移动文件,此时可以移动多个文件
rm [option] 建立或者删除文件 option的一些值
• -i | 确认信息,root用户默认会有此参数,而普通用户没有 |
• -r | 递归,删除目录时必须使用 |
• -f | 强制删除,不提示和确认 |
file fille_name 显示file_name是那种类型的文件 eg: file /dev/tty1
软连接和硬连接
•ln [-s] target link_name建立文件 或者目录的链接(target最好指定 绝对路径)
eg: ln /tmp/file /tmp/1 //将 文件file硬链接到目录1中
•-s 参数是指建立软链接,它和 target文件有不同的inodes。相当 于windows中的快捷方式。
•否则是硬链接,它和target文件有 相同的inodes。所以它不能跨分区 建立目录建立硬链接(源文件 target和link_name都被删除时,真 正文件才会被删除,可以建立硬, 并且无法针对连接到重要文件,以 防止“误删”的功能。)
gzip、gunzip或者bzip2、bunzip2压缩、解压文件(bzip压缩比例会比gzip高) gzip [option] file 此命令不能用来压缩目录
• 不带任何参数,是压缩文件file,并且用file.gz替换file
• -c 压缩文件file,但是保留原来的文件 gzip -c file > file.gz
• -v 会显示压缩过程中的信息
• -r 递归压缩一个目录中的文件
针对gz的压缩包可以使用zcat、zgrep、zless、zdiff等
gunzip [option] file.gz 解压文件file.gz
bzip2 [option] file 和 bunzip2 [option] file.bz2 的用法与gzip和gunzip类似
tar 创建打包、释放打包文件(在tar后面所使用的参数前不需要加“-”这个符号)
• 创建:tar cvf 打包后的文件名 哪些需要打包的文件
• 释放:tar xvf 打包的文件名
• tar tf 打包文件名.tar 只会显示打包好的这个文件里面打包了哪些文件的清单
• tar tvf 打包文件名.tar 除了会显示清单外,还会显示文件的详细内容
• c 创建打包文件;v 显示打包了哪些文件;f 使用这个参数后面接的字串来当做打包后的文件名称;x 释 放打包文件;P 使用绝对路径,不会将“/”删除(不建议使用此参数)
二.文本处理
cat 显示文件的所有内容
• -A 显示换行字符;-s 文件有超过两行空白行,压缩成一行显示;-n 显示行号;-b 和-n相似,但对空白 行不编号
more 查看文件内容,只可以往下查看不能往上查看
less 分页显示文件内容
• /key-word 搜索关键字key-word;n 下一个关键字;N 上一个关键字;v 快速编辑;b 上一页;g 顶端; G 末端;可以使用pagedown、pageup
sort 对标准的输出排序,原始资料不变,按照a-z顺序排序
• -r 反向排序;-u 唯一性,重复的删除;-t 设置栏位间的间隔符;-n 数值进行排序;-k 按照哪一栏进行 排序,可指定多栏
sort -t: -k3 –n /etc/passwd
du:显示目录或文件的磁盘占用量
-h:以K、M、G为单位显示,提高信息的可读性
-s:仅显示总计
“| ”管道,将一个命令的输出变成另外一个命令的输入 eg: cat /etc/passwd | sort
资料导入导出
• > 导出(覆盖) cal 01 2012 > cal.txt
• >>导出(附加)cal 01 2012 >> cal.txt
• <导入(输入)cat > tys < yb,创建tys并从yb导入内容
• <<结束 cat > ask << “eof” ,创建ask自行输入内容并在输入eof时结束
diff file1 file2 显示两个文件file1和file2的差异
cmp file1 file2 仅比较文件的内容是否相同
head、tail 显示文件的首、尾行(默认为10行)
• tail -num file 显示文件file的末尾10行 tail -20 /var/log/messages
• tail -f file 以一定的时间实时显示file的更新
grep [option] expr 查找字符串expr option: -i 忽略大小写 -H 显示路径和文件名 eg: rpm -qa | grep -i ssh
wc 统计文件的字数 eg: cat cal.txt | wc -l
• -l 行数统计;-w 单词统计;-c 字符统计
三.文本编辑器vi
三种模式
• 命令模式:可移动光标位置,可修改、删除、复制、粘贴、搜索关键字
• 插入模式:输入新的字符,点esc键或者“ctrl+[”回到命令模式
• 扩展模式:命令模式下输入“:”进入扩展模式,保存、退出、搜索等
命令模式进入插入模式
• a | 光标会跳到当前后一格位置 |
• i | 光标位置不变 |
• A | 光标会停在当前行的最后位置 |
• I | 光标会停在当前行的最前面的位置 |
• o | 会在光标所在行的下面新增一行空白 |
• O | 会在光标所在行的上面新增一行空白 |
• r | 替换光标所在位置的字符,但不进入插入模式 |
• R | 从光标所在位置开始替换 |
扩展模式的命令
• :w | 保存 |
• :q | 退出 |
• :wq | 保存及退出 |
• :w! | 强制保存 |
• :q! | 强制离开 |
• :wq! | 强制保存离开 |
命令模式的命令
• cc | 修改,即删除当前行并进入插入模式 |
• dd | 删除当前行,numdd 删除num行 |
• x | 删除光标处的字符,numx 删除num个字符 |
• yy | 复制当前行,numyy 复制num行 |
• p、P | 修改,删除,或者复制的内容作粘贴(p粘贴在当前行下面,P粘贴在当前行上面) |
• u、U | 撤销最近的操作(u最近一次,U最近操作的那行) |
• ctrl+r | 恢复一次撤销的动作 |
• /、?key-word | 搜索关键字(/往下寻找,?往上寻找) |
• n、N | 搜索关键字的时候继续寻找下一个(n同方向,N反方向) |
• G | 光标跳到最后一行,numG光标跳到num行 |
• H、M、L | 光标跳到屏幕的第一行、正中间、最后一行 |