1、命令解析器
bash —— 对应于linux操作系统
shell —— 对应于unix操作系统
1|Shell既是一种命令语言,又是一种程序设计语言。作为命令语言,它交互式地解释和执行用户输入的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支。
2|Bash (GNU Bourne-Again Shell) 是许多Linux发行版的默认Shell 。事实上,还有许多传统UNIX上用的Shell,例如tcsh、csh、ash、bsh、ksh等等,Shell Script大致都类同,当您学会一种Shell以后,其它的Shell会很快就上手,大多数的时候,一个Shell Script通常可以在很多种Shell上使用。
2、Linux快捷键
(1)智能提示:TAB键
Tab命令:主要是针对忘记命令如何拼写的情况而设置的解决办法,如果有多个命令符合则可以双击显示出所有符合的命令,即命令和路径能够通过此方法有效地补齐。
(2)其他常用快捷键
①查看历史命令(历史命令切换):history
②历史记录列表向上移动: CTRL + P 或者直接通过方向键控制
③历史记录向下滚动: CTRL + P 或者直接通过方向键控制
④光标往前移动: CTRL + B 或者直接通过方向键控制
⑤光标往后移动: CTRL + F 或者直接通过方向键控制
⑥光标移动到首位置: CTRL + A
⑦光标移动到末位置: CTRL + E
⑧删除光标前的字符: CTRL + H 或者Backspace键
⑨删除光标后字符: CTRL + D 或者delete键
(注:光标后的字符为光标覆盖的字符)
⑩删除光标前所有内容: CTRL + U
(清屏: 输入clear命令或者CTRL + L)
3、Linux目录结构
(1)进入目录:cd + / + 目录名称
(2)常用目录
1|根目录:/ 根目录是指逻辑驱动器的最上一级目录,根目录在文件系统建立时已被创建。
2|/bin目录: 这个目录存放着最常用的使用命令(并不是所有命令)。
3|/boot目录: 这里存放的是启动linux时使用的一些核心文件,包括一些链接文件和镜像文件。
4|/dev目录: 这里存放的是linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同的。
5|/etc目录: 这个目录用来存放所有的系统管理所需要的配置文件和子目录。
6|/home目录: 用户主目录,在Linux中,每个用户都有一个自己的目录,一般该用户是以自己的账号命名的。
7|/lib目录: 这个目录里存放着系统最基本的动态链接共享库,其作用类似于windows里面的oll文件,几乎所有的应用程序都需要用到这共享库。
8|/media目录: Linux系统会自动识别一些设备,如U盘,光驱等,当识别后,Linux会把识别的设备弄到这个目录下。
9|/mnt目录: 系统提供该目录为为了让用户临时挂在别的文件系统。
10|/root目录: 该目录为系统管理员,也称作超级权限者用户主目录。
11|/user目录: 这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于Windows下面的program.file目录。
(3)用户目录
①基本概念
1|相对路径: 相对于当前目录而言。
2|绝对路径: 从根目录开始写,例如:/home/itcast/aa。
3| . :表示当前目录。
4| .. :表示当前目录的上一级目录。
5| - :表示在邻近的两个目录直接切换,例如cd - 。
②详细说明(lg@ubuntu:~$)
<1> lg: 表示当前登录用户。
<2> ubuntu: 表示主机名。
<3> ~: 表示用户的家目录。
<4> $: 表示普通用户。
<5> #: 表示超级用户。
4、ls和tree的使用
(1)显示的颜色对应文件类型
1| 白色 对应于 普通文件
2| 绿色 对应于 可执行文件
3| 蓝色 对应于 目录
4| 红色 对应于 压缩文件
5| 青色 对应于 链接文件
6| 黄色 对应于 设备文件(block: 块 char: 字符 fifo: 管道)
7| 灰色 对应于 其他文件
(2)ls的使用
1|ls: 查看该目录下所有子目录和子文件。
2|ls-a: 查看家目录下所有内容(前面带点为隐藏目录和文件)。
3|ls-la: 查看详细信息。
(3)tree的使用
①需要手动输入命令:sudo apt-get install tree来安装tree。
②功能: 以树状的形式列出目录及文件。
5、文件和目录的创建
(1)在目录之间进行切换
1| cd + 目录名 : 进入该目录。
2| 回到家目录的三种方式:cd /home/lg(用户名) 、 cd ~ 、 cd
3| 查看当前所在目录: pwd命令
(2)目录的创建和删除
1| 目录的创建
mkdir + 目录名(创建单级目录)
mkdir + 目录名1/目录名2/目录名3/ -p(创建多级目录)
2| 目录的删除
rmdir + 目录名(只能删除空目录)
rm + -r + 目录名 或者 rm + 目录名 -r (表示递归删除目录)
(3)文件的创建和删除
1| 文件的创建
touch + 文件名(如果文件存在则修改创建的时间)
2| 文件的删除
rm + 文件名
(4)文件和目录的拷贝
1| 文件的拷贝
cp + 文件A + 文件B(把文件A的内容拷贝到文件B的内容中去)
2| 目录的拷贝
cp + 目录A/目录B(目录B如果存在,则放在目录B下)
(5)查看文件的内容
1| cat + 文件名
2| more + 文件名 (回车查看下一行,空格查看下一页)
3| head + 文件名 或者 head + -c + 文件名(c: 表示查看文件首行数)
4| tail + 文件名 或者 tail + -c + 文件名 (c: 表示查看文件末行数)
5| less + 文件名 (回车查看下一行,空格查看下一页)
(6)MV命令
1| 文件的改名
mv + 旧文件名 + 新的文件名
2| 文件的移动
mv + 旧文件名 + 移动到的文件名
(7)创建软连接和硬链接
1| 创建软连接
软连接是产生一个特殊的文件夹来指向另一个文件,也可以用于目录。
ln -s /home/用户名/目录A/文件B + soft (创建软连接相当于快捷方式,一旦文件B被删除,软连接就不能使用了)
创建软连接必须使用绝对路径。
2| 创建硬链接
硬链接相当于一中映射。
ln + 文件名 + 需要的文件名(硬链接不占用磁盘空间,只为文件做备份)
(8) 查看命令所用路径
1| which 命令
which + 要查看的命令(例如: which + ls)
6、查看和修改文件的权限
(1)查看当前登录用户
输入命令: whoami
(2)修改文件权限
1| 文字法
chmod [who] +/-/= [mode]
<1> who
①文件所有者:u
②文件所属组:g
③其他人:o
④所有人:a
<2> +/-/=
① +:添加权限
② -:减少权限
③ =:覆盖权限
<3> mode
① r:代表读权限
② w:代表写权限
③ x:代表执行权限
2| 数字法
<1> -:代表没有权限
<2> r:用4代表读权限
<3> w:用2代表写权限
<4> x:用1代表执行权限
7、修改文件所有者和所属组
(1)chown + 新的所有者 + 文件名(有权限的时候)
(2)sudo + chown + 新的所有者 + 文件名 (无权限的时候)
(3)sudo + chown + 新的所有者:新的所属组 + 文件名
(4)sudo + chgrp + 新的所属组 + 文件名(只修改文件组)
8、文件的查找和检索
(1)文件的查找
1| 通过文件名查找
find + 查找的目录 + -name + "文件的名字"
2| 通过文件大小查找
find + 查找的目录 + -size + +10k(或者-10k) (+10k:筛选文件大小大于10k的 -10k:筛选文件大小小于10k的) ——————必须是小写的k或者是大写的M
3| 通过文件类型查找
find + 查找的目录 + -type + d/f/b/c/s/p/l
① 普通文件:f
② 目录:d
③ 链接符号:l
④ 块设备:b
⑤ 字符设备:c
⑥ 管道:p
(2)文件的检索
grep + -r + “查找的内容” + 查找路径
9、软件的安装和卸载
(1)在线安装
sudo + apt-get + install + 软件名
(2)软件移除
sudo + apt-get + remove + 软件名
(3)更新软件列表
sudo + apt-get + update
(4)清理所有软件安装包
sudo + apt-get clean
(5)deb包安装
sudo + dpkg + -i + xxx.deb
(6)deb包删除
sudo + dpkg + -r + xxx
10、U盘的挂载和卸载
1| U盘的挂载
<1> 系统默认挂载在/media目录中
<2> 手动最好挂载在/mnt
<3>sudo + 设备名 -l (查看设备名)
<4> 挂载方式: mount + 设备名 + /mnt
2| U盘的卸载
sudo + umount + /media/用户名/ESD-USB
sudo + umount + /mnt
11、压缩包管理
(1)gzip和bzip2
1| gzip
gzip + *.txt (创建压缩包) gunzip + *.gz (还原压缩包也称解压缩) ——————不能压缩目录
2| bzip2
bzip2 + -k + *.txt (创建压缩包) bunzip + *.bz2 (还原压缩包也称解压缩) ——————不能压缩目录
(2)tar
1| 相关参数
c:创建 x: 释放 v: 显示提示信息-压缩解压缩-可以省略 f:指定压缩文件名字 z:使用gzip方式压缩文件 j:使用bzip2的方式压缩文件
2| 压缩
<1> tar + zcvf + 压缩包名字.tar.gz + 文件
<2> tar + jcvf + 压缩包名字.tar.bz2 + 文件
3| 解压缩
<1> tar + zxvf + 压缩包 或者 tar + zxvf + 压缩包 + -C 压缩到的目录 ——————tar.gz
<2> tar + jxvf + 压缩包 或者 tar + jxvf + 压缩包 + -C 压缩到的目录 ——————tar.bz2
(3)rar
1| 参数
压缩 : a 解压缩: x
2| 压缩
rar + 生成的压缩包文件名字 + 压缩的文件和目录
3| 解压缩
rar + x + 压缩文件名或目录
(4)zip
1| 参数
-r (压缩目录需要添加)
2| 压缩
zip + 生成的压缩文件名字 + 压缩的文件或目录
3| 解压缩
unzip + 压缩包的名字
unzip + 压缩包的名字 + -d + 解压到的目录
12、Ps的命令和使用
1| 查看当前用户:who
2| 查看没有终端的应用程序:ps + aux
3| 查看更详细信息:ps + au
4| 查看当前操作系统中所有用户:ps + a
5| PID:代表启用程序对应进程ID
6| TTY:代表终端
13、Kill命令和使用
1| 终止命令:kill
2| 查看信号:kill + -l
3| 杀死进程:kill + -信号序号 + 进程id
4| 查询某一些进程:ps aux | grep xxx 使用管道
14、网络相关命令
1| ifconfig
eth0:代表网卡(第一块)
lo: 回环地址
2| ping + ip地址 ——————链接ip地址
3| ping + ip地址 + -C + 行数显示数
4| nslookup + 域名 ——————域名对应的IP地址
15、用户管理
(1)创建用户
1| sudo + adduser + 用户名 ————创建用户
2| su + 用户名 ————进入用户 exit ————退出
3| sudo + useradd -s /bin/bash
sudo + useradd -g Robin
sudo + useradd -d /home/Robin
sudo + useradd -m Robin (Robin为用户名)
4| 创建用户组
sudo + groupadd + 新的用户名
5| 修改密码
sudo + passwd + 新的用户名
6| 修改当前用户密码
passwd
(2)删除用户
1| sudo + deluser + 删除的用户名
2| sudo + userdel + -r + 删除的用户名(效果更好)
16、ftp服务器配置
vsftpd ———— ftp服务器的搭建
作用:负责文件上传和下载
(1)服务器端
1| 修改配置文件
ls -l vsftpd.conf ——> gedit + 文件名 ——> sudo vi + 文件名 (打开配置文件)
2| 重启服务
sudo service + 文件名 + restart
(2)客户端
1| 实名用户登录
ftp + IP(服务器IP)
输入用户名
输入密码
(退出:bye)
2| 文件的上传和下载
上传:put + 文件名
下载:get + 文件名
3| 匿名用户登录
ftp + IP(服务器IP)
用户名:anonyaous(固定值)
密码:无
注意:
①不允许匿名用户在任意目录直接进行切换
②只能在一个指定的目录范围内工作
③需要在ftp服务器上创建一个匿名用户 ———— 匿名用户的根目录
4| lftp客户端登录ftp服务器
<1>匿名登陆
lftp + 服务器IP + 回车
login
<2>实名登录
lftp + username@127.0.0.1
输入服务器密码
<3>操作命令
put:上传文件
mput:上传多个文件
get:下载文件
mget:下载多个文件
mirror:下载整个目录及其子目录
mirror + -R:上传整个目录及其子目录
17、nfs服务器的搭建
(1)服务器安装
sudo + apt-get + install + nfs-kernel-server
(2)服务器端
1| 创建共享目录
mkdir + 目录名 + -p
2| 修改配置文件
vi + /etc/export
增加: /home/用户名/NfaShare *(rw[只写],sync) 或者 /home/用户名/NfaShare *(ro[只读],sync)
3| 重启服务
sudo + service + nfs-kernel-server restart
(3)客户端
sudo + mount +IP:共享目录名 ——————客户端访问共享目录
18、ssh服务器
(1)安装
sudo + apt-get + install + openssh-server
(2)服务器端
无
(3)客户端
1| 远程登陆
ssh + 用户名@服务器IP
2| 退出登录
logout
19、scp命令
(1)安装
sudo + apt-get + install + openssh-server
(2)功能
跨越主机拷贝
(3)超级拷贝
scp + -r + 目标用户名@目标主机IP地址:/目标文件绝对路径/保存到本机绝对(相对路径)
20、其他命令和关机命令
(1)其他命令
1| 查看手册:man man
2| 在屏幕上显示字符串:echo
3| 重启:reboot
4| poweroff:关闭电源