一、Linux命令基本知识
Linux的目录结构为树状结构,最顶级的目录为根目录 /。
二、目录处理命令
列出目录:ls
- -a :全部的文件,连同隐藏文件( 开头为 . 的文件) 一起列出来(常用)
- -d :仅列出目录本身,而不是列出目录内的文件数据(常用)
- -l :长数据串列出,包含文件的属性与权限等等数据;(常用)
创建目录:mkdir
- 创建单个目录:mkdir /tmp/vae.txt
- 创建多个目录:mkdir /tmp/a.txt /tmp/b.txt
- -p :直接将所需要的目录(包含上一级目录)递归创建起来
??: 1.创建的目录已经存在, 那么 Linux 会提示我们 Linux 无法创建它。 2.不带任何参数运行 mkdir 命令会在当前目录下创建目录。 3.创建目录的首要条件是, 在想要创建目录的目标路径下你必须具有访问权限。
切换目录:cd
- 回到上一级目录:cd …
- 还是在当前目录:cd .
- 返回上两级目录:cd …/…
- 返回进入此目录之前所在的目录:cd -
- 使用 mkdir 命令创建 runoob 目录: mkdir runoob
- 使用绝对路径切换到 runoob 目录: cd /root/runoob/
- 使用相对路径切换到 runoob 目录: cd ./runoob/
显示目前所在的目录:pwd
- -P :显示出确实的路径,而非使用连结 (link) 路径。
删除空的目录:rmdir
- 删除 runoob 目录:rmdir runoob/
- -p :连同上一级『空的』目录也一起删除
??: 删除空目录(如果目录下存在文件则不能删除) rmdir 仅能删除空的目录,你可以使用 rm 命令来删除非空目录。
复制文件或目录:cp
cp [-adfilprsu] 来源档(source) 目标档(destination)
- -r:递归持续复制,用於目录的复制行为;(常用)
- -p: 保留文件属性
- -f:为强制(force)的意思,若目标文件已经存在且无法开启,则移除后再尝试一次;
- -i:若目标档(destination)已经存在时,在覆盖时会先询问动作的进行(常用)
??: 注意复制目录的时候要加 -r选项。加-p属性之后会将原文件的一些属性比如修改时间等也原封不动的复制过去。如果不加-p属性,那么复制后的文件修改时间为当前系统时间。
移除文件或目录:rm
- -f :就是 force 的意思,忽略不存在的文件,不会出现警告信息;
- -i :互动模式,在删除前会询问使用者是否动作
- -r :递归删除啊!最常用在目录的删除了!这是非常危险的选项!!!
移动文件与目录,或修改名称:mv
mv [-fiu] source destination
- -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;
- -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!
- -u :若目标文件已经存在,且 source 比较新,才会升级 (update)
三、文件处理命令
创建空文件命令:touch
??:
- 创建文件时,文件名不要有空格,不然就是创建了 两个文件touch progrom files 这是创建了两个文件,progrom 和 files。
- 如果我们想创建一个文件名为 progrom files ,应该用引号括起来(尽量避免文件名包含空格) ,touch “progrom files”
显示文件内容命令(适合内容较少的文件):cat
- -b :列出行号,仅针对非空白行做行号显示,空白行不标行号
- -n :列印出行号,连同空白行也会有行号,与 -b 的选项不同
反向显示文件内容命令(适合内容较少的文件):tac
tac与cat命令刚好相反,文件内容从最后一行开始显示,可以看出 tac 是 cat 的倒着写!
分页显示文件内容命令(不能向前翻页):more
more /etc/man_db.config
- 空白键 (space):代表向下翻一页
- Enter:代表向下翻『一行』
- /字串:代表在这个显示的内容当中,向下搜寻『字串』这个关键字
- q :代表立刻离开 more ,不再显示该文件内容
分页显示文件内容命令(可以前后翻页):less
less /etc/man.config
- 空白键 :向下翻动一页
- [pagedown]:向下翻动一页
- [pageup] :向上翻动一页
- /字串 :向下搜寻『字串』的功能
- ?字串:向上搜寻『字串』的功能
- q :离开 less 这个程序
显示文件内容命令(指定行数):head
head [-n number] 文件
??: 不加 -n 默认显示前 20 行数据
反向文件内容命令(文件及时更新后也能动态显示,多用于日志文件显示):tail
tail [-n number] 文件
- -n :后面接数字,代表显示几行的意思
- -f :表示持续侦测后面所接的档名,要等到按下[ctrl]-c才会结束tail的侦测
文本搜索工具:grep
- -n:显示匹配行及行号
- -E:使用 | 来分割多个pattern,以此实现OR操作
- -A: 显示匹配行及前面多少行, 如: -A3, 则表示显示匹配行及前3行
- -B: 显示匹配行及后面多少行, 如: -B3, 则表显示匹配行及后3行
- -C: 显示匹配行前后多少行, 如: -C3, 则表示显示批量行前后3行
例:
-
grep -n “word” filename 查看文件包含条件的日志,全部显示出来(单引号或者双引号都可以,不区分) -
grep -E “word1|word2|word3” filename 满足任意条件(word1、word2和word3之一)将匹配的内容全部打 印出来 -
grep word1 filename | grep word2 |grep word3 必须同时满足三个条件(word1、word2和word3)才匹配 多管道,多次筛选 -
grep -A100 ‘word’ filename 显示匹配行往后100行
|