Linux常用命令讲解

Linux常用命令讲解

Linux学习之路
1.Linux安装篇
1.1 Linux安装教程
1.2 vm的安装步骤
1.3 .CentOS安装步骤
2.Linux基础篇——
2.1CentOS终端使用和联网
2.2 vmtool 的安装和使用
2.3 使用 vmtools 来设置 windows 和 linux 的共享文件夹
2.4 Linux目录结构
2.5 目录结构的具体介绍
3.Linux实操篇
3.1 远程登录Linux系统
3.2 远程上传下载Xftp5
3.3 Vi 和 Vim 编辑器
3.4 开机、重启和用户登录注销
3.5 用户管理
3.6实用指令
1.Linux运行级别
2.运行级别切换指令
1.init指令
3.帮助指令(man、help)
1.man指令
2.help指令
4.文件目录类指令
1.pwd指令(查看当前目录)
2.ls指令(查看该目录下的 目录/文件)
3.cd指令(跳转目录)
4.mkdir指令
5.rmdir指令(删除目录)
6.touch指令(创建一个空文件)
7.cp指令(拷贝指令)
8.rm指令
9.mv指令
10.cat指令(查看文件内容,只读)
11.more指令
12.less指令(显示内容)
14.echo指令(输出语句)
15.head指令(显示文件开头)
16.tail指令(显示文件尾部)
17.ln指令(快捷方式)
18.history指令
5.时间日期类
1.date指令(显示当前日期)
2.date指令(设置日期)
3.cal指令(查看日历)
6.搜索查找类
1.find指令
2.locate指令(快速定位文件路径)
3.grep指令和管道符号|
7.压缩,解压缩
1.gzip/gunzip 指令
2.zip/unzip 指令
3.tar指令(打包指令)
3.7组管理和权限管理
1.linux组的基本介绍
2.文件/目录 所有者
3.修改文件所有者
4.组的创建
5.文件/目录 所在组
6.其他组
7.改变用户所在组
3.8权限管理
1.chmod指令
2.-R指令
3.9未分类指令
1.pwd指令
2.ls指令
3.mount指令
4.yum指令
4.0常见操作汇集
Q1.解压错误
Q2.linux 下 新建目录/解压文件 自动加锁的解决办法
Q3:vim 修改文件出现错误“E45: ‘readonly’ option is set (add ! to override)”
Q4:查看后台进程是否起来了
Q5:Linux连接redis客户端出现Could not connect to Redis at 127.0.0.1:6379: Connection refused
Q6:linux下如何安装jdk配置环境变量
Q7:linux下运行java文件
Q8:linux如何下运行tomcat
Q9:linux发布一个项目
Q10:window10的telnet不是内部命令(安装telnet)
Q11:如何实现远程桌面功能
Q12:如何远程了解到linux?
Q13:如果实现端口转发?
Q14:使用rpm安装软件
Q15:如何给linux传文件
Q16:YUM安装软件配置远程源
Q17:如果在linux使用mysql?
Q18:VMware虚拟机的设置无法进行编辑如何解决?
linux相关网络知识
OneNote上的笔记,会跟前面有重复
Linux学习之路
1.Linux安装篇
1.1 Linux安装教程
1.安装 vm 软件

2.通过 vm 软件创建一个虚拟机空间

3.通过 vm 软件在创建好的虚拟空间上,安装我们的 CenOS(Linux的一个版本) 操作系统

4.使用 CenOS

1.2 vm的安装步骤
1.去 BIOS(开机F2/F10进入) 修改设置开启虚拟机拟化设备支持

2.安装虚拟机软件(vm12):https://www.bilibili.com/video/av21597782/?p=8(内涵激活码)

1.3 .CentOS安装步骤
1.创建虚拟机(空间)(管理员方式运行 VMware Station)

https://www.bilibili.com/video/av21597782/?p=9

2.开始安装系统(CentOS6.8)

http://mirrors.sohu.com/centos/6/isos/x86_64/

http://mirrors.163.com/centos/6/isos/x86_64/

ps:虚拟机的网络连接三种形式的说明

