基础命令
首先我们需要进入目录
所以我们需要学习如何查看目录以及如何进入目录
ls //LiSt
ls -a //all ,查看全部的文件,包括隐藏文件
ls -l //数列出所有的文件,包含文件的属性和权限,没有隐藏文件
ls -al //查看全部的文件包括隐藏文件的属性和权限
cd //Change Directory
cd .. //退回上级目录
cd . //进入当前目录
我们在使用的过程中肯定需要自己知道自己所在的目录位置
pwd // Print Working Directory
文件和文件夹相关操作
我们肯定需要学习创建和删除文件夹,我们就需要学习
mkdir // MaKe DIRectory
mkdir -p // 当我们创建层级目录 mkdir test2/test3/test4 会报错,需要加入- p参数
rmdir // ReMove DIRectory 仅能删除空的目录,如果下面存在文件,需要先删除文件
rmdir -p //
除了创建和删除的操作,我们有时候还需要复制和移动文件(或文件夹)
cp //CoPy 语法:cp test.txt testStudy #将当前目录下的install.sh 复制到cqhstudy文件夹中
rm // ReMove 语法:rm -rf text.txt //删除系统中的text.txt 相关参数如下
//-f # force:强制 忽略不存在的文件,不会出现警告,强制删除!
//-r # recursive:递归的 递归删除目录!
//-i #interaction:互动 互动,删除询问是否删除
mv //MoVe 相关参数如下
mv test.txt testStudy #移动文件
mv testStudy testStudy2 #重命名文件夹名
//-f #强制
//-u #只替换已经更新过的文件
文件内容查看
在了解到文件和文件夹的相关操作后,我们很明显会查看文件相关内容,来让我们更好的配置和了解文件
Linux系统中使用以下命令来查看文件的内容:
cat由第一行开始显示文件内容 // CATenate:连接
tac从最后一行开始显示,可以看出tac是cat的倒着写!
nl显示的时候,顺道输出行号! //我理解为number line的缩写,number有编号的意思
more一页一页的显示文件内容(空格表示翻页,enter代表向下看下一行)
less与more类似,但是比more更好的是,它可以往前翻页!(空格翻页,上下键代表上下翻动页面,退出q命令,查找字符串:/+要查询的字符向下查询,向上查询使用?+要查询的字符串,用n(next)继续搜寻下一个,用N向上寻找)
head 只看头几行 通过-n参数来控制显示几行
tail只看尾巴几行 通过-n参数来控制显示几行
对文本的相关操作
查看文件的内容后,,我们就要对文件的内容进行修改了
Vim是从 vi 发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。
Vim一共分为三种模式
命令模式:vim+文件名(如果该文件存在就进入改文件,不存在则新建)我们默认进入的就是命令模式,我们可以在命令模式下输入一些命令来达到一些功能的实现,比如输入i进入输入模式
输入模式:就是可以进行编辑的模式
底线命令模式:就是只能在最后一行输入命令**,比如在该模式下输入:wq(wirte quit的缩写)就能对已经修改的内容写入磁盘并退出**,:set nu(number的缩写。number有编号的意思) 就能显示出行号
常用流程:
1.vim test.txt 新建一个test.txt文件,并进入命令模式
2. 按 :set nu 进入底线输入模式显示相应的行号和文本内容
3. 按 i 键进入输入模式,进行文本的编辑,编辑完成后,然后按 esc 进入命令模式
4. 按 :wq 对已经修改的内容写入磁盘并退出
文件属性查看或修改
可是有时候我们想操作某些文件时,常常会出现文件权限不够的情况,这时候我们就需要来学习下文件属性的查看或修改了
我们先来弄清楚什么是属主、什么是属组?
属主就是所属的主人,就是owner咯;那属组就是owner所在的group,在Linux系统中,用户是按组分类的, 一个用户属于一个或多个组。文件所有者以外的用户又可以分为文件所有者的同组用户和其他用户(假设有Student1属于Class1,尽管Student2跟Student1不相同,但是如果Student2属于Class1就不是其它用户而是同组用户,只有Student2不属于Class1才叫做其它用户)
root就相当于一个班的班长,拥有极大的权限,一般在学习课程的时候,班级里的学生又会被分成一个个组
我们以下面的例子来讲解相关知识
在Linux中第一个字符代表这个文件是目录、 文件或链接文件等等:
●当为[d]则是目录
●当为[-]则是文件;
●若是[l]则表示为链接文档( link file,桌面快捷就是一个实例))该行的后面会写出它指向的真实地址
●若是[b]则表示为装置文件里面的可供储存的接口设备(可随机存取装置) ;
●若是[c]则表示为装置文件里面的串行端口设备,例如键盘、鼠标( 一次性读取装置)
[r]代表可读(read)、[w]代表可写(write)、[x]代表可执行(execute)。
chgrp [-R] 目标属组名 文件名 //CHange GRouP,-R :递归更改文件属组,就是在更改某个目录文件的属组时,如果加上R的参数,那么该目录下的所有文件的属组都会更改,[-R]表示可写可不写
chown [-R] 属主名 文件名 // CHange OWNer
接下里我们需要修改文件的权限
Linux文件的基本权限就有九个,分别是owner/group/others三种身份各有自己的read/write/execute权限
先复习一下刚刚上面提到的数据:文件的权限字符为: [-rwxrwxrwx],这九个权限是三个三个一组的!其中,我们可以使用字来代表各个权限,各权限的分数对照表如下:
r:4 w:2 x:1
chmod [-R] 数字 文件或目录 //CHange MODe
账号管理
接下来我们就提出了更高的要求,对计算机的账号管理
Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统
添加账号 useradd
useradd 选项 用户名
参数说明:
选项 :
-c comment 指定一段注释性描述。
-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
-g 用户组 指定用户所属的用户组。
-G 用户组,用户组 指定用户所属的附加组。
-m 使用者目录如不存在则自动建立。
-s Shell文件 指定用户的登录Shell。
-u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。
# 此命令创建了一个用户User2,并加入root用户组,其中-m选项用来为登录名Usee2产生一个主目录 /home/User2
useradd -m -g root User2
增加用户账号就是在/etc/passwd文件中为新用户增加一条记录,同时更新其他系统文件如/etc/shadow, /etc/group等
Linux下如何切换用户
su 用户名 //Substitute User:替换用户
删除帐号
userdel 选项 用户名
常用的选项是 -r,它的作用是把用户的主目录一起删除
userdel -r User2
修改账户
修改用户账号就是根据实际情况更改用户的有关属性,如用户号、主目录、用户组、登录Shell等。
修改已有用户的信息使用usermod命令,其格式如下:
usermod 选项 用户名
常用的选项包括-c, -d, -m, -g, -G, -s, -u以及-o等,这些选项的意义与useradd命令中的选项一样,可以为用户指定新的资源值。
例如:
usermod -s /bin/ksh -d /home/z –g developer User2
此命令将用户 User2的登录Shell修改为ksh,主目录改为/home/z,用户组改为developer。
用户口令的管理
用户管理的一项重要内容是用户口令的管理。用户账号刚创建时没有口令,但是被系统锁定,无法使用,必须为其指定口令后才可以使用,即使是指定空口令。
指定和修改用户口令的Shell命令是passwd(PASSWorD的缩写)。超级用户可以为自己和其他用户指定口令,普通用户只能用它修改自己的口令。
命令的格式为:
passwd 选项 用户名
可使用的选项:
-
-l 锁定口令,即禁用账号。
-
-u 口令解锁。
-
-d 使账号无口令。
-
-f 强迫用户下次登录时修改口令。
如果默认用户名,则修改当前用户的口令。
例如,假设当前用户是root,则下面的命令修改该用户自己的口令
passwd User2
New password:******* //密码为
Re-enter new password:*******
注意在linux中密码的输入是看不见的,并不是系统出了问题
给User2用户设置了密码后,我们以后连接服务器就能用该用户连接服务器了
如果默认用户名,则修改当前用户的口令。
例如,假设当前用户是User2,则下面的命令修改该用户自己的口令:
passwd
Old password:******
New password:*******
Re-enter new password:*******
为用户指定空口令时,执行下列形式的命令
passwd -d 用户名
锁定账户
root ,比如张三辞职了!冻结这个账号, 一旦冻结,这个人就登录不上系统了!
passwd -l User2 #锁定之后这个用户就不能再登录了
用户组管理(类比用户管理)
进程管理
1、在Linux中 ,每一个程序都是有自己的一个进程,每一个进程都有一个id号!
2、每一个进程呢,都会有一个父进程!
3、进程可以有两种存在方式:前台!后台运行!
4、一般的话服务都是后台运行的,基本的程序都是前台运行的
命令
ps 查看当前系统中正在执行的各种进程的信息!
ps- xx:
-a 显示当前终端所有的进程信息
-u 以用户的信息显示进程
-x 显示后台运行进程的参数
#ps -aux 查看所有进程
ps-au|grep mysql #查看mysql相关进程 ps:Processes Status a: u:用户 grep:General Regular Expression Print
# | 在Linux中这个叫管道符 A|B 即A运行后的输出哦会作为B的输入
# grep 查找文件中符合条件的字符串
对于我们来说,这里目前只需要记住一个命令即可ps -xx|grep进程名字!过滤进程信息!
ps-ef :可以查看到父进程的信息
ps-ef|grep mysql #看父进程我们一般可以通过目录树结构来查看,即下面的命令
#进程树
#pstree -pu
#-p 显示父id
#-u 显示用户组
结束进程:杀掉进程 等价于Windows结束任务
kill -9 进程id