Linux基础入门
Linux中的目录结构
值得注意的是:Linux中,一切都是文件。
我们常使用的命令也是一个个文件,就连设备驱动也是文件。
- bin: (binaries)存放二进制可执行文件 [重点]
- sbin: (super user binaries)存放二进制可执行文件,只有root才能访问
- etc: (etcetera)存放系统配置文件 [重点]
- usr: (unix shared resources)用于存放共享的系统资源 [重点]
- home: 存放用户文件的根目录 [重点]
- root: 超级用户目录 [重点]
- dev: (devices)用于存放设备文件
- lib: (library)存放跟文件系统中的程序运行所需要的共享库及内核模块
- mnt: (mount)系统管理员安装临时文件系统的安装点
- boot: 存放用于系统引导时使用的各种文件
- tmp: (temporary)用于存放各种临时文件 [重点]
- var: (variable)用于存放运行时需要改变数据的文件
Linux中的常用命令
Linux中的命令格式:
命令 -选项 参数
如: ls -l /usr
注意:在linux中命令严格区分大小写
ls命令(显示文件和目录列表)【list】
- 常用参数:
- -l:(long)长格式显示文件和目录信息
- -a:(all)显示所有文件和目录(包含隐藏文件和目录)
- -R:递归显示指定目录下的文件清单,即会显示指定目录分支内各子目录中的文件清单
操作文件命令(重点)【毕竟Linux中一切皆是文件】
- cd:用来切换目录
- pwd:显示当前工作目录(print working directory)
- touch:创建空文件
- mkdir: 创建目录(make directoriy)
- -p 父目录不存在情况下先生成父目录 (parents)
- 例如:mkdir -p runoob2/test
- 若 runoob2 目录原本不存在,则建立一个。
- cp: 复制文件或目录(copy)
- cp 文件名 目录 复制文件到指定目录中
- cp -r 目录 目录 复制指定目录到指定目录中
- -r 递归处理,将指定目录下的文件与子目录一并拷贝(recursive)
- mv: 移动文件或目录、文件或目录改名(move)
- mv 文件名 新文件名 => 文件改名
- mv 文件名 目录名 => 文件移动
- mv 目录名 不存在目录名 => 目录改名
- mv 目录名 已存在目录名 => 目录移动
- rm: 删除文件(remove)
- -r 同时删除该目录下的所有文件(recursive)
- -f 强制删除文件或目录(force)
- cat: 显示文本文件内容 (catenate) 用来展示少量内容
- echo: 输出命令
- echo hello Linux 说明:用来向屏幕输出一句话
- echo hello Linux >> aa.txt 说明:将这段内容输入到文件中
网络相关命令
- ip addr:查看IP地址
- 简化写法:ip a
- ping:测试网络连通性
tar命令(打包,解压)
-c 建立一个压缩文件的参数指令(create)
-x 解开一个压缩文件的参数指令(extract)
-z 是否需要用 gzip 压缩
-v 压缩的过程中显示文件(verbose)
-f 使用档名,在 f 之后要立即接档名(file)
通常组合使用:
tar -cvf aaa.tar file1.txt file2.txt 将file1和2打包成aaa.tar
tar -zcvf aaa.tar.gz file1.txt file2.txt 将file1和2打包成aaa.tar并压缩
tar -zxvf aaa.tar.gz file1.txt file2.txt 将aaa.tar.gz解压
systemctl 服务命令
systemctl status|start|stop|restart 服务名 例如:mysqld firewalld(防火墙) network(网络)
systemctl status 服务名 说明:查看某个服务的运行状态
systemctl start 服务名 说明:启动某个服务
systemctl restart 服务名 说明:重启某个服务
systemctl stop 服务名 说明:停止某个服务
进程相关命令
1.ps 查询在当前控制台上运行的进程
ps -aux 说明:查询系统中所有运行的进程,包括后台进程,其中参数a是所有进程,参数x包括不占用控制台的进程,参数u显示用户。
ps -ef 说明:查询系统中所有运行的进程,包括后台进程,而且可以显示出每个进程的父进程号。
ps -aux|grep 进程 服务名 关键字 tomcat 重点
2.top 命令 动态显示系统进程
3.kill 杀死进程
kill 3029 说明:上述命令中3029是进程号;一般在执行kill命令之前,先用ps或pstree来查询一下将要被杀掉的进程的进程号。
kill -9 3029 说明:强制终止3029号进程的运行,其中参数-9代表强制的意思,实际上kill命令是向该进程发送信号,
该进程接到信号后决定是否停止运行,有些守护进程必须要收到参数9才终止运行。
vi命令
vi / vim是Unix / Linux上最常用的文本编辑器而且功能非常强大。
常用命令:
i 在光标前插入
I 在光标当前行开始插入
a 在光标后插入
A 在光标当前行末尾插入
o 在光标当前行的下一行插入新行
O 在光标当前行的上一行插入新行
----------------重点---------------------------
:set nu 显示行号
:set nonu 取消行号
gg 到文本的第一行
G 到文本的最后一行
:n 到文本的第n行
------------------重点-------------------------
u undo,取消上一步操作
Ctrl + r redo,返回到undo之前
-------------------重点------------------------
Shift+ zz 保存退出,与“:wq”作用相同
:q 退出不保存
:q! 强制退出不保存
:wq 保存退出
:wq! 强制保存退出
软件相关命令
-
RPM命令:
RPM是RedHat Package Manager(RedHat软件包管理工具)的缩写,这一文件格式名称虽然打上了RedHat的标志,但是其原始设计理念是开放式的,现在包括RedHat、CentOS、SUSE等Linux的分发版本都有采用,可以算是公认的行业标准了。RPM文件在Linux系统中的安装最为简便,
rpm命令 常用参数: i:安装应用程序(install) e:卸载应用程序(erase) vh:显示安装进度;(verbose hash) U:升级软件包;(update) qa: 显示所有已安装软件包(query all) 例子:rmp -ivh gcc-c++-4.4.7-3.el6.x86_64.rpm rpm -ivh xxxx.rpm rpm -evh xxxx.rpm rpm -Uvh xxx.rpm rpm -qa
-
YUM命令
Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE、CentOS中的Shell前端软件包管理器。基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
例子: yum install gcc-c++ yum remove gcc-c++ yum update gcc-c++ yum install|remove|update 依赖名称
使用YUM命令必须连接外部网络
用户和组相关命令
1.查看当前用户:whoami
2.查看登录用户:who
-m或am I 只显示运行who命令的用户名、登录终端和登录时间
-q或--count 只显示用户的登录账号和登录用户的数量
3.退出用户: exit
4.添加、删除组账号:groupadd、groupdel
5.添加用户账号:useradd
-g 指定组名称 说明:如果创建用户的时候,不指定组名,那么系统会自动创建一个和用户名一样的组名。
6.设置用户密码:passwd [用户名]
7.su 切换用户
su root
权限相关命令
Linux文件有
三种
典型的权限,即r读权限、w写权限和x执行权限
。在长格式输出中在文件类型的后面有9列权限位,实际上这是针对不同用户而设定的。r=4,w=2,x=1
all = user + group + other
chmod u+rwx,g+rwx,o+rwx 文件名
字母法:chmod u/g/o/a +/-/= rwx 文件
[ u/g/o/a ] 含义
u user 表示该文件的所有者
g group 表示与该文件的所有者属于同一组( group )者,即用户组
o other 表示其他以外的人
a all 表示这三者皆是
[ +-= ] 含义
+ 增加权限
- 撤销权限
= 设定权限
rwx 含义
r read 表示可读取,对于一个目录,如果没有r权限,那么就意味着不能通过ls查看这个目录的内容。
w write 表示可写入,对于一个目录,如果没有w权限,那么就意味着不能在目录下创建新的文件。
x excute 表示可执行,对于一个目录,如果没有x权限,那么就意味着不能通过cd进入这个目录。
数字法: 4读 2写 1执行
chmod 777 文件名 => 这个文件,user,grup,other都可以读,写,执行。