1.桥接:虚拟机和本机的ip地址在同一个网段,别人能访问本机就能访问虚拟机;坏处是如果很多人,253ip(除去网关1,广播255)地址不够用,ip冲突。

2.NAT: window分配两个ip,ip1负责本机向外通讯,ip2跟Linux的ip在同一个网段,ip1和ip2在不同网段,所以别人不能访问虚拟机,但Linux可以访问外网,网络地址转换方式。

2.Linux基础篇——
2.1CentOS终端使用和联网
账号:Gwen

用户名:suguowen

密码:123456

1.终端的使用,点击鼠标右键,即可选择打开终端

2.配置网络可以上网(点击上面右侧:两个计算机图片,选择启用eth0,)

2.2 vmtool 的安装和使用
1.进入centos

2.点击 vm 菜单的 ->install vmware tools

3.centos 会出现一个 vm 的安装包

4.点击右键解压,得到一个安装文件

5.进入该 vm 解压的目录,该文件在 /root/桌面/vmware-tools-distrib/下

6.安装 ./vmware-install.pl

7.全部使用默认设置即可

8.需要 reboot 重新启动才可以生效

2.3 使用 vmtools 来设置 windows 和 linux 的共享文件夹
1.虚拟机 -> 设置 -> 选项 -> 共享文件夹 -> 总是启用 -> 添加windows共享文件夹

2.设置完后,共享文件夹在linux下的/mnt/hgfs/目录下

2.4 Linux目录结构
基本介绍:linux的文件系统是采用级层式的树状目录结构,在此机构中的最上层是根目录“/”,然后在此目录下再创建其他的目录

深刻理解 linux 树状文件目录非常重要,记住一句经典的话: 在 linux 的世界里,一切皆为文件

2.5 目录结构的具体介绍
总结:

1.linux的目录中有且只有一个根目录 /

2.linux的各个目录存放的内容是规划好的,不用乱放文件。

3.linux是以文件的形式管理我们的设备,因此linux系统,一切皆为文件。

4.linux1各个目录下存放什么内容,大家要有一个认识。

5.学习完,脑海中有一颗linux目录树。

3.Linux实操篇
3.1 远程登录Linux系统
1.为什么需要远程登录Linux

2.安装 XShell5 并使用

3.远程登录的界面

4.远程登录,需要输入账号密码,可以先在linux创造设置好。

Q:linux创建用户、设置密码

A:添加用户:useradd -m 用户名 ;然后设置密码 passwd 用户名;删除用户:userdel -r 用户名

3.2 远程上传下载Xftp5
1.软件介绍:Xftp5是基于 window 平台功能强大的sftp、ftp文件传输软件。使用了Xftp以后,window用户能安全地在 UNIX/Linux 和 WindowsPC 之间传输文件

2.安装配置使用

连接到Linux界面如下

3.如何解决ftp乱码问题

点击确定后刷新

3.3 Vi 和 Vim 编辑器
1.vi和vim基本介绍

2.vi和vim三种常见模式

3.例子

vim Hello.java (用 vim 打开/新建 Hello.java 文件) (进入正常模式)- > i (进入插入模式)-> 编写Java类代码 -> 键盘敲Esc(退出插入模式)-> :wq(冒号进入命令行模式,wq写入保存停止) -> 完成vim写java文件

ps:vim模式下, ? 跳到最后一行

3.4 开机、重启和用户登录注销
1.关机&重启命令

2.用户登录和注销

3.5 用户管理
1.Linux用户介绍

2.添加用户(在下面案例,useradd会默认把xiaoming放xiaoming组里)

3.修改密码

4.删除用户(删除用户时,我们一般不会将家目录删除)

5.查询用户信息(当用户不存在,返回“无此用户”)

6.切换用户

7.查看当前用户/登录用户

8.用户和组

1.增加、删除

2.增加且上组

例子

3.修改用户组

案例

4.用户和组的相关文件

3.6实用指令
1.Linux运行级别

2.运行级别切换指令
1.init指令

案例1

例子2

开机,enter -> ee1b改root密码(只有当你在服务器的电脑上们才能有这个操作,linux默认你是服务器的主人;无法远程改root密码)

3.帮助指令(man、help)
1.man指令

2.help指令
指令:xx –help(查看xx的用法)

