一.Linux树型目录结构
在详解经常使用命令以前,先对Linux的树型目录结构作个简单的了解windows
/ #根目录 /bin #基础系统所须要的命令位于此目录,是最小系统所须要的命令,如:ls, cp, cd等等。这个目录中的文件都是可执行的,通常的用户均可以使用。 /dev #设备文件,好比声卡、磁盘、鼠标、键盘等。 /etc #系统管理和配置文件 /etc/init.d #启动配置文件和脚本,可在这里添加启动脚本。 /etc/rc.local #用户添加启动项 /home #用户主目录,好比用户user的主目录就是/home/user,能够用~user表示 /lib #标准程序设计库存放路径,又叫动态连接共享库,做用相似windows里的.dll文件 /sbin #超级管理命令,这里存放的是系统管理员使用的管理程序。 /tmp #临时文件目录,有时用户运行程序的时候,会产生临时文件。 /tmp就用来存放临时文件的。 /root #系统管理员的主目录 /mnt #用来临时挂载其余的文件系统 /lost+found #这个目录平时是空的,系统意外崩溃或机器意外关机,而产生一些文件碎片放在这里。当系统启动的过程当中fsck工具会检查这里,并修复已经损坏的文件系统。 /media #即插即用型存储设备的挂载点自动在这个目录下建立,好比USB盘系统自动挂载后,会在这个目录下产生一个目录 /proc #虚拟文件目录,可直接访问这个目录来获取系统信息。 /var #全部服务的登陆文件或错误讯息档案(log files)都在 /var/log 里面 /boot #包含Linux内核及系统引导程序所须要的文件,好比 vmlinuz initrd.img 文件都位于这个目录中。在一 般状况下,GRUB或LILO系统引导管理器也位于这个目录; /usr #最庞大的目录,要用到的应用程序和文件几乎都在这个目录,其中包含: usr/bin #众多的应用程序 /usr/sbin #超级用户的一些管理程序 /usr/include #Linux下开发和编译应用程序所须要的头文件 /usr/lib #经常使用的动态连接库 /usr/share/man #帮助文档 /usr/src #源代码,Linux内核的源代码就放在/usr/src/Linux里 /usr/local/bin #本地增长的命令 /usr/local/lib #本地增长的库根文件系统 . :表明当前路径 .. :表明上一级目录 ~ :表明用户目录路径
二.经常使用命令详解bash
2.1 ls 命令socket
ls是英文单词list的缩写.用来查看文件目录的属性。ide
ls
2.1.1 ls -l命令工具
ls -l l参数表明以列表的方式显示。设计
ls -l #第一个字符d 表明这是一个目录文件。 # ‐ 表明普通文件 # c 字符设备文件 # b 块设备文件 # p 管道文件 # l 连接文件 # s socket文件 #后面的rwxr‐xr‐x字符,表明user、group、other对文件所拥有的权限,rwx表明该用户拥有读写执行的权限。r‐x 表明同一组的用户拥有的读和执行权限,后一个r‐x表明其余用户拥有读和执行权限。 # 2表明文件硬连接的计数,表示该文件有两个硬连接。 # where 文件所属的用户名。 # where 文件所属的用户组。 # 4096 文件大小,单位字节。 # 6月 25 16:53 文件最后被修改的日期。 # Videos 文件名
2.1.2 ls -a命令code
ls -a a参数表明all的意思,表示把全部的文件都罗列出来,包括隐藏文件,点号开头的在Linux中都表示隐藏文件。递归
ls -a
ls ‐ld [filename] 表明只列出目录文件的属性。开发
2.2 stat命令rem
查看文件的访问时间,修改时间等
stat /bin
访问时间,是指经过指令如cat、vi等来查看的文件的最近一次时间。更改时间,是指修改文件内容的最近一次时间。 改动时间,是指修改文件属性的最近一次时间。 注意:访问时间是内容更改后,第一次访问的时间,后面再次访问的时候访问时间不会改变
2.3 cd命令
cd 是 change directory的缩写,表示改变当前所在路径。
cd - ##回上一次所在的目录 cd ~ 或 cd ##会当前用户的主目录 cd / ##回到根目录 cd .. ## 回当前目录的上一目录
2.4 pwd命令
pwd 是英文print working directory 显示当前所在路径。
cd /bin pwd
2.5 which命令
寻找可执行文件 ,并在PATH环境变量里面寻找
which 执行文件名称
2.6 touch命令
将每一个文件的访问及修改时间都更新为目前的时间。
若是文件不存在,则建立一个字节数为0的文件。
‐a #只更新访问时间,不改变修改时间 ‐c #不建立不存在的文件 ‐m #只更新修改时间,不改变访问时间 ‐r file #使用文件file的时间更新文件的时间 ‐t #将时间修改成参数指定的日期,如:07081556表明7月8号15点56分
2.7 mkdir 命令
mkdir 是make directory的英文缩写。
建立目录DIRECTORY,能够一次建立多个。OPTION若是是p,表示能够连同父目录一块儿建立。
mkdir dir1 ## 建立 dir1 文件夹
2.8 rmdir 命令
rmdir是remove directory的英文缩写。
rmdir -p dir1/dir2/dir3 ##删除多级目录
删除空目录,能够一次删除多个。OPTION若是是p,表示能够连同空的父目录一块儿删除。可是一旦父目录中还包含其余文件,则删除失败。
2.9 rm 命令
rm是remove的英文缩写。
能够用来删除普通文件,也能够用来删除目录,特别用来删除目录中嵌套有子目录的目录文件。 经常使用参数:
‐f ‐‐force #强制删除,不询问是否要删除。 ‐r ‐‐recursive #递归删除,包括文件夹中的内容
2.10 mv命令
mv是英文单词move的缩写。能够用来移动文件夹或者文件,也能够用来更改文件名。
mv file / #把文件file移动到根目录中 mv file file_bak #把文件file重命名为file_bak。
2.11 cp命令
cp是英文单词copy的缩写,表示拷贝文件。
##能够用来拷贝普通文件: cp file file_bak #拷贝一份file为file_bak ##能够用来拷贝目录 cp dir dir_bak ‐r #拷贝一个目录dir为dir_bak, ‐r参数表明递归拷贝,把dir目录中的文件也拷贝过去
2.12 cat命令
cat英文单词concatenate连锁的缩写,用来查看文件内容,以及将几个文件连成一个文件,
cat ##查看某个文件 cat demo ## demo为文件名称