Linux基础shell命令 day-2

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux基础shell命令 day-2相关的知识,希望对你有一定的参考价值。

守护进程(Daemon):

crond 计划任务
dhcpd 动态IP地址分配服务
httpd 网站服务
lpd 打印服务
named 域名解析服务(DNS)
nfs 文件共享服务
smb 文件共享 与打印服务(SAMBA)
syslog 系统日志
gpm 鼠标进程

 

软件安装:


1.红帽如软件包管理器(RPM):
安装软件 rpm -ivh filename.rpm
升级软件 rpm -Uvh filename.rpm 升级软件
卸载软件 rpm -e filename.rpm

查询软件的描述信息 rpm -qpi filename.rpm
列出软件的文件信息 rpm -qpl filename.rpm
查询文件属于那个RPM rpm -qf filename


2.Yum软件仓库


Yum仓库是为了进一步简化RPM管理软件难度而设计的。
Yum仓库的配置文件均以.repo结尾 并存放在/etc/yum.repos.d/目录中。
yum repolist all 列出所有的仓库
yum list all 列出仓库中所有的软件包
yum info 软件包名 查看软件包信息
yum install 软件包名 安装软件包
yum reinstall 软件包名 重新安装软件包
yum update 软件包名 升级软件包
yum remove 软件包名 移除软件包
yum clean 软件包名 清除所有的仓库缓存
yum check-update 检查可更新的软件包
yum gruoplist 查看系统中已经安装的软件包组
yum groupinstall 软件包组 安装指定的软件包组
yum groupmove 软件包组 移除指定的软件包组
yum groupinfo 软件包组 查询指定的软件包组信息

 


命令名称 [命令参数] [命令对象] 三者之间用空格隔开

echo用于在终端显示字符串或者变量
如:echo $HOSTNAME #查看主机名
2.date
%X相当于%H%M%S
以年月日时分秒的形式显示时间 date "+%Y-%m-%d %H:%M:%S"
设置系统时间 date -s‘20170717 11:00‘
查看星期几 date ‘+%A‘
输出当前是上午还是下午 date "+%p"
判断今天是一年中的第几天 date "+%j"

wget用于下载网络文件 格式为:wget[参数] 下载地址
-b 后台下载
-O 下载到指定目录
-t 最大尝试次数
-c 断点续传
-P 下载页面所有资源,包括图片、视屏等
-r 递归下载(下载整站页面与所有资料,下载完成后会在当前目录中保村成名为网站的目录)

elinks用于实现一个纯文本界面的浏览器,格式:elinks [参数] 网址

ifconfig 用于获取网卡配置于网络状态等信息 格式为 ifconfig [网络设备] [参数]


uanem命令用于查看系统内核版本等信息,格式为uname [-a]
查看系统的负载情况 uptime(watch -n 1 uptime 每秒刷新 一次获得当前的系统负载情况,输出内容分别为系统当前时间、系统已运行时间、当前在线用户数以及平均负载值。而平均值负载为最近1分钟、五分钟、十五分钟的值,越低越好,小于1是正常的)


free用于查看显示当前系统中内存的使用情况,格式为 free [-m/-g]

last 用于查看所有系统的登入记录,格式为 last [参数]

history 命令用于显示历史执行过的命令,格式:history [-C]
历史的命令会被保存在用户家目录的‘.bash_history‘文件中
history -c 清空该用户在本机中执行的历史记录
默认保存1000条执行过的命令,若要修改可直接编辑/etc/profile文件的HISTSIZE值

sosreport 命令用于收集系统配置并诊断信息后输出结论文档,格式为: sosreport

cat命令用于查看纯文本文件(较短的)格式为: cat [选项] 文件
参数 -n 显示行号
-b 显示行号(不包括空行)
-A 显示出不看见的符号,如空格,tab键等等

more命令用于查看纯文本(较长的) 格式 more [参数] 文件
-数字 预先显示的行数(默认为一页)
-d 显示提示语句 与报错信息

用于查看纯文本的前N行(默认为前十行) head [选项][文件]
用于查看纯文本文档的后N行 tail[选项][文件]
sed -n ‘10,30‘p filename 显示第10行到30行的内容


wc命令用于统计指定文本的行数、字数、字节数、格式: wc [参数][文本]
-l 只显示行数
-w 只显示单词数
-c 只显示字节数


cut命令用于通过列表提取文本字符,格式为;cut [参数] [文本]
-d 指定分隔符,默认为tab
-f 指定显示的列数
-c 单位改为字符
例如:cut -d:f1 /etc/passwd #表示查看/etc/passwd文件第一列内容