4.文件目录类指令
1.pwd指令(查看当前目录)

2.ls指令(查看该目录下的 目录/文件)

例子

3.cd指令(跳转目录)

案例1:使用绝对路径切换都root兖

cd/root

案例2:使用相对路径到/root 目录(假设我们在/usr/lib下)

cd …/…/root

案例3:表示回到当前目录的上一级目录

cd…

案例4:回到家目录

cd ~

cd

4.mkdir指令

案例1:创建home下一个dog目录

案例2:创建home下多级目录 /animal/tiger

5.rmdir指令(删除目录)

实例删除一个目录/home/dog

使用细节

rmdir 删除的是空目录,如果目录下有内容无法删除。

提示:如果需要删除非空目录,需要使用 rm -rf 要删除的目录

6.touch指令(创建一个空文件)

案例1:创建一个空文件 hello.txt

案例2:一次性创建多个文件

7.cp指令(拷贝指令)

案例1:将 /home/aaa.txt 拷贝到 /home/bbb 目录下(拷贝单个文件)

案例2:递归复制整个文件夹,举例 将/home/test 整个拷贝到 /home/zwj 目录

使用细节:强制复制不提示(cp同一个文件名,强制覆盖不提示 是否覆盖)

小技巧:可以通过 上下箭头的键,调出原来使用过的指令。

8.rm指令

案例1:将 /home/aaa.txt 删除

案例2:递归删除 /home/bbb

使用细节

强制删除不提示,带上 -f 参数即可

9.mv指令

案例1:将 /home/aaa.txt 文件,重命名为 pig.txt

案例2:将 /home/pig.txt 文件,移动到 /root/目录下

10.cat指令(查看文件内容,只读)

案例1: /etc/profile 文件内容,并显示行号

使用细节

​ cat 只能浏览文件,而不能修改文件,为了浏览方便,一般会带上,管道 |more

11.more指令

案例:采用more查看文件 /etc/profile

快捷键(输入完more指令,然后看文档的时候,按下面的操作即可。)

12.less指令(显示内容)

案例:采用 less 查看一个大文件 /opt/金庸-射雕英雄传 txt精校版.txt

快捷键

13.>指令和>>指令

案例1:把列表内容写入 info.txt(如果info.txt不存在,则创建它再写入;如果存在,则覆盖)

案例2:把列表内容追加到b.txt

案例3:把一个文件的内容 覆盖/追加 到另一个文件(> / >>)

案例4:把一段文字 覆盖/追加 到另一个文件(> / >>)

echo “内容” >> a.txt

案例5:把当前日历信息 追加到 /home/mycal 文件中 [提示 cal]

14.echo指令(输出语句)

案例1:使用echo指令输出环境变量,输出当前的环境变量

案例2:使用echo指令输出 hello.world!

15.head指令(显示文件开头)

16.tail指令(显示文件尾部)

案例1:查看 /etc/profile 最后5行代码

案例2:实时监控 mydate.txt,看看文件有变化时,是否看到,实时追加日期

17.ln指令(快捷方式)

案例1:在 /home/ 目录下创建一个软连接 linkToRoot,连接到/root 目录

案例2:删除软连接 linkToRoot

提示:当我们使用pwd指令查看目录时,仍然看到的是软连接所在目录

18.history指令

案例1:显示所有的历史命令

案例2:显示最近使用过的10个命令

案例3:执行历史编号为5的指令

5.时间日期类
1.date指令(显示当前日期)

案例1:显示当前日期

案例2:显示当前时间年月日

案例3:显示当前年月日时分秒

2.date指令(设置日期)

案例1:设置系统当前时间,比如设置成2018-10-10 11:22:22

3.cal指令(查看日历)

案例1:显示当前月日历

案例2:显示2020年的日历

6.搜索查找类
1.find指令

案例1:按文件名,根据名称查找/home 目录下的hello.txt文件

案例2:按拥有者,查找/opt目录下,用户名称为nobody的文件

案例3:查找整个linux系统下大雨20M的文件(+n 大于 -n小于 n等于)

案例4:查询 / 目录下,所有.txt文件

2.locate指令(快速定位文件路径)

