概述
#Linux新手必备
##1.RPM(红帽软件包管理器)
建立统一的数据库文件,详细记录软件信息并能够自动分析依赖关系。
###常用命令
安装软件的命令格式 rpm -ivh filename.rpm
升级软件的命令格式 rpm -Uvh filename.rpm
卸载软件的命令格式 rpm -e filename.rpm
查询软件信息的命令格式 rpm -qpi filename.rpm
列出软件文件信息的命令格式 rpm -qpl filename.rpm
查询文件属于哪个RPM的命令格式 rpm -qp filename
##2.Yum 软件仓库
根据用户的要求分析出所需软件包及相关的依赖关系,然后自动从服务器下载软件包并安装到系统
###常用命令
列出所有仓库 yum repolist all
列出仓库中所有软件包 yum list all
查看软件包信息 yun info 软件包名称
安装软件包 yum install 软件包名称
重新安装软件包 yum reinstall 软件包名称
升级软件包 yum update 软件包名称
移除软件包 yum remove 软件包名称
清除所有仓库缓存 yum clean all
检查可更新的软件包 yum check-update
查看系统中已经安装的软件包组 yum grouplist
安装指定的软件包组 yum groupinstall 软件包组
移除指定的软件包组 yum groupremove 软件包组
查询指定的软件包组信息 yum groupinfo 软件包组
#3.Linux下工作常用命令
##3.1 bash shell解释器的优势
通过上下键调取过往执行过的Linux命令
tab补全命令
强大的批处理脚本
具有实用的环境变量
##3.2 Linux命令格式
命令名称 命令参数 命令对象
命令对象:指要处理的文件、目录、用户等资源
命令参数:可以使用长格式(完整的选项名称),短格式(单个字母的缩写)
##3.3 man命令
长格式 man --help
短格式 man -h
##4.常用系统工作命令
###4.1 echo 命令
功能:用于在终端输出字符串或变量提取后的值。
格式:echo [字符串 | $变量]
example:
[root@localhost ~]# echo linux
linux
###4.2 date 命令
功能:用于显示及设置系统的时间或日期。
格式:date [选项] [+指定的格式]
example:
[root@localhost ~]# date "+%Y-%m-%d %H:%M:%S"
2019-04-08 15:06:04
常见格式选项:
%t 跳格[tab键]
%H 小时(00-23)
%I 小时(00-12)
%M 分钟(00-59)
%S 秒 (00-59)
%j 今年中的第几天
###4.3 reboot 命令
功能:重启系统
格式 reboot
example:
[root@localhost ~]# reboot
###4.4 poweroff 命令
功能:关闭系统
格式:poweroff
example:
[root@localhost ~]# poweroff
###4.5 wget 命令
功能:用于在终端中下载网络文件
格式:wget [参数] 下载地址
example:
[root@localhost ~]# wget http://www.linuxprobe.com/docs/LinuxProbe.pdf
--2019-04-08 15:15:46-- http://www.linuxprobe.com/docs/LinuxProbe.pdf
正在解析主机 www.linuxprobe.com (www.linuxprobe.com)... 122.225.34.188
正在连接 www.linuxprobe.com (www.linuxprobe.com)|122.225.34.188|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 301 Moved Permanently
位置:https://www.linuxprobe.com/docs/LinuxProbe.pdf [跟随至新的 URL]
--2019-04-08 15:15:46-- https://www.linuxprobe.com/docs/LinuxProbe.pdf
正在连接 www.linuxprobe.com (www.linuxprobe.com)|122.225.34.188|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:20105266 (19M) [application/pdf]
正在保存至: “LinuxProbe.pdf”
100%[=======================================================================================================================================================>] 20,105,266 89.5KB/s 用时 5m 22s
2019-04-08 15:21:09 (60.9 KB/s) - 已保存 “LinuxProbe.pdf” [20105266/20105266])
wget命令的参数及作用
-b 后台下载模式
-P 下载到指定的目录
-t 最大尝试次数
-c 断点续传
-p 下载页面内所有资源,包括图片和视频等
-r 递归下载
###4.6 ps 命令
功能:查看系统中的进程状态
格式:ps [参数]
example:
[root@localhost ~]# ps aux
ps命令的参数及作用
-a 显示所有进程(包括其他用户进程)
-u 用户及其他详细信息
-x 显示没有控制终端的进程
Linux系统常见进程状态
R(运行):进程正在运行或在队列中等待
S(中断):进程处于休眠中,当某个条件形成后或者接收到信号时,则脱离该状态。
D(不可中断):进程不响应系统异步信号,即使kill命令也不能将其中断
Z(僵死):进程已经终止,但进程描述符还在,直到父进程调用wait4()系统函数将其释放
T(停止):进程收到停止信号后停止运行
###4.7 top 命令
功能:用于动态地监视进程活动与系统负载等信息。
格式:top
###4.8 pidof 命令
功能:查询某个指定进程的PID值。
格式:pidof [参数] [服务名称]
example:
[root@localhost ~]# pidof sshd
10662 7162
###4.9 kill命令
功能:终止某个指定PID的服务进程。
格式:kill [参数][进程PID]
example:
[root@localhost ~]# kill 7162
###4.10 killall 命令
功能:终止某个指定名称的服务所对应的全部进程
格式:killall [参数] [进程名称]
example:
[root@localhost ~]# killall [服务名称]
##5. 系统状态检测命令
###5.1 ifconfig 命令
功能:获取网卡配置与网络状态等信息。
格式:ifconfig [网络设备][参数]
example:
[root@localhost ~]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet *.*.*.* netmask *.*.*.0 broadcast *.*.*.*
inet6 ****::****:****:****:**** prefixlen 64 scopeid 0x20<link>
ether **:**:**:**:**:** txqueuelen 1000 (Ethernet)
RX packets 29865 bytes 21936285 (20.9 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 8437 bytes 773795 (755.6 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
###5.2 uname 命令
功能:查看系统内核与系统版本信息。
格式:uname [-a]
example:
[root@localhost ~]# uname -a
Linux localhost.localdomain 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
###5.3 uptime 命令
功能:用于查看系统的负载信息。
格式:uptime
example:
[root@localhost ~]# uptime
15:57:56 up 17:03, 2 users, load average: 0.00, 0.01, 0.05
###5.4 free 命令
功能:显示当前系统中内存的使用量信息。
格式:free [-h]
example:
[root@localhost ~]# free -h
total used free shared buff/cache available
Mem: 1.8G 606M 952M 9.6M 260M 1.0G
###5.5 who 命令
功能:查看当前登入主机的用户终端信息
格式:who [参数]
example:
[root@localhost ~]# who
root tty1 2019-04-07 22:55
root pts/0 2019-04-08 14:47 (*.*.*.*)
###5.6 last 命令
功能:查看所有系统的等级记录。
格式:last [参数]
example:
[root@localhost ~]# last
###5.7 history 命令
功能:显示历史执行过的命令
格式:history [-c]
example:
[root@localhost ~]# history
1 history
2 last
3 pwd
4 ll
5 ls
6 PRICE=5
7 echo "price is $PRICE"
8 echo 'price is $PRICE'
9 echo "price is $$PRICE"
10 echo `uname -a`
11 python
12 ifconfig
13 poweroff
###5.8 sosreport 命令
功能:收集系统配置及架构信息并输出诊断文档。
格式:sosreport
example:
[root@localhost ~]# sosreport
##6. 工作目录切换命令
###6.1 pwd 命令
功能:显示用户当前所处的工作目录
格式:pwd [选项]
example:
[root@localhost ~]# pwd
/root
###6.2 cd 命令
功能:切换工作路径
格式:cd [目录名称]
example:
[root@localhost /]# cd /root
[root@localhost ~]# pwd
/root
特殊参数
- 返回上一次所处的目录
~ 切换到当前用户的家目录
.. 进入上一级目录
###6.3 ls 命令
功能:显示目录中的文件信息
格式:ls [选项][文件]
example:
[root@localhost ~]# ls
anaconda-ks.cfg elasticserach LinuxProbe.pdf
ls命令的参数及作用
-a 查看全部文件(包含隐藏文件)
-l 查看文件属性、大小等详细信息
-d 查看目录信息
##7 文本编辑命令
###7.1 cat命令
功能:查看纯文本内容(内容较少的)
格式:cat [选项][文件]
example:
[root@localhost ~]# cat -n anaconda-ks.cfg
1 #version=DEVEL
2 # System authorization information
3 auth --enableshadow --passalgo=sha512
4 # Use CDROM installation media
5 cdrom
6 # Use graphical install
7 graphical
8 # Run the Setup Agent on first boot
9 firstboot --enable
10 ignoredisk --only-use=sda
11 # Keyboard layouts
12 keyboard --vckeymap=cn --xlayouts='cn'
13 # System language
14 lang zh_CN.UTF-8
15
16 # Network information
17 network --bootproto=dhcp --device=ens33 --ipv6=auto --activate
18 network --hostname=localhost.localdomain
19
20 # Root password
21 rootpw --iscrypted $6$plo/hcIzn0aaxCuK$cnKSgDoqKvOI7BjZHfPMLxBTuvU1uwjcOCloh1gOt8TlJ8lT4qcSGnYUB2tU6WzQWREj8swf6LoB6LfOHAKDy0
22 # System services
23 services --enabled="chronyd"
24 # System timezone
25 timezone Asia/Shanghai --isUtc
26 # System bootloader configuration
27 bootloader --append=" crashkernel=auto" --location=mbr --boot-drive=sda
28 autopart --type=lvm
29 # Partition clearing information
30 clearpart --none --initlabel
31
32 %packages
33 @^infrastructure-server-environment
34 @base
35 @core
36 @java-platform
37 chrony
38 kexec-tools
39
40 %end
41
42 %addon com_redhat_kdump --enable --reserve-mb='auto'
43
44 %end
45
46 %anaconda
47 pwpolicy root --minlen=6 --minquality=1 --notstrict --nochanges --notempty
48 pwpolicy user --minlen=6 --minquality=1 --notstrict --nochanges --emptyok
49 pwpolicy luks --minlen=6 --minquality=1 --notstrict --nochanges --notempty
50 %end
###7.2 more 命令
功能:查看纯文本内容(内容较多的)
格式:more [选项] 文件
example:
[root@localhost ~]# more anaconda-ks.cfg
###7.3 head 命令
功能:查看纯文本文档的前N行
格式:head [选项][文件]
example:
[root@localhost ~]# head -n 10 anaconda-ks.cfg
#version=DEVEL
# System authorization information
auth --enableshadow --passalgo=sha512
# Use CDROM installation media
cdrom
# Use graphical install
graphical
# Run the Setup Agent on first boot
firstboot --enable
ignoredisk --only-use=sda
###7.4 tail 命令
功能:查看纯文本文档的后N行或持续刷新内容
格式:tail [选项][文件]
example:
[root@localhost ~]# tail -n 10 anaconda-ks.cfg
%addon com_redhat_kdump --enable --reserve-mb='auto'
%end
%anaconda
pwpolicy root --minlen=6 --minquality=1 --notstrict --nochanges --notempty
pwpolicy user --minlen=6 --minquality=1 --notstrict --nochanges --emptyok
pwpolicy luks --minlen=6 --minquality=1 --notstrict --nochanges --notempty
%end
tail命令的特殊参数
-f 持续刷新一个文件的内容
###7.5 tr 命令
功能:替换文本文件中的字符
格式:tr [原始字符][目标字符]
example:
[root@localhost ~]# cat anaconda-ks.cfg | tr [a-z] [A-Z]
#VERSION=DEVEL
# SYSTEM AUTHORIZATION INFORMATION
AUTH --ENABLESHADOW --PASSALGO=SHA512
# USE CDROM INSTALLATION MEDIA
CDROM
# USE GRAPHICAL INSTALL
GRAPHICAL
# RUN THE SETUP AGENT ON FIRST BOOT
FIRSTBOOT --ENABLE
IGNOREDISK --ONLY-USE=SDA
# KEYBOARD LAYOUTS
KEYBOARD --VCKEYMAP=CN --XLAYOUTS='CN'
# SYSTEM LANGUAGE
LANG ZH_CN.UTF-8
# NETWORK INFORMATION
NETWORK --BOOTPROTO=DHCP --DEVICE=ENS33 --IPV6=AUTO --ACTIVATE
NETWORK --HOSTNAME=LOCALHOST.LOCALDOMAIN
# ROOT PASSWORD
ROOTPW --ISCRYPTED $6$PLO/HCIZN0AAXCUK$CNKSGDOQKVOI7BJZHFPMLXBTUVU1UWJCOCLOH1GOT8TLJ8LT4QCSGNYUB2TU6WZQWREJ8SWF6LOB6LFOHAKDY0
# SYSTEM SERVICES
SERVICES --ENABLED="CHRONYD"
# SYSTEM TIMEZONE
TIMEZONE ASIA/SHANGHAI --ISUTC
# SYSTEM BOOTLOADER CONFIGURATION
BOOTLOADER --APPEND=" CRASHKERNEL=AUTO" --LOCATION=MBR --BOOT-DRIVE=SDA
AUTOPART --TYPE=LVM
# PARTITION CLEARING INFORMATION
CLEARPART --NONE --INITLABEL
%PACKAGES
@^INFRASTRUCTURE-SERVER-ENVIRONMENT
@BASE
@CORE
@JAVA-PLATFORM
CHRONY
KEXEC-TOOLS
%END
%ADDON COM_REDHAT_KDUMP --ENABLE --RESERVE-MB='AUTO'
%END
%ANACONDA
PWPOLICY ROOT --MINLEN=6 --MINQUALITY=1 --NOTSTRICT --NOCHANGES --NOTEMPTY
PWPOLICY USER --MINLEN=6 --MINQUALITY=1 --NOTSTRICT --NOCHANGES --EMPTYOK
PWPOLICY LUKS --MINLEN=6 --MINQUALITY=1 --NOTSTRICT --NOCHANGES --NOTEMPTY
%END
###7.6 wc 命令
功能:统计指定文本的行数、字数、字节数
格式:wc [参数][文本]
example:
[root@localhost ~]# wc -lwc anaconda-ks.cfg
50 123 1288 anaconda-ks.cfg
wc命令的参数及作用
-l 只显示行数
-w 只显示单词数
-c 只显示字节数
###7.7 stat 命令
功能:查看文件的具体存储信息和时间等信息。
格式:stat 文件名称
example:
[root@localhost ~]# stat anaconda-ks.cfg
文件:"anaconda-ks.cfg"
大小:1288 块:8 IO 块:4096 普通文件
设备:fd00h/64768d Inode:100663362 硬链接:1
权限:(0600/-rw-------) Uid:( 0/ root) Gid:( 0/ root)
环境:system_u:object_r:admin_home_t:s0
最近访问:2019-04-08 16:35:51.881127912 +0800
最近更改:2019-01-15 13:03:45.696291742 +0800
最近改动:2019-01-15 13:03:45.696291742 +0800
创建时间:-
###7.8 cut命令
功能:按列提取文本字符、
格式:cut [参数] 文本
example:
[root@localhost ~]# cut -d: -fl /etc/passwd
root
bin
daemon
adm
lp
sync
shutdown
halt
mail
operator
games
ftp
nobody
systemd-network
dbus
polkitd
libstoragemgmt
abrt
rpc
sshd
postfix
ntp
chrony
tcpdump
mysql
elsearch
masfsearch
cut命令参数及作用
-d 设置间隔符号
-f 设置要查看的列
###7.9 diff命令
功能:比较多个文本文件的差异
格式:diff [参数][文件]
example:
[root@localhost ~]#diff --brief diff_A.txt diff_B.txt
[root@localhost ~]#diff -c diff_A.txt diff_B.txt
diff命令的参数及作用
--brief 判断两个文件是否不同
-c 详细比较出两个文件的差异之处
##8 文件目录管理命令
###8.1 touch 命令
功能:创建空白文件或设置文件的时间
格式:touch [选项][文件]
example:
[root@localhost ~]# touch linuxdemo.txt
touch 命令参数及作用
-a 仅修改 读取时间(atime)
-m 仅修改 修改时间(mtime)
-d 同时修改(atime)和(mtime)
###8.2 mkdir 命令
功能:创建空白的目录
格式:mkdir [选项] 目录
example:
[root@localhost ~]# touch linuxdemo
mkdir命令的参数及作用
-p 递归创建出具有嵌套叠层关系的文件目录
###8.3 cp 命令
功能:复制文件或目录
格式:cp [选项] 源文件 目标文件
example:
复制操作分类:
如果目标文件是目录,则把源文件复制到该目录
如果目标文件是普通文件,则会询问是否覆盖
如果目标文件不存在,则执行正常复制操作
cp 命令的参数及作用
-p 保留原始文件的属性
-d 如对象文件是“链接文件”,则保留该文件的属性
-r 递归持续复制(用于目录)
-i 若目标文件存在则询问是否覆盖
-a 相当于-pdr
###8.4 mv 命令
功能:剪切文件或将文件重命名
格式:mv [选项] 源文件 [目标路径 |目标文件名]
example:
[root@localhost ~]# mv linuxdemo.txt linuxdemo1.txt
###8.5 rm 命令
功能:删除文件或命令
格式:rm [选项] 文件
example:
[root@localhost ~]# rm linuxdemo1.txt
rm:是否删除普通空文件 "linuxdemo1.txt"?y
rm 命令的参数及作用
-r 强制删除
-f 删除目录
###8.6 dd 命令
功能:按照指定的大小和数据块来复制文件或转换文件
格式:dd [参数]
example:
dd命令的参数及作用
if 输入的文件名称
of 输出的文件名称
bs 设置每个块的大小
count 设置复制快的个数
###8.7 file 命令
功能:查看文件类型
格式:file 文件名
example:
[root@localhost ~]# file demo.txt
demo.txt: empty
##9 打包压缩与搜索命令
### 9.1 tar 命令
功能:对文件进行打包或解压
格式:tar [选项][文件]
example:
压缩 tar -czvf 压缩包名称.tar.gz 要打包的目录
解压 -xzvf
tar命令参数及作用
-c 创建压缩文件
-x 解压缩文件
-t 查看压缩包呢有哪些文件
-z 用Gzip压缩或解压
-j 用bzip2压缩或解压
-v 显示压缩或解压过程
-f 目标文件名
-P 保留原始的权限与属性
-p 使用绝对路径来压缩
-C 指定到解压目录
###9.2 grep 命令
功能:在文本中进行关键词搜索,并显示匹配的结果。
格式:grep [选项] [文件]
example:
grep 命令的参数及作用
-b 将可执行文件(binary)当作文本文件(text)来搜索
-c 仅显示找到的行号
-i 忽略大小写
-n 显示行号
-v 反向选择--仅列出没有关键词的行
### 9.3 find 命令
功能:按照指定条件来查找文件
格式:find [查找路径] 寻找条件 操作
example:
[root@localhost ~]# find /root -name "MySQL*" -print
/root/MySQL-client-5.6.42-1.el7.x86_64.rpm
/root/MySQL-server-5.6.42-1.el7.x86_64.rpm
find 命令参数及作用
-name 匹配名称
-perm 匹配权限(mode为完全匹配,-mode为包含即可)
-user 匹配所有者
-group 匹配所有组
-mtime -n/+n 匹配修改内容的时间(-n n天以内,+n n天以前)
-atime -n/+n 匹配访问文件的时间(-n n天以内,+n n天以前)
-ctime -n/+n 匹配修改文件权限的时间(-n n天以内,+n n天以前)
-nouser 匹配无所有者的文件
-nogroup 匹配无所有组的文件
-newer f1 !f2 匹配f1新,比f2旧的文件
--type b/d/c/p/l/f 匹配文件类型
-size 匹配文件大小
-prune 忽略某个目录
-exec .....{} 后面可跟进一步处理搜索结果的命令
最后
以上就是激昂蜜蜂为你收集整理的Linux新手必备的全部内容,希望文章能够帮你解决Linux新手必备所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复