一、终端界面
在centos中点击键盘ctrl + alt + F1是回到图形化界面环境;点击键盘ctrl + alt + F2-F6可以分别进入不同代号的终端界面(tty1-tty5),下面是使用ctrl+alt+F3进入的tty2终端界面
这时打开的终端是全屏幕的终端,但是实际上,图形化操作系统中,存在一个图形化终端
这个terminal比上面的终端更加友好
二、命令行之旅
切换到root用户:sudo su
exit可以退出root用户
whoami:显示用户名
hostname:显示主机名
date命令:显示当前时间
ls命令:显示当前文件夹下包含的所有文件夹和文件
命令的参数
--短参数(使用一个短杠添加)
ls -a:列出包含隐藏文件的所有文件
-长参数(使用两个短杠添加)
ls --all:与ls -a 效果一致
-参数的值
短参数赋值:command -p 10 长参数赋值:command --parameter=10
三、查找命令和实用快捷键
Tab键可以补全命令、文件名等
上下键可以选择上一条或者下一条命令
ctrl + R可以用于命令的查找
hsitory命令:显示历史的命令行
常用快捷键
ctrl + L用于清屏
ctrl + D给终端传递EOF(文件结束符)
shift+pgUp:向上滚屏
shift+pgDn:向下滚屏
ctrl +A 光标跳到一行的开头
ctrl + E 光标跳到一行的末尾
ctrl + U删除光标左侧的所有字符
ctrl + K删除光标右侧的所有字符
ctrl + W删除光标左侧的一个单词
ctrl + Y可以粘贴用U、K、W删除的字符串
四、文件和目录组织命令
Linux的根目录的直属子目录:
bin,二进制文件目录,包含所有可执行程序
boot,与启动相关的文件
dev,对应外部设备
etc,包含配置文件
home,用户私人目录,类似我的文档
lib,包含被程序调用的库文件
mdia,可移动的外部设备
mnt,临时挂载一些装置
opt,可选的应用软件包
root,超级用户的家目录
sbin,系统二进制文件
srv,网络服务启动之后的数据
tmp,临时文件
usr,系统资源
var,包含程序数据,比如日志文件
pwd命令和which命令
pwd,打印当前工作目录
which,获取命令的可执行文件的位置
五、浏览和切换目录
ls,列出文件和目录
ls命令常用参数:
-a,显示所有文件和目录,包括隐藏文件
-l,详细列表
-h,以Ko,Mo,Go的形式显示文件大小
-t,按文件最近一次修改时间排序
cd,切换目录
cd ..,回到上一级目录
重回家目录的方法
cd /home/damien; cd ~; cd;
du,显示目录包含文件大小
-h,以Ko,Mo,Go形式显示文件大小
-a,显示文件和目录大小
-s,只显示总计大小
六、浏览和创建文件
cat和less,显示文件内容
cat,显示文件所有内容
less,分页显示文件内容 空格键显示下一个终端屏幕内容;回车键显示下一行内容;d键前进半页内容;b键后退一页;y键后退一行;u键后退半页;q键终止less命令;
=显示目前处于文件什么位置;h键显示帮助文档;/进入搜索模式
head和tail命令,显示文件开头和结尾(显示10行)
-n,制定显示行数
tail -f,追踪文件更新,每过一秒检查,-s参数可以指定检查时间间隔
touch和mkdir命令,创建一个空白文件、目录
mkdir -p可以递归创建目录,mkdir-p one/two/three
七、文件复制、移动、删除操作
cp和rm,拷贝和删除目录
cp -r/-R拷贝目录 cp *.txt folder,把当前文件夹下所有.txt结尾文件拷贝到folder文件夹中
mv,移动文件;重命名 mv移动文件时,并不会复制副本
rm,删除文件和目录, -i,询问是否删除;-f不会询问是否删除,文件会强制删除;-r,递归删除;
ln,创建链接,快捷方式
硬链接,链接的两个文件共享同样的内容,一般指向文件;ln file1 file2;可以使用ls -i查看两个文件对应的inode;删除任意一方的文件对其他文件没影响
软链接,可以指向目录;ln -s file1 file2;删除file2,对file1无影响,但删除file1,file2无效
八、用户和权限
sudo,以root身份运行命令,暂时成为root(默认是普通用户登录)
sudo su,一直成为root
用户管理命令
useradd,添加新用户
passwd,修改用户密码
userdel,删除用户,如果不加参数,只会删除用户,不会删除/home中的用户家目录 userdel -r thomas
群组管理和文件权限
创建用户时,若不创建群组,则会创建和其同名群组
groupadd,创建群组 groupadd friends;groupdel,删除群组
usermod,修改用户账户,-l,对用户重命名;-g,修改用户所在群组 usermod -g friends damien;-G将用户添加到不同的群组,-a继续追加群组(必须带上G参数);
groups,获知用户属于哪些群组
chown,改变文件的所有者,需要root身份运行
chown damien2 file.txt;改变文件群组chown damien:friends file.txt
chgrp,改变文件群组
chown -R,被修改目录的所有子目录或子文件所有者或群组
权限符号,d,表示目录;l,表示链接;r,表示可以读这个文件;w,表示写文件;x,表示可以执行这个文件(表示打开目录)
重复出现的权限符号,除去第一个字符(如d,l),从左到右被分为三组,所有者、群组、其他用户对此文件的权限
chmod,修改文件访问权限,不需要root用户才能运行,只要是此文件所有者便可修改
r->4;w->2;x->1;数字6表示读和写的权限
chmod 600 file
u->user;g->group;o->other;a->all;+->添加权限;;-->删除权限;=->分配权限
chmod u+rx file
-R递归修改访问权限
chmod -R 700 /home/damien
九、Nano文本编辑器和终端配置
centos预装了nano,因此终端直接输入nano即可启动,或者nano+文件名
nano快捷键:ctrl+字母
nano参数,-m,激活鼠标;-i,激活自动缩进功能;-A,激活智能Home键功能;nano -miA file.txt
通过.nanorc来配置nano
在家目录下使用nano .nanorc创建该文件
配置语句是以set或者unset开头,例如set mouse,用于激活鼠标,不必写-m参数;set autoindent,不必写-i参数
全局nano配置,为每个用户设置nano,在/etc/nano,只能被root用户修改;sudo nano /etc/nano
通过.bashrc配置终端
/home/damien/.bashrc 默认存在
在家目录下, nano ~/.bashrc
全局bashrc,/etc/bashrc
profile配置文件
sudo nano /etc/profile
是非图形化终端界面的配置文件;bashrc是图形化终端界面配置文件
profile文件会调用.bashrc文件
修改了.bashrc或者.profile文件后,默认用户下次登录系统时生效
source .bashrc可使修改立即生效
十、软件仓库
red hat一族中,软件包的名称为.rpm;Debian一族的软件包为.deb;
几乎所有的.rpm都在软件仓库中,软件仓库列表在 /etc/yum.repos.d/CentOS-Base.repo,只能被root用户修改
使用nano /etc/yun.repos.d/CentOS-Base.repo添加软件仓库地址(https://www.centos.org/download/mirrors/)
首先将原来软件仓库进行备份
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
下载阿里云的软件仓库
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
生成缓存
yum makecache
这时在看 nano /etc/yun.repos.d/CentOS-Base.repo,即被更新为阿里云源
软件下载
centos可以从图形化界面中进行软件的下载
也可以从终端进行软件的下载(常用)
使用yum进行包管理 sudo yum update/upgrade
yum install xxx,安装软件包
yum remove xxx,删除软件包
安装本地的软件包 sudo rpm -i *.rpm;卸载本地软件包 sudo rpm -e *.rpm
安装本地的软件包也可以用yum localinstall *.rpm来安装 yum remove *.rpm删除
十一、RTFM阅读手册
man命令,显示使用手册;
如果man手册未安装,则可使用sudo yum install -y man-pages进行安装;如果手册不全,则可以使用sudo mandb进行更新
man+命令 man ls;man mkdir
apropos,用于查找命令
apropos后接一些关键词,会显示一些命令 apropos sound
-h --help也有用于查看命令帮助文档
whatis命令,相当于man命令的精简版
在网络上也可查看手册
十二、查找文件
locate,快速查找文件 locate + 文件名;locate + 关键字
locate不会对整个硬盘进行查找,而是在文件数据库进行查找,因此,刚创建的文件不一定能查找出来,可以使用sudo updatedb更新数据库
find命令,与locate不同的是,find命令会遍历所有硬盘,find也可限定查找目录
find -name "file" find /var/log -name 'log' find / -name 'syslog'
根据文件大小查找
find /var -size +10M
根据最近访问时间查找
find -name "*.txt" -atime -7(近七天内访问的txt文件)
仅查找文件或目录
-type d,仅查找目录
-type f,仅查找文件
操作查找功能:-print,打印查找结果;-printf,格式化打印;-delete,删除查找到的文件;-exec(-ok),后接一个命令