案例1:请使用 locate 指令快速定位 hello.txt 文件所在目录

3.grep指令和管道符号|

案例1:请在 hello.txt 文件中,查找“yes” 所在行,并且显示行号。

7.压缩,解压缩
1.gzip/gunzip 指令

案例1:将 /home 下的 hello.txt 文件进行压缩

案例2:将 /home 下的 hello.txt.gz 文件进行解压缩

细节说明:

当我们使用gzip对文件进行压缩后,不会保留原来的文件

2.zip/unzip 指令

案例1:将 /home 下的所有文件进行压缩成 mypackage.zip

案例2:将 mypackage.zip 压缩到 /out/tmp 目录下

3.tar指令(打包指令)

案例1:压缩多个文件,将 /home/a1.txt 和 /home/a2.txt 压缩成 a.tar.gz

案例2:将 /home 的文件夹,压缩成 myhome.tar.gz

案例3:将 a.tar.gz 解压到当前目录

案例4:将 myhome.tar.gz 解压到 /opt/ 目录下

案例5:查看压缩包pak压缩包下有什么文件

使用提示:

指定目录事先要有,否则会报错

3.7组管理和权限管理
1.linux组的基本介绍

2.文件/目录 所有者

3.修改文件所有者
指令:chown 用户名 文件名

案例:使用root创建一个文件apple.txt,然后将其所有者修改成 tom

4.组的创建

案例1:创建一个组 ,monster;创建一个用户fox,并放入monster组中

5.文件/目录 所在组

案例1:

案例2:使用root用户创建文件 orange.txt 看看当前这个文件属于哪个组,然后将这个文件所在组,修改到police组。

6.其他组
除文件的所有者和所在组的用户外,系统的其他用户都是文件的其他组。

7.改变用户所在组

案例:创建一个土匪组(bandit)将tom这个用户从原来所在的police组,修改到bandit(土匪)组

3.8权限管理
1.chmod指令

案例:修改b.txt的user权限,赋值,减权

2.-R指令
指令:指令 -R 动作 文件夹名

3.9未分类指令
1.pwd指令
指令:查看当前目录

[root@localhost ~]# pwd
/root
[root@localhost ~]#
1
2
3
2.ls指令
指令:显示指定目录下的文件、目录列表

3.mount指令
指令:mount命令用于加载文件系统到指定的加载点。此命令的最常用于挂载cdrom,使我们可以访问cdrom中的数据,因为你将光盘插入cdrom中,Linux并不会自动挂载,必须使用Linux mount命令来手动完成挂载。

实例1:将dev的cdrom挂载到mnt的cdrom

案例2:mount -t iso9660 /dev/cdrom /mnt是什么意思

mount 是挂载的意识,这个是在linux非常有用的命令。
mount -t iso9660 /dev/cdrom /mnt
这句话的意识是把你的cd驱动器挂载到文件系统/mnt下面
iso9660是标准的cd文件格式,它告诉mount命令,我要
挂载的是一个标准的cd。
如果不执行这个命令,你就算是把cd放入到cd驱动器中,在
linux系统中,你也是看不到你的cd盘中的内容的。
这个命令执行完了后,你就可以在/mnt下面看到你的cd驱动
器中的cd里面的文件了。
执行和这个命令之前,要在cd上指定源文件,如下图,挂载后,打开/mnt/Package就可以找到很多安装文件了
1
2
3
4
5
6
7
8
9
10

4.yum指令
指令:配置仓库(特别强调,下面的guanpan.repo的后缀不能改,写多一个s,yum都会找不到仓库),配置仓库在/etc/yum.repos.d目录下

–linux下编辑
[root@localhost /]# cd /etc/yum.repos.d/ --跳到仓库服务器
[root@localhost yum.repos.d]# ls
packagekit-media.repo redhat.repo rhel-source.repo
[root@localhost yum.repos.d]# vi guanpan.repo --创建一个仓库
1
2
3
4
5
–guanpan.repos编辑如下
[guanpan]
name=rhel_6.8
baseurl=file:///mnt --file://代表协议,/mnt代表指定仓库路径
gpgcheck=1 --1代表检查签名
1
2
3
4
5
6
–linux下编辑
[root@localhost yum.repos.d]# yum clean all --运行clean all清理缓存初始化
Loaded plugins: product-id, refresh-packagekit, search-disabled-repos, security,
: subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Cleaning repos: InstallMedia
Cleaning up Everything

