基础指令
1. 查看目录下有什么文件
ls // list查看"当前"目录下有什么文件
ls 目录 // 查看指定目录下文件信息
ls -a // 全部文件,包含隐藏文件
2. 目录切换
cd ***目录名称
cd .. // 上级目录切换
cd ~ 或 cd // 回到用户的家目录
cd - // 返回上次工作目录
3. 获得当前操作的目录位置
pwd
4. 用户切换
su 用户名
su - // 切换到root用户
su - root // 同上
su root // root用户切换,在有的linux系统效果是:用户是root,权限是普通的
su 普通用户 // 没有"横线"
exit // 退回到上一个用户
// su和exit要配对使用,如果使用多个su,会造成用户叠加
jinnan-->root-->jinnan-->root-->**jinnan**
5. 查看当前操纵者信息
whoami //我是谁
6. 桌面模式 与 命令模式的切换(root用户操作)
init 3
init 5
7. 查看文件内容
cat filename //把文件内容输出到终端查看
8. 查看文件占据磁盘空间大小
du -h 文件
9. 目录操作
-
创建目录 make directory
mkdir dirname mkdir dir/newdir //在dir下创建一个newdir -
创建多级目录,如果"新目录"个数大于1个数量,就要设置"-p"参数
mkdir -p newdir/newdir/newdir //创建多级递归目录 mkdir -p dir/newdir/newdir //创建多级递归目录 mkdir -p dir/newdir/newdir/newdir -
(文件/目录)移动-改名字 操作 move
mv dir1 dir2 //dir1移动到dir2目录下,并改名字为“原名” mv dir1 dir2/newdir //dir1移动到dir2目录下,并改名字为“newdir” mv dir1 newdir //dir1移动到当前目录下,并改名字为“newdir” mv dir1/dir2 dir3/dir4 //dir2移动到dir4目录下,并改名字为“原名” mv dir1/dir2 dir3/dir4/newdir //dir2移动到dir4目录下,并改名字为“newdir” -
(文件/目录)复制-改名字 操作 copy
-
- 文件复制
cp file1 dir1 //file1被复制到dir1下,并改名字为“原名” cp file1 dir1/newfile //file1被复制到dir1下,并改名字为“newfile” cp dir1/file1 dir2/dir3 //file1被复制到dir3下,并改名字为“原名” cp dir1/file1 dir2/dir3/newfile //file1被复制到dir3下,并改名字为“newfile”
-
-
目录复制,统一设置-r参数 recursive递归地 (无视目录层次)
cp -r dir1 dir2 //dir1被复制到dir2下,并改名字为“原名” cp -r dir1 dir2/newdir //dir1被复制到dir2下,并改名字为“newdir” cp -r dir1/dir2 dir3/dir4 //dir2被复制到dir4下,并改名字为“原名” cp -r dir1/dir2 dir3/dir4/newdir //dir2被复制到dir4下,并改名字为“newdir” cp -r dir1/dir2 newdir //dir2被复制到当前目录下,并改名字为“newdir” -
删除(文件/目录)
rm file //删除文件 rm -r dir //删除目录 rm -rf filename //recursive force 递归、强制 删除文件 //-f force 避免 “进入目录、删除隐藏文件” 的提示 rm -rf / //kill you by your self
10. 文件操作
-
- 查看文件
cp /etc/passwd ./ //复制passwd文件到当前目录 cat filename //输出文件内容到终端 more filename //敲回车,逐行查看文件的内容 //不支持回看 //q键,退出查看 less filename //通过"上 下 左 右"键的方式,查看文档的各个部分内容 //支持回看,q键退出查看 head -n filename //查看文档的前n行内容 tail -n filename //查看文档的末尾n行内容 wc -l filename //计算文件行数
- 查看文件
-
- 创建文件
touch filename //创建一个文件
- 创建文件
-
- 给文件追加内容
echo 内容 >/>> 文件 echo dog > animal.txt //把dog内容以"覆盖写"方式追加到animal.txt文件中 //如果animal.txt文件不存在会"自动创建" echo htc >> order.txt //把htc内容以"纯追加"方式设置到order.txt文件中 //order.txt文件不存在,会自动创建
- 给文件追加内容
-
- 文件搜索
find 范围 -name "通配符" //文件名查找 find . -name "*.log" find 范围 -size 大小 //文件大小查找 find . -seze +10k find 范围 –mtime 时间 //修改时间查找 find . -mtime +3 //修改时间在3天以上 find . -mtime -3 //修改时间在3天内 find . -mtime 3 //修改时间恰好在3天前
- 文件搜索
11. 打包压缩
tar zxvf 文件 //拆包解压
tar zcvf 文件 //打包压缩
12. 磁盘统计
df //disk free缩写, 直接显示大小
df -h //human缩写,磁盘大小(适合阅读)
du 文件 //disk used缩写,统计文件大小
du -h 文件 //统计文件大小(适合阅读)
du -hs 目录 //统计单个目录大小
12. 用户操作(root)
- 用户:user
-
增加:add 修改:mod(ify) 删除:del(ete)
-
配置文件:/etc/passwd
-
wc -l /etc/passwd //查看当前有多少个用户
-
- 增加用户 useradd
useradd xiaogang //增加一个xiaogang用户,会创建一个同名的组 //没有设置用户的组别,就会创建同名组 useradd -g 组别编号 liming //创建liming用户,并设置其组别(避免创建同名组) useradd -u 用户编号 -g 组编号 -d 家目录 用户名- 修改用户 usermod
usermod -u 用户编号 -g 组编号 -d 家目录 -l 新名字 用户名 //如果修改家目录,需要手动创建(不同于增加用户)- 删除用户 userdel
userdel 用户名 // /etc/passwd的配置用户信息会删除(保留家目录,可以手动删除) userdel -r 用户名 // 用户信息 和 其家目录 都删除 -
-
13. 组别操作(root)
- 组别:group
-
配置文件:/etc/group
- 增加组别 groupadd
groupadd music //创建一个music组别- 修改组别 groupmod
groupmod -g 组编号 -n 新名字 组名- 删除组别 groupdel
groupdel 组名 //组下存在对应的用户信息,禁止删除
-
linux 根目录介绍
-
/bin
binary 二进制 许多“指令”对应的可“执行程序文件”目录 ls pwd init等等 -
/sbin super binary 超级的 二进制 许多“指令”对应的可“执行程序文件”目录 该目录文件对应指令都是"root"用户可以执行的指令 例如:init
-
/usr
unix system resource (unix系统资源文件目录) 该目录类似win系统的 C:/Program files 目录 该目录经常用于安装各种软件
软件安装完毕会形成对应的指令,该指令对应的可执行程序文件就存放在以下目录
/usr/bin
许多“指令”对应的可“执行程序文件”目录
/usr/sbin
root用户执行的指令 对应的 可“执行程序文件”目录
4. /dev device 系统硬件设备目录(linux系统所有的硬件都通过文件表示) 例如:/dev/cdrom是光驱 /dev/sda 是第一块scsi硬盘
-
/home 普通用户的"家目录" 给系统每增加一个“普通用户”的同时,都会在该目录为该用户设置一个文件目录 代表该用户的“家目录”,用户后期使用系统的时候会首先“进入”其家目录 家目录名字默认与当前用户名字一致 用户对家目录拥有绝对最高的权限。
-
/root 该目录是root管理员的家目录,root用户登录系统后首先进入该目录
-
/proc 内存映射目录,该目录可以查看系统的相关硬件信息
-
/var variable 可变的、易变的 该目录存储的文件经常会发生变动(增加、修改、删除) 经常用于部署项目程序(php)文件 /var/www/shop /var/www/book
-
/boot 系统启动核心目录,用于存储系统启动文件
-
/etc 系统主要配置文件目录 例如: /etc/passwd 用于存储用户信息的文件 /etc/group 用于存储组别信息的文件
-
/lib library 系统资源文件类库目录
-
/selinux secure enhanced linux 安全增强型linux 对系统形成保护 会对给系统安装软件时有干扰作用
vi编辑器
-
切换到编辑模式(四种方式) a: 光标后移一位 i: 光标和所在内容没有任何变化 o: 另起一个新行 s: 删除光标所在的一个字符 esc : 编辑"退回"到命令模式
-
尾行模式操作 :w 保存文档 :q 退出vi编辑器 :wq 保存并退出 //对文档没有操作权限,可以强制执行 :w! 强制保存 :q! 强制退出(不保存修改,直接强制退出) :wq! 强制保存并退出
:set number 或 :set nu 给编辑器设置行号
:set nonumber 或 :set nonu 取消行号设置
:数字 光标跳转到数字所在行
:/内容/ 或 /内容 在文档中寻找指定内容,给翻屏查找
小写n 下一个
大写N 上一个
//字符串替换操作,cont2去替换cont1内容
:s/cont1/cont2/ 替换光标当前行的"第一个"cont1为cont2
:s/cont1/cont2/g 替换光标当前行的"全部"cont1为cont2
:%s/cont1/cont2/g 替换“整个文档”的cont1为cont2
命名模式下的撤销操作
u 小写u
3. 命名模式操作 1) 光标移动 a.字符级移动 上(k) 下(j) 左(h) 右(l)键 b.单词级 w word下个单词首字母 b before上个(本)单词首字母 e end下个(本)单词尾字母 c. 行级 0 行首 $ 行尾 d. 段落级(内容之间有空白行) { 上个(本)段落首部 } 下个(本)段落尾部 e. 屏幕级(不翻屏) H 屏幕首部 L 屏幕尾部 1.向下翻页快捷键(下一页):Ctrl + f 2.向上翻页快捷键(上一页):Ctrl + b
f. 文档级
G 文档尾行
1G 文档首行
nG 文档第n行
2) 删除内容
dd 删除光标当前行
ndd 从光标当前行向后删除n行内容
x 删除光标所在的字符
cw 从光标所在位置删除至单词结尾,并进入“编辑”模式
(该方式方便删除“单个单词”)
3) 复制内容
yy 复制光标当前行
nyy 从光标当前行向后复制n行内容
p 对复制(删除)好的内容进行粘贴操作
4) 快捷操作
u undo撤销
r 替换单个字符
J 合并上下两行
.点 重复执行上个指令
Linux命令行指令
-
bc 开启算术 可以了逻辑运算符 5%2 显示 1
-
scale 显示逻辑运算结果保留小数点后几位 scale=3 开启并显示3位小数 1/3 显示 .333
-
tab 接在一串命令的第一个字的后面,则为"命令补全" 接在一串命令的第二个字的后面,则为"文件补全"
-
ctrl + c : 如果输入错误的命令或参数,导致这个命令或程序会在系统下不停的运行
-
ctrl + d : 表示键盘输入结束,可取代exit的输入
-
ctrl+u ctrl+k 分别代表光标处往前和光标处往后删除
-
ctrl+a ctrl+e 分别代表把管标移动到最前和最后
查找指令
- find
find <指定目录> <指定条件> <指定动作> 直接搜索文件夹名 例如 odshen find / -name odshen -d
- locate
locate /etc/sh //搜索etc目录下所有以sh开头的文件。
- whereis
whereis grep //用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)
- which
which grep //看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令
- type
type cd //type命令其实不能算查找命令,它是用来区分某个命令到底是由shell自带的,还是由shell外部的独立二进制文件提供的,系统会提示,cd是shell的自带命令(build-in)