Linux常用命令
系统目录结构
- /bin:
bin是Binary的缩写, 这个目录存放着最经常使用的命令。 - /boot:
这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。 - /dev :
dev是Device(设备)的缩写, 存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同的。 - /etc:
这个目录用来存放所有的系统管理所需要的配置文件和子目录。 - /home:
用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。 - /lib:
这个目录里存放着系统最基本的动态连接共享库,其作用类似于Windows里的DLL文件。 - /lost+found:
这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。 - /media:
linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下。 - /mnt:
系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光驱里的内容了。 - /opt:
这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。 - /proc:
这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。 - /root:
该目录为系统管理员,也称作超级权限者的用户主目录。 - /sbin:
s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。 - /srv:
该目录存放一些服务启动之后需要提取的数据。 - /sys:
这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统 sysfs 。 - /tmp:
这个目录是用来存放一些临时文件的。 - /usr:
这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program files目录。 - /usr/bin:
系统用户使用的应用程序。 - /usr/sbin:
超级用户使用的比较高级的管理程序和系统守护程序。 - /usr/src:
内核源代码默认的放置目录。 - /var:
这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。 - /run:
是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。
文件管理
文件属性
通过ll
命令得到目录或文件的属性及所属用户和组
Linux中第一个字符代表这个文件是目录、文件或链接文件等等:
- 当为[ d ]则是目录
- 当为[ - ]则是文件;
- 若是[ l ]则表示为链接文档 ( link file );
- 若是[ b ]则表示为装置文件里面的可供储存的接口设备 ( 可随机存取装置 );
- 若是[ c ]则表示为装置文件里面的串行端口设备,例如键盘、鼠标 ( 一次性读取装置 )。
接下来的字符中,以三个为一组,且均为 rwx 的三个参数的组合。 要注意的是,这三个权限的位置不会改变,如果没有权限,就会出现减号 - 而已。
每个文件的属性由左边第一部分的10个字符来确定(如下图):
修改文件属性
1、修改文件属组
chgrp 属组名 文件名
- 修改目录下所有的目录文件
chgrp -R 属组名 目录名
2、修改文件属主并修改属组
chown [–R] 属主名 文件名
chown [–R] 属主名 文件名
3、修改文件权限
chmod [-R] xyz 文件或目录
其中xyz为属主、属组、其他用户权限的数字和
rwx对应的数字为:
r:4 w:2 x:1
创建 文件
touch 文件
查看文件
命令 | 解释 |
---|---|
cat | 由第一行开始显示文件内容 |
tac | 从最后一行开始显示,可以看出 tac 是 cat 的倒着写! |
nl | 显示的时候,顺道输出行号! |
more | 一页一页的显示文件内容 |
less | 与 more 类似,但是比 more 更好的是,他可以往前翻页! |
head | 只看头几行 |
tail | 只看尾巴几行 |
目录管理
创建目录
mkdir 目录名
- 创建自定义权限目录
mkdir -m 权限数 目录名
常用权限数:755 - 递归创建目录
mkdir -p t1/t2/t3/t4
删除目录
- 删除空目录
rmdir 目录名
- 递归删除空目录
rmdir -p 目录名
- 删除文件
rm 文件名
- 删除非空目录
rm -r 目录名
- 删除当前目录所有文件及目录
rm -r *
列出目录
- 列出当前目录和文件
ls
- 列出所有文件(隐藏的文件)
ls -a
- 输出文件属性、权限等等
ls -l = ll
- 命令组合:
ls -al
切换目录
cd 相对路径/绝对路径
- 返回上一级目录
cd ..
- 返回根目录
cd /
- 返回用户目录
cd ~
显示当前目录
pwd
- 获取链接文件的真实地址
pwd -P
复制目录/文件
cp [-adfilprsu] 来源档(source) 目标档(destination)
或
cp [options] source1 source2 source3 .... directory
常用option:
- -a:
相当于-pdr的意思,pdr请参考下列说明;(常用) - -p:
连同文件的属性一起复制过去,而非使用默认属性(备份常用); - -d:
若来源档为连结档的属性(link file),则复制连结档属性而非文件本身; - -r:
递归持续复制,用於目录的复制行为;(常用) - -i:
若目标档(destination)已经存在时,在覆盖时会先询问动作的进行(常用)
拓展:硬链接与软链接
- 硬链接:复制文件与原文件都是链接文件,同时指向一个文件
ln f1 f2 # 创建f1的一个硬连接文件f2
- 软链接:复制文件是链接文件,指向原文件
ln -s f1 f3 # 创建f1的一个符号连接文件f3
移动(重命名)目录/文件
mv [-fiu] source destination
mv [options] source1 source2 source3 .... directory
mv 原名 新名
常用options:
- -f :
force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖; - -i :
若目标文件 (destination) 已经存在时,就会询问是否覆盖!
Vim编辑
常用命令:
- 复制:
复制一行:yy
复制下n行:nyy
- 粘贴:
p,P
- 删除:
删除一个字符:x,X
删除一行:dd
删除向下n行:ndd
- 撤回:
u,U
- 查找:
向上:/word 向下:?word
n,N
用户和用户组管理
用户管理
选项 | 解释 |
---|---|
-c | comment 指定一段注释性描述 |
-d | 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录 |
-g | 用户组 指定用户所属的用户组 |
-G | 用户组,用户组 指定用户所属的附加组 |
-s | Shell文件 指定用户的登录Shell |
-u | 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号 |
- 添加用户
useradd 选项 用户名
例:useradd -u 1888 yyykstudy
- 删除用户
userdel 选项/-r 用户名
- 修改用户
usermod 选项 用户名
- 用户口令
passwd 选项 用户名
选项:-l
锁定口令,即禁用账号。-u
口令解锁。-d
使账号无口令。-f
强迫用户下次登录时修改口令。
修改用户口令:passwd 用户名
用户组管理
- 添加用户组
groupadd 选项 用户组
选项:-g
GID 指定新用户组的组标识号(GID)。-o
一般与-g
选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。
例:groupadd -g 888 upup
- 删除用户组
groupdel 用户组
- 修改用户组
groupmod 选项 用户组
选项:-g
GID 为用户组指定新的组标识号。-o
与-g
选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。-n
新用户组 将用户组的名字改为新名字 - 一个用户属于多个用户组,通过
newgrp 用户组
切换
与用户相关的系统文件
- /etc/passwd:记录用户的一些基本属性
打开文件:cat /etc/passwd
文件信息格式:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell
- /etc/shadow:由pwconv命令根据/etc/passwd中的数据自动产生
文件信息格式:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
- /etc/group:存放用户组的所有信息
文件信息格式:组名:口令:组标识号:组内用户列表
磁盘管理
df命令:列出文件系统的整体磁盘使用量
df [-ahikHTm] [目录或文件名]
常用命令:
df -h 目录或文件名
:以人们较易阅读的 GBytes, MBytes, KBytes 等格式自行显示;.df -a 目录或文件名
:列出所有的文件系统,包括系统特有的 /proc 等文件系统;df -T 目录或文件名
:显示文件系统类型, 连同该 partition 的 filesystem 名称 (例如 ext3) 也列出;
du命令:对文件和目录磁盘使用的空间的查看
du [-ahskm] 文件或目录名称
常用命令:
du -h 文件目录名
:以人们较易读的容量格式 (G/M) 显示;du -a 文件目录名
:列出所有的文件与目录容量,因为默认仅统计目录底下的文件量而已。du -s 文件目录吗
:只列出总量,而不列出每个各别的目录占用容量;
磁盘挂载
mount [-t 文件系统] [-L Label名] [-o 额外选项] [-n] 装置文件名 挂载点
磁盘卸载
umount [-fn] 装置文件名或挂载点