–使用yum下载
[root@localhost yum.repos.d]# yum search telnet --插看有无telnet包
[root@localhost yum.repos.d]# yum install telnet --下载telnet包,发现没有签名
[root@localhost yum.repos.d]# rpm --import /etc/pki/rpm-gpg/RPM* -加签名
[root@localhost yum.repos.d]# yum install telnet --再执行一次,成功执行
1
2
3
4
5
6
7
8
9
10
11
12
13
–linux下卸载
[root@localhost yum.repos.d]# yum remove telnet
1
2
4.0常见操作汇集
Q1.解压错误
如下

[root@Gris-11140 FMIS2600bak]# tar -zxvf /home/oradata/FMIS2600DMP.tar.gz
gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now
1
2
3
4
A1:解决方案:去掉z参数,使用 tar -xvf 解压正常

Q2.linux 下 新建目录/解压文件 自动加锁的解决办法
A2:在linux下,当我们将新下载的tar文件解压到一个新建文件或目录下,解压的文件会有自动上锁的情况,这个问题的解决方法就是用 sudo chmod 777 -R 文件或目录;执行上面这个命令需要root权限,su -,切换为root。

Q3:vim 修改文件出现错误“E45: ‘readonly’ option is set (add ! to override)”
A3:如果是root权限,可以:wq! 强行保存退出

Q4:查看后台进程是否起来了
A4:ps -ef|grep redis

– 我在另一个界面开了redis
[admin@localhost /]$ ps -ef|grep redis
root 3877 1 0 16:48 ? 00:00:00 ./redis-server 127.0.0.1:6379
root 3881 3826 0 16:49 pts/0 00:00:00 ./redis-cli
admin 3922 3908 0 16:54 pts/1 00:00:00 grep redis
– 我在另一个界面关了redis
[admin@localhost /]$ ps -ef|grep redis
admin 3924 3908 0 16:54 pts/1 00:00:00 grep redis
1
2
3
4
5
6
7
8
9
Q5:Linux连接redis客户端出现Could not connect to Redis at 127.0.0.1:6379: Connection refused
A5:服务没起来执行

./redis-server ./redis.conf --启用服务

./redis-cli --开启端口

127.0.0.1:6379> --成功

127.0.0.1:6379> set su guowen
OK
127.0.0.1:6379> get su
“guowen”
127.0.0.1:6379> shutdown
not connected> exit
[root@localhost redis]#

1
2
3
4
5
6
7
8
9
10
11
12
13
Q6:linux下如何安装jdk配置环境变量
A6:链接https://www.cnblogs.com/liugh/p/6623530.html

Q7:linux下运行java文件
A7:

–vi Demo.java后会进入正常模式,按i进入编辑模式,输入java代码,按ESC返回正常模式,按:wq保存退出
[root@localhost file]# vi Demo.java
[root@localhost file]# javac Demo.java
[root@localhost file]# java Demo
Hello suguowen
[root@localhost file]#
1
2
3
4
5
6
7
Q8:linux如何下运行tomcat
A8:xftp拉linux版本的tomcat包到root的根目录,xshell登录root运行tar解压命令,进入到bin目录,./startup.sh运行即可,./shutdown.sh可以杀掉(如果linux里面有防火墙,需要添加8080端口可访问,然后重启防火墙才可以其他电脑访问)

Q9:linux发布一个项目
A9:

Q10:window10的telnet不是内部命令(安装telnet)
A10:控制面板->程序->程序和功能->启用或关闭windows功能->勾选 telnet客户端

https://jingyan.baidu.com/article/1e5468f9033a71484961b7d7.html

Q11:如何实现远程桌面功能
A11:被远程操作的电脑都需要如下设置,允许远程连接到此计算机;如果想远程别人,打开win+R输入mstsc,输入远程计算机的ip即可,如果别人设置了用户密码,也要获得账号密码才能进入(远程桌面用到了3389端口,linux远程别人用22端口)

