Linux简介(了解)
Linux介绍
Linux是类UNIX计算机的统称
Linux操作系统的内核也是Linux
Linux是由芬兰大学生Linux Torvalds于1991年编写的
Linux这个词本身只是表示Linux内核,但实际上人们已经习惯用Linux来形容整个基于Linux内核并且使用gun工程各种工具和数据库的操作系统
Linux发行版组成
Linux内核
应用软件
一些GUN程序库和工具
Emacs集成开发环境和文本编辑器
GCC语言编辑器
GNOME
命令行shell
图形桌面环境
KDE
GNOME
unity
一些办公套件
openoffice
编译器
gcc
g++
文本编辑器到科学工具的应用软件
vi
gedit
Linux版本
商业公司维护的发行版本Redhat系列
RHEL
CentOS
FedoraCore
社区组织的维护版本 Debian系列
Debian
Ubuntu
Linux目录结构
根目录结构
dev__设备文件所在目录
etc__包含了当前操作系统用户所有配置的相关信息
home__当前操作系统所安装的用户的主目录
lib__操作系统使用的库文件以及相关的配置都放在此目录下
mnt__手动挂载目录
media__系统自动挂载目录
usr__unix软件资源包管理目录,存放的是当前用户下的一些东西
bin__Linux操作系统下可执行的系统级的二进制命令
sbin__超级用户需要用到的一些二进制命令存储在该目录
boot__系统开机时需要加载的一些文件和配置
lost+found__存放系统错误产生的文件碎片,方便用户查找和恢复
pioc__内核提供的一个接口,主要用来存储系统统计信息
root__root用户的宿主目录
run__存放系统运行时需要的一些文件
目录路径介绍
绝对路径__从根目录开始描述的路径,也是从/开始
相对路径
从当前位置开始描述的路径
.表示当前目录
..表示当前目录的上级目录
两个临近目录直接进行切换 命令:cd -
robertohuang@rodertohuang:~$
1.第一个robertohuang:当前登录的用户
2.@:英文at,在的意思
3.第二个rodertohuang:主机名
4.~:当前工作目录的位置,宿主目录
5.$:表示当前登录的用户为普通用户,如果为#则是超级用户
Linux命令
文件和目录
tree
以树状形式显示当前目录
需要安装软件:sudo yum -y install tree
Is__查看指定目录下所有文件和目录信息
-a(all)__列出当前目录下所有文件内容
-R(precursive)__同时列出所有子目录
-l__除了文件名之外,还将文件的权限,所有者,文件大小等信息详细列出来
cd__进入指定目录(cd+path)
相对路径-> cd ./robertohuang/tomcat
绝对路径-> cd /home/robertohuang/tomcat
..->当前目录的上一级
.->当前目录
进入家目录(/home/robertohuang)三种方式__cd__cd ~__cd /home/robertohuang
pwd__查看当前所在目录(printf working directory的缩写)
创建/删除目录
创建:mkdir +目录名
mkdir world ->创建world目录
创建/删除目录of mkdir -p world/a/b ->创建多级录加参数-p
删除:rmdir +目录名__只能删除空目录,使用频率不高
创建/删除文件__创建touch +文件名
CP
拷贝文件__cp file1.txt file2.txt ->将file1.txt中的内容拷贝到file2.txt er -
文件不存在创建文件
文件存在,覆盖原文件
拷贝目录__cp-r dir1 dir2 ->将目录dir1中的内容拷贝到dir2中__dir2 目录不存在创建目录
scp命令
scp:super copy的缩写
使用该命令的前提条件__目标主机已经成功安装openssh-server
使用格式
scp -r目标用户名@目标主机IP地址:/目标文件的绝对路径/保存到本机的绝对(相对)路径
scp -r目标用户名@目标主机IP地址:/目标文件的绝对路径/保存到本机的绝对/相对路径
scp -r [email protected] 68.29.128:/home/usertest/test /home/robertohuang/test
拷贝目录需要加参数-r
查看文件内容
cat__cat file.txt ->将文件内容一次性输出到终端,如果文件太长,无法再终端全部显示
more
more+文件名
文件内容分页显示到终端,但是只能一直向下浏览, 不能回退
相关操作
回车:显示下一行
空格:显示下一 页
ctrl+c或q:退出
less
less+文件名
文件内容分页显示到终端,可以自由上下浏览
相关操作
回车:显示下一行
空格:显示下一页
ctrl+p 或↑:滚动到上一行
ctrl+n或↓:滚动到下一行
q:退出
head
从文件头部开始查看前x行的内容
head e head -5 hello.c -->查看hello.c文件前五行的内容
如果没有指定行数,默认显示前10行内容
tail
从文件尾部开始查看后x行的内容
tail -5 hello.c -->查看hello.c文件后五行的内容
如果没有指定行数默认显示后10行内容
in
软链接
相当于Windows下快捷方式
注意事项
创建软链接,源文件要使用绝对路径
软连接大小:源文件 +路径的总字节数
目录可以创建软链接
示例:In -s /home/robertohuang/a.txt (源文件名+绝对路径) a.test (软链接的名字)
硬链接
注意事项
以文件副本的形式存在,但不占用实际空间
不允许给目录创建硬链接
硬链接只有在同一个文件系统中才能创建
硬链接能够同步更新
linux下每一个文件都对应一 个Inode,创建硬链接后两个文件的Inode是相同的
查看文件的Inode:stat a.txt
文件创建硬链接后,硬链接计数+ 1,删除一个硬链接硬链接计数-1
文件或目录属性
wc
查看文件的字数、字节数、行数
wca.txt 结果: 7 23 120 a.txt
参数
-c:只显示字节数
-l:只显示行数
-w:只显示字数
od__查看二进制文件信息
du__查看某个录的大小(disk use的缩写)
df__查看磁盘的使用情况(disk free的缩写)
which
查看指定命令所在的路径
which指令会在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果
文件权限,用户用户组
whoami__查看当前登录用户
chmod
修改文件访问权限
修改方法
文字设定法
chmod [who] [+|-丨=] [mode]文件名
操作对象[who]
u --用户(user)
g--同组用户(group)
o--其他用户(other)
a--所用用户(all) [默认]
操作符[+-=]
+ --添加权限
- -- 取消权限
= --赋予给定权限并取消其他权限
权限[mode]
r--读
w--写
x--执行
例chmod u + wx file.txt
数字设定法
数字表示的含义
0 --没有权限(-)
1--执行权限(x)
2--写权限(w)
4--读权限(n)
操作符[+-=]
+ --添加权限
- -- 取消权限
= --赋予给定权限并取消其他权限(默认为=)
例:chmod 777 file.txt
chown
将指定文件的拥有者改为指定的用户或组(change owner的缩写)
用法
chown +文件所属用户+文件或目录名__chown robertohuang text.txt
chown +文件所属用户:文件所属组+文件或目录名__chown robertohuang:robertohuang text.txt
chgrp
改变文件或目录的所属群组
用法
chgrp +用户组+文件或目录名
chgrp robertohuang text.txt
查找和检索
find
按文件名查询:-name
find+路径+-name+文件名
find /home/robertohuang name a.txt
按文件大小查询: -size d
find+路径+-size+范围
范围
大于:+表示-- +100k
小于:-表示-- -100k
等于:不需要添加符号-- 100k
大小
M必须大写
k必须小写
例子
等于100k的文件: find ~/ - size 100k
大于100k的文件: find ~/ -size +100k
大于50k小于100k的文件: find ~/ -size +50k -size -100k
按文件类型查询: -type d
find +路径+ -type +类型__类型
1.普通文件类型用f表示而不是一
2.d->目录
3.1->符号链接
4.b-> 块设备文件
5.c->字符设备文件
6.s-> socket文件,网络套接字
7.p->管道
例子:find /home/robertohuang -type d
grep__按文件内容查找
参数-R
grep-r +“查找的关键字”+ 路径__grep -r"main void" /home/robertohuang
压缩包管理
.gz格式
压缩.gzip命令
压缩过程中不保留源文件
不能对目录进行压缩
不能对多个文件进行打包压缩
解压缩.gunzip命令
.bz2格式
压缩.bzip2
通过使用参数-k(keep)来保留源文件
不能对目录进行压缩
不能对多个文件进行打包压缩
解压缩bunzip命令
zip
打包__zip-r +打包之后的文件名(dir.zip) + (打包的目录)dir
解包
unzip dir.zip
使用参数- d来解压到指定目录unzip dir zip -d /home/robertohuang/test
tar
该命令可以只打包不压缩
通过添加参数,来完成文件的压缩和解压
进程管理
who
查看当前在线用户的情况
登录的用户名
使用的设备终端
登陆到系统的时间
ttu设备
tty1 - tty6表示文字界面 ctrl + alt + [F1-F6]
tty7图形界面 子主题1 ctrl+alt+F7
ps
查看整个系统内部所运行的进程状况
涉及的参数
对显示的进程过滤 ps aux grep XXX
grep查询是需要占用一个进程的,所有结果> 2才能说明查询结果存在
如果结果有一条,表示没有查询的进程
查询结果中PID表示进程ID
kill
用来终止指定的进程(terminate a process)的运行
查看信号编号kill-|
杀死进程kill -9 89899 [PID-进程标识号] 向当前进程发送了9号信号( SIGKILL )
env
查看当前进程环境变量
环境变量
当前系统下用户的配置路径信息格式为键值对: key=value : value(多个值之间用:分隔)
PATH:该环境变量中记录着shell命令解析器去查找命令的目录位置,从前往后的顺序查找
LANG:语言以及字符集
top
相当于windows下的任务管理器 【文字版 不能翻页】
ifconfig
获取网络接口配置信息,还可以修改这些配置
获取网络接口信息
ping
测试与目标主机的连通性
命令格式
ping [参数] [住机名或IP地址]
-C数目:在发送指定数目的包后停止。
参数
-i秒数:设定间隔几秒送一个网络封包给一 台机器,预设值是一秒送一次
nslookup
需要先安装nslookup:yum -y install bind-utils
查看服务器域名对应的IP地址
一般访问网站都是使用域名,如:www.baidu.com,使用该命令就可查看百度所有服务器的IP地址
创建用户
adduser +户名
useradd -s /bin/bash -g usertest -d /home/usertest -m usertest
-s:指定新用户登陆时shell类型
-g:指定所属组,该组必须已经存在
-d:用户家录
-m用户家目录不存在时,自动创建该目录
设置用户组
groupadd usertest
deluser +用户名
删除用户
userdel -r usertest选项 -r的作用是把用户的主录一起删除
切换用户
su+户名
sudo passwd +用户名( luffy )
设置密码
sudo passwd +用户名(luffy)
passwd root
passwd 设置roo密码
退出登录用户 exit
清屏clear
Ctrl+ l
查看帮助命令。
man +命令,如man Is
查看 alias
设置或查看别名
设置
alias pag= ps aux| grep'
需要长久有效需要去设置配置文件: bashrc
echo
在显示器上显示数据
普通数据: echo字符串
显示环境变量: echo $PATH
显示上一次程序退出值: echo $?
$:取值
? :最近一次程序退出时的返回值
关机重启
poweroff
reboot 参 -t<秒数> :送出警告信息和删除信息之间要延迟多少秒 -k:只是送出信息给所有用户,但不会实际关机
-r:shutdown之后重新启动
-h:将系统关机
-n:不调用init程序进行关机,而由shutdown自己进行
-f:重新开机时,跳过fsck指令,不检查档案系统
- F:重新开机时,强迫做fsck检查
-c:将已经正在shutdown的动作取消
shutdown
shutdown -r now立刻重新开机
shutdown -h now立刻关机
shutdown -k now 'Hey! Go away! now...发出警告讯息,但没有真的关机
shutdown -t3 -r now立刻重新开机,但在警告和删除processes之间,延迟3秒钟.
例子:
shutdown -h 10:42 'Hey! Go away!"' 10:42分关机
shutdown -r 10 'Hey! Go away!" 10分钟后关机
shutdown -c将刚才下的shutdown指令取消,必须切换至其它tty,登入之后,才能下此一指令
shutdown now切换至单人操作模式(不加任何选项时)
free 查看内存使用情况