Linux基础命令
1.ls 查看文件
a) -a:查看所有(包含隐藏,隐藏文件均以.开头)文件
b) -l:查看文件的详细信息(权限、所有者、所有组、修改时间、大小、使用次数等)
c) -i:查看文件/文件夹(Linux中唯一)id
d) -h :(human)人性化的显示
e) –d:查看当前文件夹信息(也可以看其他文件夹的
关于权限的说明:
r:读、w:写、x:执行。第一位为文件类型,l:软连接; -:文件;d:文件夹
后三位为所有者的权限,再后三位为所有组的权限、最后三位为其他人的权限。-表示无权限。
2.文件的操作(复制、剪切、删除、创建)
a) 文件夹的创建 mkdir
i. –p:递归创建。无此参数则只能在已存在目录下创建目录。
b) 复制 cp
c) 删除空目录 rmdir
d) 删除文件 rm
i. –r:操作文件夹
ii. –f:强制操作
e) 移动(可以剪切、重命名) mv
在操作的同时都是可以改变被操作文件夹名字的
- 不要随意地建目录,应该有规划、整洁的
3.cat 查看文件
a) –n 显示行号
- tac 倒叙查看文件
- more 查看文件 显示全文
b) enter 下一行
c) space/f 下一页
d) q 退出
4.less 查看文件 显示全文,可以往回翻
a) 操作同上
b) PageUp 上一页
c) ↑ 上一行
d) /xxx 搜索xxx, 按‘n’可移动到下一个匹配行
5.chmod 修改权限
a) [who] [-+=] [rwx] <file> 方式一
b) [754] <file> 方式二 (111 第一位’x’, 第二位’w’, 第三位‘r’ 对应的值为:x:1, w:2, r:4.最高权限则为7(111))
6.touch 创建文件
7.ln 创建连接
a) –s 有此参数表示创建软连接,无此参数则创建硬链接
i. 软连接可以理解为快捷方式
ii. 硬链接是源文件的实时备份,与源文件有相同的id
iii. 所以文件和id是映射关系
8.chown 改变文件所有者 (只有root可以修改文件所有者)
9.chgrp 改变文件所属组 (所有者和root可以操作)
10.find 文件查找
a) –name 按照文件名查找
i. 不会自动不完全匹配
ii. *表示匹配多个字符,?表示匹配一个字符
b) –iname 按照文件名查找,忽略大小写
c) –size 按照文件大小匹配 (默认单位1=512b)
i. + 大于
ii. - 小于
iii.= 等于
d) –inum 按照文件id查找
e) –type 按照文件类型查找
f) –user/-group 按照所有者/所属组查找
g) –cmin –(数字/分钟) 按照最后属性被修改的时间查找
h) –amin 按照最后访问时间查找
-mmin 按照最后文件内容被修改的时间查找
i) –exec 对查找到的文件进行操作 末尾固定格式 {} ;
j) –a 表示满足多个条件 -o表示满足一个或多个条件
11.which 可执行命令的路径
12.whereis 可执行命令的路径 + 帮助文档路径
13.grep 查找文件内容
a) –v 匹配到了则丢弃该行
14.help 帮助命令
15.ifconfig
16.netstat
17.mail 给其他在线用户发消息 ctrl+D发送
18.tar(*.tar) 文件压缩解压
a)–c 压缩
b)–x解压
c)–f (只能是最后一个参数) 使用档案名字(重命名?)
d)–t 查看内容
e)–u更新原压缩包中的文件
f)–v 显示过程
19.zip(*.zip) 文件压缩解压
a)zip(*.zip) 文件压缩解压
20.bzip2(*.bz2) 文件压缩解压
21.gzip(*.gz) 只能压缩文件,不能压缩文件夹,压缩之后删掉原文件
a)解压 gunzip
b)–c 保留原文件
22.Vim 文件编辑
a) a,I,o 插入
b)p粘贴
c)u撤回
d):set nu 显示行号 |:set nonu 取消显示
e):n 到第n行
f) x删除光标的字符
g)dd删除光标所在行
h)D删除光标到行尾
i) yy复制当前行
j) dd剪切当前行
k)ZZ 保存并退出的快捷键
23.lastlog显示所有用户最后一次登录时间
24.last统计系统所有用户的登录时间和信息,包括系统曾经进行过重启操作的重启时间信息
25.lastb 尝试登录但是失败的日志
26.env 查看所有的环境变量
27.bash 打开一个shell
28.创建shell文件
a)第一行标识解析器 #!/bin/bash
b)echo –e参数允许转义
c)以.sh结尾
d)chmod追加x权限
e)运行的时候
i. bash <filename>
ii. ./<filename> #有x权限
f)Shell中bash打开shell,变量不共用
29.alias 别名
a)设定 alias 现命令=’原命令’
b)存放在 /root/.bashrc
c)删除别名 unalias
30.命令优先权:
a)绝对路径或相对路径执行的程序
b)别名中的命令
c)Bash内部的命令
d)$PATH环境变量中的命令
31.Shell快捷键
32.输出重定向
a)> <filename> |覆盖的方式写入<filename>
b)>> <filename> | 最佳的方式写入<filename>
c) 2> | 2>> 错误信息写入
d)&>|&>> 不管对错..都输出
33.| 管道符
a) 命令1 | 命令2
#命令1 的结果作为命令2 的输出
34.Shell
a) 变量用$引用
b) $@ 参数区分获取(空格分割
c) $# 参数个数
d) $* 参数作为整体获取
e) $$ 本程序的pid
f)
a) for循环:
for x in “range”(变量) for x in $(seq 10);do
do xxx
xxx done
done
g) if “xxx”;then
xxx
fi
h) case:
case “xx” in
“条件1”)
xxxxx
;;
“条件2”)
xxxxx
;;
esac
i) $? 上一条命令的执行状态
j) $! 最近一个后台process的pid
k) –a 与, -o 或
35.配置文件:
a) /etc/profile
b) /etc/profile.d/*.sh
c) ~/.bash_profile
d) ~/.bashrc 环境变量设置
e) /etc/bashrc
36.所有的命令缓存,会在shell被正常关掉的时候存入~/.bash_history文件
37.截取命令,作用:批量截取pid然后kill
38.Xargs 给其他命令传递参数的过滤器