Linux命令备忘 -- 持续更新

wget 参数

参数作用
-b后台下载模式。
-O下载到指定目录。
-t最大尝试次数。
-c断点续传
-p下载页面内所有资源,包括图片、视频等。
-r递归下载

pidof

pidof XXX 找到参数名的PID.


killall

killall XXX 找到并kill找到的进程, 有点像kill+pidof


常用文件命令

  • stat 显示文件属性信息
  • file 查看文件类型

常用负载监控

  • watch -n 1 uptime
  • top
  • df -h
  • ps aux | grep xx
  • free -h

tr

替换文本

tr [a-z] [A-Z]


常用安全监控

  • who 当前在线用户和终端设备
  • last 登陆日志
  • history 默认保存1000条, 修改/etc/profile的HISTSIZE
  • .bash_history 这个文件用于保存每个用户的操作历史, 在用户根目录
  • /etc/passwd 系统的账户信息

/etc/passwd 详解

注册名:口令:用户标识号:组标识号:用户名:用户主目录:命令解释程序

/etc/shadow

真正的密码文件

LOGNAME:PASSWORD:UID:GID:USERINFO:HOME:SHELL
如果PASSWORD字段中的第一个字符是*的话,那么,就表示该账号被查封了

cut

按列切割文件

cut -d: -f1 /etc/passwd
-d 后面是分隔符
-f 查看第几列

touch

难点- 设置文件系统信息,擦除文件修改记录

参数作用
-a仅修改“访问时间”(atime)
-m仅修改“更改时间”(mtime)
-d同时修改atime与mtime

tar

.tar或.tar.gz或.tar.bz2

参数用途
-c创建压缩文件
-x解压缩
-z指定使用Gzip格式来压缩/解压
-j指定使用bzip2参数来压缩/解压文件
-v显示进度
-C定要解压到的那个指定的目录
-f必须放到参数的最后一位,要压缩或解压的软件包名称
tar czvf etc.tar.gz /etc
tar xzvf etc.tar.gz -C /root/etc

grep

关键词搜索匹配

参数用途
-A输出找到行及的下N行
-B输出找到行及的上N行
-C输出找到行及的上/下各N行
-n显示行号
-v反选

find

find ./ -name "test*"

管道输入输出

 2> 文件	将错误输出重定向到一个文件中(清空原有文件的数据)

 >> 文件 2>&1 或 &> 文件将标准输出与错误输出共同写入到文件中(追加到原有内容的后面)
ls test32 > readme.txt 2> error.txt
正常输出到readme
错误输出到error.txt

管道符 |

其实管道命令符的作用一句话就能概括:“将前一个命令原本要输出到屏幕的数据当作是后一个命令的标准输入”

echo "linuxprobe" | passwd --stdin root
用管道为root修改密码

常见转义字符

字符用法
反斜杠(\)转义后面的一个字符变为单纯的字符串
单引号('')转义其中所有的字符为单纯的字符串
双引号("")保留其中的变量属性不转义为普通字符串
反引号(``)将其中的字符串当做命令执行后返回一个结果

#命令执行的四个步骤

  1. 第一步骤阶段是判断用户是否以绝对路径或相对路径的方式输入命令(如/bin/ls),如果是的话则直接执行。
  2. 检查用户输入的命令是否为“别名命令”, alias/unalias 进行别名处理
  3. SHELL解释器(Bash)来判断用户输入的是内部命令还是外部命令
    1. 内部命令是解释器内部的指令,会被直接的执行
    2. 外部指令进入步骤4
    3. type 可以手动查看指令类型
  4. 系统在多个路径中查找用户输入的命令文件
    1. 在系统的环境变量PATH中寻找
    2. 冒号间隔

yum 仓库配置

文件位置 : /etc/yum.repos.d/
文件名称 *.repo
[rhel-media]: yum源的名称,可自定义。

name=linuxprobe : yum仓库的名称,可自定义。

baseurl=file:///media/cdrom :提供方式包括FTP(ftp://..)、HTTP(http://..)、本地(file:///..)

enabled=1 : 设置此源是否可用,1为可用,0为禁用。

gpgcheck=1 : 设置此源是否校验文件,1为校验,0为不校验。

gpgkey=file:///media/cdrom/RPM-GPG-KEY-redhat-release :若为校验请指定公钥文件地址。

shell基础

  1. 条件测试语法能够判断表达式是否成立,若条件成立则返回数字0,否则便返回其他随机数值。

条件判断

[ -e /home/ow ]
文件操作符作用
-d测试是否为目录。
-e测试文件或目录是否存在。
-f判断是否为文件。
-r测试当前用户是否有权限读取。
-w测试当前用户是否有权限写入。
-x测试当前用户是否有权限执行。
整数操作符作用
-eq判断是否等于
-ne判断是否不等于
-gt判断是否大于
-lt判断是否小于
-le判断是否等于或小于
-ge判断是否大于或等于

判断计算机内存

FreeMem=free -m | grep "Mem:" | awk '{print $4}'
[ $FreeMem -lt 1024 ] && echo "less memory" || echo "memory enough"

字符串判断

  • -z 判断是否为空
  • =/!=

循环

if [] then;
elif [] then
else
fi

for xx in xx
do
done

while [] 
do
done

日期处理

初始化一个参数,将指定的日期作为参数处理

START_DATE=`date -d '2015-06-01' "+%Y-%m-%d"`

将一个日期+1天

START_DATE=`date -d "next-day $START_DATE" "+%Y-%m-%d"`
  • -1 month
  • -1 day
  • next day
  • 2 days ago
  • -1 week...

awk

awk help

awk 'BEGIN{ print "start" } pattern{ commands } END{ print "end" }' file
  1. 执行BEGIN{ commands }语句块中的语句;
  2. 从文件或标准输入(stdin)读取一行,然后执行pattern{ commands }语句块,它逐行扫描文件,从第一行到最后一行重复这个过程,直到文件全部被读取完毕。
  3. 当读至输入流末尾时,执行END{ commands }语句块
echo -e "line1 f2 f3\nline2 f4 f5\nline3 f6 f7" | awk '{print "Line No:"NR", No of fields:"NF, "$0="$0, "$1="$1, "$2="$2, "$3="$3}' 

转载于:https://my.oschina.net/u/2863048/blog/775519

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值