linux常用命令记录

环境virtualbox , centos6.8
参考尚硅谷韩顺平老师的linux讲课资料

关于Linux的一些基础知识

?Shell
是指“提供使用者使用界面”的软件(命令解析器),类似于DOS下的
command和后来的cmd.exe。它接收用户命令,然后调用相应的应用程序
?sudo命令
sudo是ubuntu中一种权限管理机制,管理员可以授权给一些普通用户去执行一
些需要root权限执行的操作。当使用sudo命令时,就需要输入您当前用户的密码
?输入密码
在Linux的终端中输入密码,终端是不会显示任何你当前输入的密码,也不会提
示你已经输入了多少字符密码,读者不要误以为键盘没有响应
?输入法中英文切换
linux中英文的切换方式是使用键盘“shift”键来切换,也可以点击顶部菜单的输
入法按钮进行切换。 Ubuntu自带的Sunpinyin中文输入法已经足够读者使用

Vi和Vim编辑器

正常模式:
插入模式i
离开vim::q :q! :wq
快捷键使用练习:

  1. 拷贝当前行 yy , 拷贝当前行向下的5行 5yy,并粘贴。
  2. 删除当前行 dd , 删除当前行向下的5行 5dd
  3. 在文件中查找某个单词 [命令行下 /关键字 , 回车 查找 , 输入 n 就是查找下一个 ]
  4. 设置文件的行号,取消文件的行号.[命令行下 : set nu 和 :set nonu]
  5. 编辑 /etc/profile 文件,使用快捷键到底文档的最末行[G]和最首行[gg]
  6. 在一个文件中输入 “hello” ,然后又撤销这个动作 u
  7. 编辑 /etc/profile 文件,并将光标移动到 20行 shift+g
  8. 更多的看整理的文档

开机、重启和用户登录注销

预备工作sync内存内容写入磁盘
shutdown -h now关机halt
shutdown -r now重启reboot
切换系统管理员,输入su,密码
注销exit(centos可能用logout)

用户管理

切换用户
su 用户名

添加用户
基本语法
useradd 用户名

指定/修改密码
基本语法
passwd 用户名

删除用户
基本语法
userdel 用户名

查询用户信息指令
基本语法
id 用户名

实用指令
指定运行级别

linux常用命令记录
less指令用来分屏查看文件内容。
并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。
less 要查看的文件
linux常用命令记录
设置日期
? 基本语法
date -s 字符串时间
? 应用实例
案例1: 设置系统当前时间 , 比如设置成 2020-11-11 11:22:22

cal指令
查看日历指令

linux常用命令记录
linux常用命令记录

压缩和解压类

gzip压缩
gunzip解压
gzip 文件
gunzip 文件.gz

zip压缩
unzip解压
zip [选项] xxx.zip
-r递归
unzip [选项] xxx.zip
-d 指定解压后文件存放目录

tar打包目录
tar [选项] xxx.tar.gz 打包内容

选项 功能
-c 产生.tar打包文件
-v 显示详细信息
-f 指定压缩后的文件名
-z 打包同时压缩
-x 解包.tar文件

组管理和权限管理

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

组的创建
groupadd 组名

文件/目录 所在组
当某个用户创建了一个文件后,这个文件的所在组就是该用户所在的组。
查看文件的所有者
指令:ls –ahl
修改文件所在的组
chgrp 组名 文件名
改变用户所在组

  1. usermod –g 组名 用户名
  2. usermod –d 目录名 用户名 改变该用户登陆的初始目录。

权限基本介绍

linux常用命令记录

修改文件所有者-chown
chown newowner file 改变文件的所有者
chown newowner:newgroup file 改变用户的所有者和所有组
-R 如果是目录 则使其下所有子文件或目录递归生效

修改文件所在组-chgrp
chgrp newgroup file 改变文件的所有组

crond 任务调度
crontab [选项]

linux常用命令记录
linux常用命令记录

Linux磁盘分区、挂载

