linux目录结构
windows目录结构一般由“C: D: E:”......盘组成
而linux则从根目录“/“”下开始。/:根目录,一般根目录下只存放目录,在linux下只有一个根目录,所有的东西都是从这里开始。当在终端输入/home,其实是在告诉电脑,先从/*(根目录)开始,在进入到home目录
/bin 、/usr/bin:可执行二进制文件的目录,如常用的命令ls、tar、mv、cat等
/dev 存放linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备,重用的是挂载光驱 mount /dev/cdrom /mnt
/etc 系统配置文件存放的目录,不建议在此目录下存放可执行文件,重要的配置文件有
/etc/inittab
/etc/fatab
/etc/init.d
/etc/X11
/etc/sysconfig
/etc/xinetd.d
/home:用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的,如上图中的 alice、bob 和 eve。
/lib:lib 是 Library(库) 的缩写这个目录里存放着系统最基本的动态连接共享库,其作用类似于 Windows 里的 DLL 文件。几乎所有的应用程序都需要用到这些共享库。
/lost+found:这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。
/media:linux 系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux 会把识别的设备挂载到这个目录下。
/mnt:系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在 /mnt/ 上,然后进入该目录就可以查看光驱里的内容了。
/opt:opt 是 optional(可选) 的缩写,这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。
/proc:proc 是 Processes(进程) 的缩写,/proc 是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,比如可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器:
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
/root:该目录为系统管理员,也称作超级权限者的用户主目录。
/sbin:s 就是 Super User 的意思,是 Superuser Binaries (超级用户的二进制文件) 的缩写,这里存放的是系统管理员使用的系统管理程序。
/selinux:这个目录是 Redhat/CentOS 所特有的目录,Selinux 是一个安全机制,类似于 windows 的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的。
/srv:该目录存放一些服务启动之后需要提取的数据。
/sys:这是 Linux2.6 内核的一个很大的变化。该目录下安装了 2.6 内核中新出现的一个文件系统 sysfs 。sysfs 文件系统集成了下面3种文件系统的信息:针对进程信息的 proc 文件系统、针对设备的 devfs 文件系统以及针对伪终端的 devpts 文件系统。该文件系统是内核设备树的一个直观反映。当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。
/tmp:tmp 是 temporary(临时) 的缩写这个目录是用来存放一些临时文件的。
/usr:usr 是 unix shared resources(共享资源) 的缩写,这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录。
/usr/bin:系统用户使用的应用程序。
/usr/sbin:超级用户使用的比较高级的管理程序和系统守护程序。
/usr/src:内核源代码默认的放置目录。
/var:var 是 variable(变量) 的缩写,这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。
/run:是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run。
linux基本命令
cd 切换文件夹
cd /home 进入home目录下
cd /home/admin 以斜杠开头(根目录开头)输入完整的路径 (绝对路径)
cd .. 返回上级目录 不以根目录开头 (相对路径)
cd / 进入根目录
cd ~ 或直接cd 进入当前用户home目录 /home/admin
cd - 是返回到上一次的工作目录
pwd 查看当前所在目录
ls 查看当前目录下文件及文件夹
ls -a 查看当前目录下文件及文件夹(包括隐藏文件)
ls -l 查看当前目录下文件及文件夹(展示详细信息,包括权限、创建者、文件大小、创建时间等)
ls -lh 查看当前目录下文件及文件夹(以人性化的方式进行展示)一般用在附加在l选项的后面
ll 等于ls -l
mkdir创建文件夹
mkdir test 在当前目录下创建文件夹
mkdir home/admin 在绝对路径下创建文件夹
mkdir home/admin/test/test1 -p 如果创建test1目录,test目录不存在 加-p选项后可自动创建test目录
mkdir test test1 并行创建多个文件夹
mkdir test/{test1,test2} 绝对路径下创建多个并行文件夹
mkdir .test 创建隐藏文件夹
任何目录下都有至少俩个目录 . 和.. .代表当前目录 ..代表上级目录
touch创建文件
touch test.txt 在当前路径创建txt文件
touch test/test.txt (绝对路径)在test目录下创建txt文件
touch .abc 创建隐藏文件
gedit记事本编辑器
gedit a.txt 已存在文件直接打开该文件可以进行编辑,无存在文件则创建一个新的文件进行编辑
rm 删除文件、文件夹
rm a.txt 删除指定文件
rm a b 并行删除a和b文件
rm -r a 删除文件夹
rm * 删除所有文件 (不能删除隐藏文件)
rm -r * 删除所有文件夹(不能删除隐藏文件夹)
rm *.txt 删除所有txt后缀的文件
rm -r /home/admin/test (绝对路径)删除文件夹
clear 清屏
自动补全
cd 写一个文件开头 按tab键会自动补全
相应的如果在敲一个命令的时候 写一个开头如果没有歧义的情况下 按TAB键会自动补全
help帮助文档
ls --help 如果某一个命令不知道具体的使用以及选项 可以--help 弹出帮助文档
man pwd 也是另外一种查看帮助文档的方式
man帮助文档进入后
按空格键进行翻页
B键进行回滚一屏
F键进行前滚一屏
Enter一次滚动一行
Q退出
/Word 搜索word字符串
文件的权限
首字母 d代表文件夹 -代表文件
rwx rwx r-x r可读 w可写 x可执行
分为三组
第一组 文件拥有者权限
第二组 文件拥有组的权限
第三组为第三方权限
第一个root代表所有者 第二个root代表组
通配符 (* 代表多个任意字符 ?代表任意一个字符)
ls a* 查看以a开头,后面匹配任意字符的文件
ls *b 查看以b结尾,前面匹配任意字符
ls a? 查看以a开头的后面匹配任意一个字符
ls a?? 查看以开头的后面匹配任意两个字符
ls [abc]d 查看已d结尾,前面匹配单个a或b或c的文件
ls [a-z] 查看从a到z范围内的任意一个字符
转义符 \
如果要使用通配符作为普通字符使用,可以在其前面加上转义字符,“?”和“*”处于方括号内时不用使用转义字符就失去通配符的作用
如当前目录下有 *x xx两个文件,如果仅仅想展示*x文件,需要用到转义符
ls \*x 查看*x文件(使用到转义符)
拷贝 cp
cp a.txt a 复制文件a.txt到当前目录的a目录下
cp 1.txt 2.txt 复制文件1.txt到当前目录下并命名为2.txt
cp -a 1.txt 2.txt 复制文件1.txt到当前目录下并命名为2.txt(把文件原封不动的复制过来(所有属性) 包括创建时间等等 )
cp -r a 复制文件夹
cp -i a.txt 交互式复制,在覆盖目标文件之前给出提示要求用户确认
cp -f a.txt 复制文件覆盖已经存在的目标文件不提示
cp -v a.txt b.txt 显示拷贝进度,并拷贝a.txt在当前目录并命名为b.txt