Linux是一种自由和开放源代码的类UNIX操作系统,该操作系统的内核由林纳斯托瓦兹在1991年首次发布,之后,在加上用户空间的应用程序之后,就成为了Linux操作系统。严格来讲,Linux只是操作系统内核本身,但通常采用“Linux内核”来表达该意思。而Linux则常用来指基于Linux内核的完整操作系统, 它包括GUI组件和许多其他实用工具。其版本主要有Centos,Deepin,Ubuntu,Debian,红帽企业级Linux等。
CentOS是一款企业级Linux发行版,它使用红帽企业级Linux中的免费源代码重新构建而成。这款重构版完全去掉了注册商标以及Binary程序包方面一个非常细微的变化。有些人不想支付一大笔钱,又能领 略红帽企业级Linux;对他们来说,CentOS值得一试。此外,CentOS的外观和行为似乎与母发行版红 帽企业级Linux如出一辙。 CentOS使用YUM来管理软件包。
Linux在使用的时候可以采用xshell进行远程操作,在虚拟机中打开Linux终端,在确保网络连接到位的情况下,在终端输入[ifconfig],然后在出现的东东里找ens32中的inet 后面会出现虚拟机中网络的地址,再通过xshell进行远程连接。
在xshell中新建一个文件,输入 ssh [ip地址],如果网络通畅,就会出现输入用户名和密码的请求,按自己虚拟机中Linux的用户名和密码来输入就连接成功了。
另外,在Linux环境下,复制粘贴不能再用 ctrl+C和ctrl+V,复制可以用Ctrl+insert,粘贴可以用shift+insert,如果没反应可以再配合上fn一起使用。
xshell 用途:将命令呈递给操作系统 并将操作系统处理的结果返回给用户
基础指令
1.ls指令
方式: ls [选项][目录/文件]
功能: 目录的话,就会列出该目录下所有的文件和子目录;对于文件则会列出文件名和其他的一些信息
选项:
ls -a 列出当前目录下所有文件,包括.和..的隐藏文件
ls -d [指定目录] 将目录像文件一样显示,而不是显示其下的文件
ls -i 显示文件的i节点的索引信息
ls -k 以k字节的形式表示文件的大小
ls -l 列出文件的详细信息
ls -n 用数字的UID,GID代替名称
ls -F (注意F需要大写)在每个文件名后面附上一个字符以说明该文件的类型,"*"表示可执行的普通文件,"/"表示目录
"@"表示符号链接,"|"表示FIFOs,"="表示套接字(目录类型识别)
ls -r 对目录进行反向排序
ls -t 对目录以时间进行排序
ls -s 在文件名后输出该文件的大小
ls -R 列出所有子目录下的文件(方式的递归)
ls -1 一行只输出一个文件(试过了,两个文件不行)
2.pwd命令
语法:pwd
功能:显示用户所在的当前目录
3.cd指令
语法:cd [目录名]
功能:改变用户的当前工作目录,将当前工作目录改变到指定的目录下
cd /目录 表示到当前文件的下一级该目录名的目录下
cd . 表示当前目录
cd ~ 回到工作目录下
cd .. 表示上一级目录
绝对路径:从根目录下用 /目录名 一级一级跳转到目标目录下的路径,cd /home/duchenlong/
相对路径:相对与当前目录而跳转的路径,cd .. cd ~
4.touch指令
语法:touch [选项] [文件名]
功能:可以更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件
选项:
touch -a 只更改存取时间
touch -c /--no-creat 不建立任何文档
touch -d /-t 使用指定的日期时间,而非现在的时间
touch -r 把制定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同
5.mkdir指令
语法:mkdir [选项] 目录名
功能:在当前目录下创建一个名为指定目录名的目录
选项:
mkdir -p text/text1 递归创建多个目录(可以创建多个也可以创建一个)
6.rmdir指令和rm指令
rmdir:是一个和mkdir作用差不多的命令,作用是删除目录
语法:rmdir [-p] [要删除的目录名]
适用对象:具有当前目录操作权限的所有使用者
功能:删除空目录 (当子目录被删除后,如果父目录变成空目录,也连带父目录一起删除)
rm:命令可以同时删除文件或目录
语法:rm [选项] [文件名/目录名]
适用对象:所有使用者
功能:删除文件或目录
选项:
rm -f (force强制删除)即是文件的属性为只读,也同样删除,
指令比较暴力单一,弄不好就可以删库跑路了
rm -i 删除前逐一询问确认
rm -r (递归删除)删除目录及其下所有文件
rm [filename] 直接删除普通文件
rm -rf * (* 表示所有) 默认删除当前文件下的所有文件
7.man指令
man指令相当于一本书,书中记载了Linux中的参数的使用方法和介绍功能。
语法:man [选项] 命令
选项:
man -k 根据关键字搜索联机帮助
man num 只在第num章节找该命令
man -a 将所有章节都显示出来,按q键退出查找,Pg up键和Pg Dn键可以翻页
8.cp指令
语法:cp [选项] 源文件或者目录 目标文件或者目录
功能:复制文件或目录
说明:cp指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录, 则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息
选项:
cp -f 强行复制文件或者目录,不论目的文件或者目录是否已经存在
cp -i 覆盖文件之前先询问用户
cp -r 递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录形态不属于目录或者符号链接,则
视为普通文件处理
cp -R 递归处理,将指定目录下的文件与子目录一并处理。
9.mv指令
语法:mv [选项] 源文件或目录 目标文件或目录
功能:
1. 视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移到一个新的目录中。
2. 当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。
3. 当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中
选项:
mv -f force是强制的意思,如果目标文件已经存在,不会询问而直接覆盖
mv -i 在覆盖的过程中如果目标文件已经存在,会询问是否覆盖
10.cat
语法:cat [选项] [文件]
功能:查看目标文件内容
选项:
cat -b 对非空输出行编号
cat -n 对输出的所有行编号
cat -s 不输出多行空行
11.more指令
语法:more [选项] [文件]
功能:和cat 类似
选项:
12.less指令
less工具也是对文件或其他输出进行分页显示工作,与more不同的是,它有更多的搜索功能,不止可以向下搜,也可以向上搜。
语法:less [参数] [文件]
功能:可以随意浏览文件,在查看之前不会加载整个文件
选项:
less -i 忽略搜索时的大小写
less -N 显示每行的行号
less /字符串 向下搜索“字符串”的功能
less ?字符串 向上搜索“字符串”的功能
less n 重复前一个搜索(与 / 或 ? 有关)
less N 反向重复前一个搜索(与 / 或 ? 有关)
13.head指令
语法:head [参数] [文件]
功能:head用来显示档案的开头至标准输出中,默认head打印文件的前十行
选项:
head -f 循环读取
head -n 行数 显示指定行内容
14.tail指令
语法: tail [必要参数] [选择参数] [文件]
功能: 用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。
选项:
tail -f 循环读取
tail -n 行数 显示指定行内容
15.和时间相关的指令
date指令
在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记
%H : 小时(00..23)
%M : 分钟(00..59)
%S : 秒(00..61)
%X : 相当于 %H:%M:%S
%d : 日 (01..31)
%m : 月份 (01..12)
%Y : 完整年份 (0000..9999)
%F : 相当于 %Y-%m-%d
在设置时间方面
date -s “2008-05-23 01:01:01″ //设置全部时间
时间戳:
data %s
16.cal指令
用法: cal [参数] [月份] [年份]
cal -y 显示当前年份的日历
17.find指令
语法:find pathname -options
功能:用于在文件树种中查找文件并作出相应的处理,可能会访问磁盘。
选项:
find -name 按照文件名查找文件
18.grep指令
语法:grep [选项] [搜索的字符串] [文件]
功能:在文件中搜索字符串,将找到的行打印出来
选项:
grep -i 忽略大小写的不同,所有大小写视为相同
grep -n 顺序输出行号
grep -v 反向选择,即显示出没有搜索字符串的那一行
19.zip/unzip指令
语法:zip 压缩后的文件名.zip 需要压缩的文件名
功能:将目录或文件压缩成zip的格式(zip是压缩,unzip是解压,用法相同)
选项:
zip -r 递归处理,可以把指定目录下的所有文件和子目录一并处理
20.tar指令
语法:tar [选项] 压缩后的文件名.tar 需要压缩的文件名
功能:压缩文件
选项:
tar -c 建立一个压缩文件的参数指令(create 的意思)
tar -x 解开一个压缩文件的参数指令
tar -t 查看tarfile 里面的文件
tar -z 是否同时具有 gzip 的属性?是否需要用 gzip 压缩
tar -j 是否同时具有 bzip2 的属性?是否需要用 bzip2 压缩
tar -v 压缩过程中显示文件,不建议在背景执行的过程中使用
tar -f 使用档名,在f 后要立即接档名,不要再加参数
tar -C 解压到指定目录
21.uname -r指令
语法:uname [选项]
功能:用来获取电脑和操作系统的相关信息
选项:
uname -a 详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,
硬件名,处理器类型,硬件平台类型,操作系统名称
常用的快捷键
[tab] 具有命令补全和档案补齐的意思
[ctrl]+c 让当前程序停止
[ctrl]+d 通常代表键盘输入结束,也可以代表exit
关机命令
shutdown -h 在系统的服务停掉之后,立即关机
shutdown -r 在系统服务停掉之后就重新启动
shutdown -t sec 在几秒后关机
权限:
Linux操作系统中分三种权限: r w x (可读 可写 可执行);两种用户: root用户 和普通用户
权限的给定方式:用三位8进制的数字来表示三种情况,1 表示拥有该权限 ,0 表示没有该权限
文件的访问和权限的修改
chmod
语法:chmod [参数] 要修改的权限 要修改权限的文件名
格式:
+ :向权限范围增加权限代号所表示的权限
- :向权限范围取消权限代号所表示的权限
= :向权限范围赋予权限代号所表示的权限
用户符号:
u: 拥有者
g: 拥有者同组用
o: 其它用户
a: 所有用户
chmod u+w [文件名]
umask
用途:查看或修改文件掩饰码,实际上所创建的文件和目录,看到的权限往往不是上面这个值。原因就是创建文件或目录的时候还要受到 umask的影响。假设默认权限是mask,则实际创建的出来的文件权限是: mask & ~umask