查看所有设备挂载情况
命令 :lsblk 或者 lsblk -f

挂载的经典案例
1.在【虚拟机】菜单中,选择【设
置】,然后设备列表里添加硬盘,
然后一路【下一步】,中间只有
选择磁盘大小的地方需要修改,
至到完成。然后重启系统(才能
识别)!
2.分区命令 fdisk /dev/sdb
开始对/sdb分区
? m 显示命令列表
? p 显示磁盘分区 同 fdisk –l
? n 新增分区
? d 删除分区
? w 写入并退出
3.分区命令:mkfs -t ext4 /dev/sdb1
其中ext4是分区类型
4.挂载: 将一个分区与一个目录联系起来,
? mount 设备名称 挂载目录
? 例如: mount /dev/sdb1 /newdisk
? umount 设备名称 或者 挂载目录
? 例如: umount /dev/sdb1 或者 umount /newdisk
5.永久挂载: 通过修改/etc/fstab实现挂载
添加完成后 执行mount –a 即刻生效
? 用命令行挂载重启后会失效

查询指定目录的磁盘占用情况
? 基本语法
du -h /目录
查询指定目录的磁盘占用情况,默认为当前目录
-s 指定目录占用大小汇总
-h 带计量单位
-a 含文件
–max-depth=1 子目录深度
-c 列出明细的同时,增加汇总值

网络配置

Ubuntu软件操作的相关命令

sudo apt-get update 更新源
sudo apt-get install package 安装包
sudo apt-get remove package 删除包
sudo apt-cache search package 搜索软件包
sudo apt-cache show package 获取包的相关信息,如说明、大小、版本等
sudo apt-get install package –reinstall 重新安装包
sudo apt-get -f install 修复安装
sudo apt-get remove package –purge 删除包,包括配置文件等
sudo apt-get build-dep package 安装相关的编译环境
sudo apt-get upgrade 更新已安装的包
sudo apt-get dist-upgrade 升级系统
sudo apt-cache depends package 了解使用该包依赖那些包
sudo apt-cache rdepends package 查看该包被哪些包依赖
sudo apt-get source package 下载该包的源代码
下载地址https://mirrors.tuna.tsinghua.edu.cn/ubuntu/

使用ssh远程登录Ubuntu
SSH为Secure Shell的缩写,由 IETF 的网络工作小组(Network Working Group)所制定;
SSH 为建立在应用层和传输层基础上的安全协议。
使用SSH服务,需要安装相应的服务器和客户端。客户端和服务器的关系:如果,A机器想
被B机器远程控制,那么,A机器需要安装SSH服务器,B机器需要安装SSH客户端。
和CentOS不一样,Ubuntu默认没有安装SSHD服务,因此不能进行远程登录。
sudo apt-get install openssh-server
service sshd restart
执行上面的指令,就启动了 sshd 服务。会监听端口22

使用ssh远程登录Ubuntu
ssh 用户名@IP
例如:ssh atguigu@192.168.188.130
使用ssh访问,如访问出现错误。可查看是否有该文件 ~/.ssh/known_ssh 尝试删除该文件
解决。
? 登出
登出命令:exit或者logout

进程管理(important)

基本介绍

  1. 在LINUX中,每个执行的程序(代码)都称为一个进程。每一个进程都分配一
    个ID号。
  2. 每一个进程,都会对应一个父进程,而这个父进程可以复制多个子进程。例
    如www服务器。
  3. 每个进程都可能以两种方式存在的。前台与后台,所谓前台进程就是用户目
    前的屏幕上可以进行操作的。后台进程则是实际在操作,但由于屏幕上无法
    看到的进程,通常使用后台方式执行。
  4. 一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中。直到
    关机才才结束。

显示系统执行的进程

基本介绍
ps命令是用来查看目前系统中,有哪些正在执行,以及它们执行的状况。

linux常用命令记录
chkconfig指令
? 介绍
通过chkconfig 命令可以给每个服务的各个运行级别设置自启动/关闭
? 基本语法
  1. 查看服务 chkconfig –list|grep xxx
  2. chkconfig 服务名 –list
  3. chkconfig –level 5 服务名 on/off

