Linux目录结构
➢ /bin (/usr/bin 、 /usr/local/bin) • 是Binary的缩写, 这个目录存放着最经常使用的命令 ➢ /sbin (/usr/sbin 、 /usr/local/sbin) • s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。 ➢ /home • 存放普通用户的主目录,在Linux中每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。 ➢ /root • 该目录为系统管理员,也称作超级权限者的用户主目录。 ➢ /lib • 系统开机所需要最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。 ➢ /lost+found • 这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。 ➢ /etc • 所有的系统管理所需要的配置文件和子目录 ➢ /usr • 这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似与windows下的program files目录。 ➢ /boot • 这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件,自己的安装别放这里 ➢ /proc • 这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。 ➢ /srv • service缩写,该目录存放一些服务启动之后需要提取的数据。 ➢ /sys • 这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统 sysfs 。 ➢ /tmp • 这个目录是用来存放一些临时文件的。 ➢ /dev • 类似于windows的设备管理器,把所有的硬件用文件的形式存储。 ➢ /media • linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下。 ➢ /mnt • 系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将外部的存储挂载在/mnt/上,然后进入该目录就可以查看里的内容了。 ➢ /opt • 这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。 ➢ /usr/local • 这是另一个给主机额外安装软件所摆放的目录。一般是通过编译源码方式安装的程序。 ➢ /var • 这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。
Linux常用命令
切换目录命令
① 格式:cd 目录名 语义:切换到某一目录下 ② 格式:cd .. 语义:切换到上一级目录 ③ 格式:cd / 语义:切换到根目录 ④ 格式:cd - 语义:切换到上一个所在目录 ⑤ 格式:pwd 语义:显示当前所在目录
列出文件列表
ls(list) 是一个非常有用的命令,用来显示当前目录下的内容。配合参数使用,能以不同的方式显示目录内容。 格式:ls [参数] [路径或文件名] 如下: ① ls 显示除隐藏文件的目录内容 ② ls -a 显示所有目录内容(包含隐藏内容) ③ ls -l 显示带权限的所有目录内容 可以缩写为ll 补充: clear 清屏 ctrl+l 清屏 一般用l直接用ll显示当前文件下的内容
目录的创建和删除
mkdir(make directory)命令可用来创建子目录。 常见: ① mkdir 目录名 在当前目录下创建某一目录 ② mkdir -p 目录1/目录2 级联创建目录1和目录2 rmdir(remove directory)命令可用来删除"空"的子目录 rmdir 目录0 删除目录0 删除一个文件用 rm -rf 目录名(文件名)
文件查看
cat 用于显示文件的内容。格式:cat [参数] <文件名> 例如: cat xx.conf
more 一般用于要显示的内容会超过一个画面长度的情况。按空格显示下一个画面。回车显示下一行内容。按q键退出查看 例如: more xx.conf
less 和 more类似,不同的是less可以通过上下键控制
tail 命令是实际使用过程中使用非常多的一个命令,他的功能是:用于显示文件后几行的内容 例如: tail -10 xx.conf 查看后10行数据 tail -f xx.log 动态查看日志 ctrl + c 结束查看
文件操作
touch 创建一个空文件 例如: touch a.txt 创建a.txt
rm 删除文件 格式:rm [选项] 文件 例如: ① rm a.txt 删除文件 删除时要用户确认 ② rm -f a.txt 不询问删除 ③ rm -r 删除文件夹 rmdir 文件名 ④ rm -rf aaa/a.txt 不询问递归删除 ⑤ rm -rf * 删除所有
cp (copy) 命令可以将文件从一处复制到另一处,在使用cp命令时可以将文件复制成另一个文件或复制到某个目录时,需要指定源文件名与目标文件名或目录 例如: ① cp a.txt b.txt 将a.txt文件复制成b.txt文件 ② cp a.txt ../ 将a.txt 复制到上一层目录中 ./当前目录
mv 移动或者重命名 例如: ① mv a.txt ../ 将a.txt移动到上一层目录中 ② mv a.txt b.txt 将a.txt重命名为b.txt
####打包或压缩
tar命令位于/bin 目录下,它能够将用户所指定的文件或目录打包成一个文件,但不做压缩。一般Linux 上常用的压缩方式是选用 tar 将许多文件打包成一个文件,再以gzip压缩命令 压缩成xx.tar.gz(或称为xxx.tgz)的文件 常用参数: -c 创建一个新的tar文件 -v 显示运行过程中的信息 -f 指定文件名 -z 调用gzip 压缩命令压缩 -x 解开tar文件 常见命令: tar -cvf xx.tar ./* 打包 ***tar -zcvf xx.tar.gz ./* 打包并压缩 tar -xvf xx.tar 解压 ***tar -zxvf xx.tar.gz 解压
查找文件和内容
find 指令用于查找符合条件的文件 例如: ① find / -name "ins*" 查找文件名称是以ins开头的文件 ② find / -user root -ls 查找用户为root的文件 ③ find / -user root -type d -ls 查找用户为root的目录
grep 指令查找文件中符合条件的字符串 格式:grep [参数] pattern [文件] 例如: ① grep lang xx.cfg 在xx.cfg文件中查找lang ② grep lang a/xx.cfg -A1 -B1 查找lang关键字以及前一行 和 后一行 关键字严格区分大小写
开机、重启、注销
1. 关机 shutdown -h 0 #<==0秒后关机 shutdown -h now #<==现在关机 shutdown -h 10 #<==10分钟后关机 shutdown -h 23:20 #<==23:20分关机 shutdown -c #<==取消shutdown关机命令 init 0 #<==立马关机(切换运行级别为0,推荐使用) halt #<==立马关机 poweroff #<==立马关机 2. 重启 shutdown -r now #<==现在重启 shutdown -r 23:20 & #<==23:20分重启,加&符号代表把该命令转到后台处理 reboot #<==立马重启(推荐使用) init 6 #<==立马重启(切换运行级别为6,推荐使用) 3. 注销用户 logout #<==立马注销 exit #<==立马注销
Vim编辑器
在Linux下一般使用vi编辑器来编辑文件。vi既可以查看文件也可以编辑文件。三种模式:命令行、插入模式、底行模式 ① 切换到命令行:按ESC键 ② 切换到插入模式:按 i键 i:在当前位置前插入 ③ 切换到底行模式:按冒号 (在命令行模式下进入底行模式) 底行模式下:wq 保存并退出 q! 不保存退出 常见命令: yum -y install vim 先安装才可以使用这个命令 vim 文件名 打开文件 esc -> :q! 不保存退出 i 进入插入模式 修改文件 esc -> :wq 保存并退出 命令行模式下的快捷方式 dd 删除一行 yy 复制当前行 p 粘贴
重定向输出
>重定向输出,覆盖原有内容 >> 重定向输出,又追加功能 例如: ① cat /ect/b.txt > a.txt 将b.txt的内容覆盖到a.txt中 ② cat /ect/b.txt >> a.txt 将b.txt的内容追加到a.txt中
系统管理命令
ps 正在运行的某个进程的状态 ① ps -ef 查看所有进程 ② ps -ef | grep ssh 查看某一进程 ③ kill 2868 杀掉编号为2868的进程 ④ kill -9 2868 强制杀死进程
管道
管道|是Linux命令中一个重要的概念,其作用是将一个命令的输出用作另一个命令的输入。 例如: ① ls --help | more 分页查询帮助信息 ② ps -ef | grep java 查询名称中包含java 的进程 ③ cat index.html | more 分页查询index.html的内容
Linux 的权限命令
1.用户和组管理
Linux系统是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。
用户指令操作 ① useradd 用户名 # 添加用户 ② passwd 用户名 # 为当前用户设置密码 切换用户和操作环境 ① su - username #用户和操作环境都改变 ② su username #只切换用户不切换操作环境及环境变量不变。还可用于退出超级权限 ③ userdel -r 用户名 # 删除该账户和所有目录结构 ④ passwd -l 用户名 # 锁定账户密码 ⑤ passwd -u 用户名 # 解锁账户密码 ⑥ passwd -S 用户名 # 查看用户密码锁定状态 用户组操作命令 ① groupadd 组名 # 创建用户组 ② groupdel 组名 # 删除用户组 ④ gpasswd -a 用户账户 用户组名 # 将某个用户添加到该组 ⑤ gpasswd -d 用户账户 用户组名 # 将某个用户移除该组 用户和组常用命令 ① groups 用户名 # 查看当前用户所在的组 ② whoami # 查看当前登录用户名
2.文件权限
第0位确定文件类型(d代表目录, -代表文件, l链接(快捷键))。 第1-3位确定所有者(该文件的所有者)拥有该文件的权限。---User 第4-6位确定所属组(同用户组的)拥有该文件的权限。---Group 第7-9位确定其他用户拥有该文件的权限。 ---Other 注:读写执行也可以用数字表示:r=4,w=2,x=1
改变权限的命令 ① chmod 755 文件 # 赋予某文件权限rwx r-x r-x ② chmod u=rwx,g=rx,o=rx 文件 # 同上u=用户权限,g=组权限,o=不同组其他用户权限 ③ chmod u-x,g+w 文件名 # 给abc去除用户执行的权限,增加组写的权限 ④ chmod a+r 文件名 # 给所有用户添加读的权限 a就是all 改变所有者(chown)和用户组(chgrp)命令 ① chown 用户名 文件名 # 改变文件的所有者为某用户 ② chgrp 组 文件 # 改变文件所属的组 ③ chown 用户 目录 # 改变这个目录的所有者 ④ chown ‐R 用户 目录 # 改变这个目录及其下面所有的文件和目录的所有者 改变用户所在组
yum命令
1.yum简介
Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
2.常见命令
1. 安装命令:install 安装软件包 2. 查看:list 查看可以安装的软件包 如:yum list | grep 软件名 3. 查看软件的安装位置:rpm -ql 软件名 远程下载需要的安装包,下载到/var/cache/yum/i386/6/base/packages目录下,安装完毕后自动删除 yum -y install 软件名 yum -y install vim
rpm
1.rpm简介
rpm(Red Hat Package Manager)类似于window中的软件安装包
2.常见命令
1. 查看已经安装的软件包: ① 参数:-a 查询所有软件包 ② 参数:-q 表示查询 示例:查询已经安装的java rpm -qa | grep java 2. 卸载已经安装的软件包 ① 参数:-e 卸载 ② 参数:--nodeps 不检查依赖性 示例:卸载已经安装的Java rpm -e --nodeps java-1.8.0-openjdk-1.8.0.45-2.4.3.3.el6.i686 3. 安装软件包 ① 参数:-i install 安装 ② 参数:v verbose 安装详细信息 ③ 参数:h hash 显示进度 rpm -ivh 软件包