Q12:如何远程了解到linux?
A12:使用XShell或者SecureCRT都可以,XShell只要知道linux的ip和一个用户的账号密码即可,SecureCRT要VMvare设置网络编辑器,在NAT模式设置端口转发,在桥接模式直接连就可以

Q13:如果实现端口转发?
A13:打开VMvare->编辑->虚拟网络编辑器->VMnet8 NAT模式->NAT设置->端口转发->添加->主机端口是可以随便填,虚拟机端口22不能改,填完确认应用一下即可

Q14:使用rpm安装软件
A14:打开Centos,在虚拟机的图标右击进入设置,如下配置使用rhel-server挂在进虚拟机

挂在完后,默认是在/media目录下响应的包,进入到/media/xxxx/Packages里面(xxx是你挂在的文件名),执行rpm -ivh xxx 即可安装xxx软件,执行rpm -e xxx即可卸载xxx软件

Q15:如何给linux传文件
A15:使用XFTP或者SFTP

Q16:YUM安装软件配置远程源
A16:用secureCRT远程连接虚拟机,/yum.repos.d配置源163.repo(举例),敲下图代码,http://就是配网络源文件

Q17:如果在linux使用mysql?
A17:

180 yum search mysql-server --寻找有没有mysql服务
181 yum install mysql-server --找到了就下载
182 mysql -uroot -p --尝试登陆,发现登陆失败,想想我们并没有开启mysql服务
183 service mysqld start --开启服务
184 mysql -uroot -p --登陆mysql
1
2
3
4
5
6
Q18:VMware虚拟机的设置无法进行编辑如何解决?
A18:https://jingyan.baidu.com/article/a17d5285c30a328098c8f2d4.html

答:一般是应为挂起了虚拟机没有关机,关机就可以编辑了

linux相关网络知识
路由器:

https://www.192ly.com/192-168-1-1/what-is-the-address-192-168-1-1.html

个人理解:家里不装路由器结果就是你只能一台电脑上网,装了可以多台电脑上网

百度理解:是连接因特网中各局域网、广域网的设备,它会根据信道的情况自动选择和设定路由,以最佳路径,按前后顺序发送信号

图解:120.230.101.47是移动给我们发的公网ip,只有一个,如果没有路由,我们就只能用一台电脑用这个ip来上网,而如果有路由器,它就会给路由器设定一个私网ip192.168.1.1,给其他电脑设定ip范围192.168.1.0~192.168.1.255之间唯一随意取一个,当我们用192.168.1.101这个ip访问一个链接比如百度的时候(发送一个包,这个包包含三个部分如下图右),路由会用公网ip替换掉我们的私有ip,再把包发出去,所以私有ip只是在我们内部使用,别人是不知道的。路由器发挥了NAT能力,即net address translate–地址转换

Vmvare:

https://www.cnblogs.com/feifei-cyj/p/7686166.html

Nat模式:虚拟机的ip可以访问本机ip提供的服务,但是本机ip不能接受虚拟机提供的服务

桥接模式:虚拟机跟本机同一个网段,可以互通

Nat模式下,让别人访问到自己

1.正常情况下,本机无法访问虚拟机ip,但我们设置转发器即可

SSH服务

安装套接字

挂载的概念

一个分区需要有一个文件夹与之对应

https://zhidao.baidu.com/question/55617971.html

OneNote上的笔记,会跟前面有重复

1.终端的概念

2.shell的概念

3.几个技巧

tab:代码补全

Ctrl+c:停止程序,相当于重开终端

4.查看用户

5.添加用户

密码不可见

6.切换用户

7.查看用户组(sudo是最高权限组)

8.为hello添加到sudo权限组

9.删除用户

10查看文件权限

11.创建文件

12.更改文件所有者7

11.查看当前路径

12相对路径跳转

13.使用绝对路径

14跳转回home

15.新建文件

16.mkdir新建目录

17.cp复制文件到指定地方

18.cp复制目录并改名

19.rm删除文件

20.rm -r删除目录

21.mv改名


作者:Gwen小苏
来源:CSDN
原文:https://blog.csdn.net/qq_38056704/article/details/82027200

你可能感兴趣的:(Linux常用命令讲解)