动态监控进程

top与ps命令很相似。它们都用来显示正在执行的进程。Top与ps最大的不同之处,在于top
在执行一段时间可以更新正在运行的的进程。
基本语法:
top [选项]

linux常用命令记录

监控网络状态

查看系统网络情况netstat
? 基本语法
netstat [选项]
? 选项说明
-an 按一定顺序排列输出
-p 显示哪个进程在调用

RPM 与 YUM

rpm包的管理

一种用于互联网下载包的打包及安装工具,它包含在某些Linux分发版中。它生成具有.RPM扩展名的文件。

rpm包的简单查询指令:
查询已安装的rpm列表 rpm –qa|grep xx
rpm包的其它查询指令:
rpm -qa :查询所安装的所有rpm软件包
rpm -qa | more
rpm -qa | grep X [rpm -qa | grep firefox ]

rpm -q 软件包名 :查询软件包是否安装
rpm -q firefox

rpm -qi 软件包名 :查询软件包信息
rpm -qi file

rpm -ql 软件包名 :查询软件包中的文件
rpm -ql firefox

rpm -qf 文件全路径名 查询文件所属的软件包
rpm -qf /etc/passwd
rpm -qf /root/install.log

卸载rpm包:

? 基本语法
rpm -e RPM包的名称

安装rpm包:

? 基本语法
rpm -ivh RPM包全路径名称
? 参数说明
i=install 安装
v=verbose 提示
h=hash 进度条

yum

Yum 是一个Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包。

yum的基本指令
? 查询yum服务器是否有需要安装的软件
yum list|grep xx软件列表
? 安装指定的yum包
yum install xxx 下载安装

Linux之JavaEE定制篇

安装JDK
测试是否安装成功
Eclipse的安装
mysql的安装

Linux之大数据定制篇

Shell编程

编写Shell程序来进行服务器管理。
Shell是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以用Shell来启动、挂起、停止甚至是编写一些程序。

Shell脚本的执行方式
脚本格式要求

  1. 脚本以#!/bin/bash开头
  2. 脚本需要有可执行权限
    编写第一个Shell脚本
    ? 需求说明
    创建一个Shell脚本,输出hello world!
    脚本的常用执行方式
    ? 方式1(输入脚本的绝对路径或相对路径)
    1)首先要赋予helloworld.sh 脚本的+x权限
    2)执行脚本
    ? 方式2(sh+脚本)
    说明:不用赋予脚本+x权限,直接执行即可。

Shell的变量
Shell的变量的介绍
1)Linux Shell中的变量分为,系统变量和用户自定义变量。
2)系统变量:$ H O M E 、 HOME、 HOMEPWD、 S H E L L 、 SHELL、 SHELLUSER等等
比如: echo $HOME 等等…
3)显示当前shell中所有变量:set
shell变量的定义
? 基本语法
1)定义变量:变量=值
2)撤销变量:unset 变量
3) 声明静态变量:readonly变量,注意:不能unset
? 快速入门
案例1:定义变量A
案例2:撤销变量A
案例3:声明静态的变量B=2,不能unset
案例4:可把变量提升为全局环境变量,可供其他shell程序使用

shell变量的定义
? 定义变量的规则

  1. 变量名称可以由字母、数字和下划线组成,但是不能以数字开头。
  2. 等号两侧不能有空格
  3. 变量名称一般习惯为大写
    ? 将命令的返回值赋给变量
    1)A= 反引号,运行里面的命令,并把结果返回给变量A
    2)A= 等价于反引号

设置环境变量

基本语法

  1. export 变量名=变量值 (功能描述:将shell变量输出为环境变量)
  2. source 配置文件 (功能描述:让修改后的配置信息立即生效)
  3. echo $变量名 (功能描述:查询环境变量的值)

位置参数变量

