linux基础学习笔记
我用的是centOS7.0版本的系统。linux的shell终端窗口类似于wind的command窗口
shell命令提示符格式:用户名@主机名:目录名 提示符
@前面的是已登录的用户名,@之后的为计算机的主机名。如果没有设置主机名,则默认为localhost.冒号后面的是当前所在目录名;提示符有两种:$符号表示当前用户为普通用户,#符号表示当前用户为超级用户;
shell命令语法:命令名[-选项] 参数1 参数2 ...
选项是执行该命令的限定参数或者功能参数。同一命令采用不同的选项,其功能各不相同。选项可以一个,也可以多个,还可以没有,选项通常用“-”开关,当有多个选项时,可以只使用一个“-”符号;参数是执行该命令所必须的对象,如文件,目录等。可以一个,也可以多个,还可以没有。按下[ENTER]键后,该命令就立即执行,例子:chmod -R 666 test.txt。
shell帮助命令:man(manual)工具用于显示系统手册中内容,这些内容 基本上都是对命令的解释信息,help命令主要用来显示shell内部命令的说明或列出shell内部命令,info命令和man命令基本相同,都是用来查询命令的用法和文件的格式。于man不同的是info可以显示更完整的信息。按q可以退出系统手册,按空格可以翻页,可以使用/keyword进行关键字查找
NAME:命令、函数的功能简单说明
SYNOPSIS:命令语法简介或函数的定义简介
DESCRIPTION:命令、函数的详细描述,这部分最好仔细看看
OPTIONS:命令的所有可选参数的详细说明
FILES:命令、函数所用到 的相关系统文件
一,shell几个常用的命令:cd/pwd/mkdir/rmdir/cp/rm/mv/export/ls/ll/man/su/chgrp/chown/chmod
1.查看目录:ls,ll(查看文件属性)
2.从当前目录去到指定的目录:cd /etc/profile(cd ~ 进入home目录,cd /..去到上级目录)
3.显示当前目录路径:pwd [-p] 使用-p显示当前的路径,而非使用连接路径
4.创建一个新目录:mkdir [-mp] -m:设置文件的权限,-p帮助你直接将所需要的目录(包括上级目录)递归创建出来
5.删除一个新目录:rmdir [-p] -p帮助你连接上级的空的目录也一起删除
6.复制文件或目录语法:cp [-adfilprsu] 源文件 目标文件 或 cp [-选项] 源文件1 源文件2 ... 目标目录;
[-a]相当于-pdr,[-d]:若源文件为连接文件的属性,则复制 连接文件属性而非文件本身,
[-f]:为强制的意思,若目标文件已经存在且无法开启,则删除后在尝试一次,
[-i]:若目标文件已经存在,在覆盖时会先询问操作的进行
[-l]:进行硬连接的连接文件创建,而非复制文件本身
[-p]:连同文件的属性一起复制过去,而非使用默认属性
[-r]:递归持续复制,用于目录的复制行为
[-u]:若目标目录比源文件旧才更新目标目录
注意:如果源文件有两个以上,则最后一个一定要是“目录”才行
复制文件和目录要递归(-R)和保留权限(-p)
例子:/Documents/testing$ cp -i first.c hello.c
7.移除文件或目录:rm [-fir] 文件或目录
[-f]: 忽略不存在的文件,不会出现警告信息
[-i]: 互动模式,在删除前会询问用户是否操作
[-r]: 递归删除
8.移动文件或目录,或重命名:mv [-fiu] 源文件 目标文件 或 mv [-fiu] 源文件1 源文件2 ... 目标文件
[-f]: 如果目标文件已经存在,不会询问而直接覆盖
[-i]:若目标文件已经存在时,就会询问是否覆盖
[-u]:若目标文件已经存在,且源文件比较新,才会更新。
例子:~/Documents/testmv$ mv -fiu ../id.txt
9.查看文件:cat查看文件的内容,more逐页显示文件内容,less与more命令相同,但扩展功能更多
10.用户管理命令:useradd/userdel/usermod/passwd/su/sudo/
11.添加用户:useradd [-cm..] 用户名 用户账号 例如:useradd -c 李小龙 Bruce
12.删除用户:userdel [-cm..] 用户账号 例如:userdel Bruce
13.修改用户:usermod [-cmg..] 用户名 用户账号 例如:useradd -c 李大龙 -g admin -m Bruce
14.设置密码:passwd [选项参数] 用户名 例如:passwd xin
15.用户切换:su [选项参数] [用户账号 [ARG]...] 默认为root,ARG为新的shell参数,使用su - 完全切换到root登录环境下
16.授权用户切换:sudo [选项参数] 用户账号:su需要知道切换用户的密码,而sudo则需要用户自己的密码即可。由于sudo可以让你以其他用户的身份执行命令,因此并非所有用户都能使用sudo命令,而是只有在/etc/sudoers配置文件中被授权的用户才能使用这个命令。
17.用户组管理:groupadd/groupdel/groumod/
18.添加用户组:groupadd [选项参数] 用户组名 例如:groupadd newgroup
19.删除用户组:groupdel 用户组名 例如:groupdel newgroup
20.更改用户组属性:groupmod [-g gid [-o]] [-n 新用户组名称] 用户组名称 例如:groupmod -g 1008 newgroup
21.退出用户:exit
二,文件权限的操作:-rwxrwx--- 43 zing zing 4096 2011-07-09 17:34 .adobe
1.第一个字符代表这个文件是“目录,文件或链接文件等”
[-]:表示文件;
[d]:表示目录
[l]:表示链接文件
[b]:表示设备文件里可供存储的接口设备
[c]:表示设备文件里的窜行端口设备,例如键盘。
2.接下来的9个字符中,以3个为一组,且均为“rwx”的3个参数的组合。其中[r]为可读,[w]为可写,[x]为可执行,[-]为无权限
3.第一组为:文件所有者的权限,第二组为同用户组的权限,第三组为其他非本用户组的权限
4.43表示链接的文件数,zeng表示所有者 ,zeng表示用户组,4906表示这个文件的大小,默认单位为B
5.如果文件名之前多一个“.”号,表示该文件是隐藏文件,用ls命令中的 -a参数就可以把隐藏文件显示出来
6.修改文件所属用户组:chgrp [-R] 文件名,-R表示递归修改 例如:chgrp xin id.txt
7.修改文件所有者:chown [-R] 账号名 文件或目录 例如:chown xin id.txt
8.修改文件的权限:chmod [-R] xyz 文件或目录,每三个符号为一组,共分三组r:4,w:2,x:1,xyz表示每一组数字的和
用数字进行权限的更改,假如权限为:-rwxr--rw-,则可以使用如下数字表示:
owner = rwx = 4+2+1=7
group = r-- = 4+0+0 =4
others = rw- = 4+2+0 = 6
因此当我们更改权限时,该文件的权限数字为746.
用符号进行权限的更改,用+,-,=进行权限的修改,用u,g,o表示三种身份的权限,用a表示全部的身份。
例如:chmod u=rw,go=rx id.txt,chmod a+r id.txt ,chmod u-r,g-w,0+x id.txt(中间用逗号隔开)
9.虚拟机下Linux系统的网络配置:
编辑文件:vi /etc/sysconfig/network-scripts/eno16777736你的那块网卡文件
系统目录etc(类似于regedit),存放各种系统的配置信息
windows 系统配置保存到:注册表、环境变量
linux 系统配置保存到:文件、环境变量
1、当前回话的编码 (环境变量LANG)
2、终端当前解释的编码
3、你的资源本来的编码
4,客户端的编码
169.254.162.137
配置编码的环境变量:
echo $LANG
zh_CN.UTF-8
export LANG=c
杀进程:kill -9 ID
10.设置系统开机默认是命令行界面:
systemctl set-default multi-user.target
free -m
init 0
init 6
打包压缩相关命令
gzip:
bzip2:
tar: 打包压缩
-c 归档文件
-x 压缩文件
-z gzip压缩文件
-j bzip2压缩文件
-v 显示压缩或解压缩过程 v(view)
-f 使用档名
例:
tar -cvf /home/abc.tar /home/abc 只打包,不压缩
tar -zcvf /home/abc.tar.gz /home/abc 打包,并用gzip压缩
tar -jcvf /home/abc.tar.bz2 /home/abc 打包,并用bzip2压缩
当然,如果想解压缩,就直接替换上面的命令 tar -cvf / tar -zcvf / tar -jcvf 中的“c” 换成“x” 就可以了。