diff命令用于比较多个文本文件的差异,格式:diff [参数] 文件
-b 忽略空格引起的差异
-B 忽略空行引起的差异
--brief或-q 仅报告是否存在差异
-c 使用上下文输出格式

 

touch命令用于创建空白文件与修改文件时间 格式touch [选项] [文件]
-a 近修改‘访问时间‘(atime)
-m 近修改‘更改时间‘(ctime)
-d 同时修改atime与mtime
-t 要修改成的时间[YYMMDDhhmm]

mtiame 内容的修改时间(不包括权限的)
ctime 更改权限与属性的时间
atime 读取文件内容的时间


mkdir用于创建空白的文件夹 格式:mkdir [选项] 目录
-m=MODE 默认的文件目录权限,如‘-m755‘
-p 连续创建多层目录(若文件已存在则忽略)
-v 显示穿件过程


!$代表上一条命令的参数

 


cp命令用于复制文件的目录,格式:cp [选项] 源文件 目标文件
复制命令的三种情况:
目标文件是一个目录,会将源文件复制到该目录中。
目录文件是一个文件,会将源文件覆盖为该文件。
目标文件不存在,将会复制源文件并修改为目标文件的名称(重命名)

-P 保留原始文件的属性
-d 若对象为链接文件,则保留链接文件的属性
-r 递归持续复制(用于目录)
-i 若目标文件存在则询问是否覆盖
-a 相当于-pdr(pdr为上续的参数)


mv命令用于移动或改名,格式:mv [选项] 文件名 [目标路径|目标文件名]


rm命令用删除文件或目录,格式 rm [选项] 文件
-f 忽略警告信息
-i 删除前先询问
-r 删除文件夹

dd命令用于制定大小的拷贝的文件或指定转换文件,格式:dd [参数]
if 输入的文件名称
of 输出的文件名称
bs 设置没个‘块‘的大小
count 设置要拷贝‘块‘的个数
conv=ucase 将字母从小写转换成大写
conv=lcase 把字符从大写转成小写


groupadd 创建群组

 

tar命令用于对文件打包压缩或者解压 格式 tar[选项] [文件]
打包并压缩文件:tar -czvf 压缩包名.tar.gz 文件名
解压并展开压缩包:tar -xzvf 压缩包名.tar.gz
-c 创建压缩文件
-x 解开压缩文件
-t 查看压缩包内有哪些文件
-z 用Gzip压缩或解压
-v 显示压缩或解压的过程
-f 目标文件名
-p 保留原始的权限与属性(小写p)
-P 使用绝对路径来压缩(大写P)
-C 指定解压路径
例如:tar czvf etc.tar.gz /etc #将etc目录内的文件打包并通过gzip格式压缩
tar xzvf etc.tar.gz -C /root/etc #将etc.tar.gz解压到/root/etc下

 

grep命令用于对文本进行诉搜索 格式:grep [选项] [文件]
-b 将可执行文件(binary)当作文本文件(text)来搜索
-c 仅显示找到的次数
-i 忽略大小写
-n 显示行号
-v 反向选择---仅列出没有‘关键词’的行

列如:grep entry /usr/docbook.xml >> /root/lines
#找到文件/usr/docbooh.xml中所有包含entry的行并输出到/root/lines


find 命令用于查找文件 格式 find [查找路径] 寻找条件 操作(-print)

-name 匹配名称
-perm 匹配权限(mode为完全匹配,-mode为包含即可)
-user 匹配所有者
-group 匹配所有组
-mtime -n +n 匹配修改内容的时间(-n值n天之内,+n表示n天以前)
-atime -n +n 匹配访问文件的时间
-ctime -n +n 匹配修改权限的时间
-nouser 匹配无所有者的文件
-nogroup 匹配无所有组的文件
-newer f1 !f2 匹配比文件f1新却比f2旧的文件
--type b/d/c/p/l/f 匹配文件类型(块设备、目录、字符设备、管道、链接文件、文件文件)
--size 匹配文件的大小(+50k查找超过50K的文件,而-50k则代表查找小于50的文件)
-prune 忽略某个目录
-exec {} \; 后面可接对搜索到的结果进一步处理的命令(后面的{}代表find找到的内容)

host*以host开头的文件

找出用户Linuxprobe的文件并复制到/root/findresults目录
find / -user Linuxprobe -exec cp -arf {} /root/findresults/\;











































































































































以上是关于Linux基础shell命令 day-2的主要内容,如果未能解决你的问题,请参考以下文章

Shell脚本基础

Linux shell基础

Linux shell基础

Linux之shell基础

Linux基础以及常用命令

[Linux]基础bash shell命令