当执行一个shell脚本时,如果希望获取到命令行的参数信息,就可以使用到位置参数变量
比如 : ./myshell.sh 100 200 , 这个就是一个执行shell的命令行,可以在myshell 脚本中获取到参数信息
基本语法
(功能描述:n为数字,$0代表命令本身,代表第一到第九个参数,十以上的参数,十以上的参
数需要用大括号包含,如)
(功能描述:这个变量代表命令行中所有的参数,把所有的参数看成一个整体)
(功能描述:这个变量也代表命令行中所有的参数,不过把每个参数区分对待)
(功能描述:这个变量代表命令行中所有参数的个数)

预定义变量

基本介绍
就是shell设计者事先已经定义好的变量,可以直接在shell脚本中使用
基本语法
(功能描述:当前进程的进程号(PID))
(功能描述:后台运行的最后一个进程的进程号(PID))
(功能描述:最后一次执行的命令的返回状态。如果这个变量的值为0,证明上一个命令正
确执行;如果这个变量的值为非0(具体是哪个数,由命令自己来决定),则证明上一个命令执行不正确了。)

运算符

基本介绍
学习如何在shell中进行各种运算操作。
基本语法

  1. “”或“”
  2. expr m + n
    注意expr运算符间要有空格
  3. expr m – n
  4. expr *, /, % 乘,除,取余

条件判断

判断语句
? 基本语法
[ condition ](注意condition前后要有空格)
#非空返回true,可使用$证(0为true,>1为false)
判断语句
? 常用判断条件

  1. 两个整数的比较
    = 字符串比较
    -lt 小于
    -le 小于等于
    -eq 等于
    -gt 大于
    -ge 大于等于
    -ne 不等于
  2. 按照文件权限进行判断
    -r 有读的权限
    -w 有写的权限
    -x 有执行的权限
    3)按照文件类型进行判断
    -f 文件存在并且是一个常规的文件
    -e 文件存在
    -d 文件存在并是一个目录

if 判断
? 基本语法
if [ 条件判断式 ];then
程序
fi
或者
if [ 条件判断式 ]
then
程序
elif [条件判断式]
then
程序
fi

case语句
? 基本语法
case $变量名 in
“值1”)
如果变量的值等于值1,则执行程序1
;;
“值2”)
如果变量的值等于值2,则执行程序2
;;
…省略其他分支…
*)
如果变量的值都不是以上的值,则执行此程序
;;

for循环
? 基本语法1
for 变量 in 值1 值2 值3…
do
程序
done
? 应用实例
案例1 :打印命令行输入的参数
? 基本语法2
for (( 初始值;循环控制条件;变量变化 ))
do
程序
done

while循环
? 基本语法1
while [ 条件判断式 ]
do
程序
done

read读取控制台输入

基本语法
read(选项)(参数)
选项:
-p:指定读取值时的提示符;
-t:指定读取值时等待的时间(秒),如果没有在指定的时间内输入,就不再等待了。。
参数
变量:指定读取值的变量名

函数

系统函数
? basename基本语法
功能:返回完整路径最后 / 的部分,常用于获取文件名
basename [pathname] [suffix]
basename [string] [suffix] (功能描述:basename命令会删掉所有的前缀包括最后一个(‘/’)
字符,然后将字符串显示出来。
选项:
suffix为后缀,如果suffix被指定了,basename会将pathname或string中的suffix去掉。

? dirname基本语法
功能:返回完整路径最后 / 的前面的部分,常用于返回路径部分
dirname 文件绝对路径 (功能描述:从给定的包含绝对路径的文件名中去除文件名(非目录的部分),
然后返回剩下的路径(目录的部分))

自定义函数
? 基本语法
[ function ] funname[()]
{
Action;
[return int;]
}
调用直接写函数名:funname [值]

文章知识点与官方知识档案匹配,可进一步学习相关知识CS入门技能树Linux进阶新增用户25061 人正在系统学习中

来源:路新航

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年9月7日
下一篇 2020年9月7日

相关推荐