shell特殊符号及命令介绍,以及添加操作记录审计

shell特殊符号

 

*任意个任意字符

?任意一个字符

 

#注释字符,命令不生效

324af805216a54feb8a91ee866a8f5d98db.jpg

\脱义字符

84e3f814a9e445e220fe926721db216b85d.jpg

|管道符

 

 

 

cut命令的使用

 

cut    //分割、截取字符串

-d        指定分割符

-f         截取哪一段

-c         指定字符

9aec458e7eeaa9ec1d2155fef8018d9149b.jpg

sort_wc_uniq命令的使用

 

sort    //排序

-t         分隔符 -kn1/-kn1,n2

 

head /etc/passwd > 1.txt          //将/etc/passwd前10行的内容写入到1.txt里面

vim 1.txt     //编辑1.txt,增加随意字符

25fd783a935a00b20022fb0c9be908b396a.jpg

sort  1.txt

aae2bd0282be225d47b05e37c2627b253a8.jpg

-n        //以数字排序,字母和符号都认为是0

464ef283a852f5f1683f50352fb2302e926.jpg

-r         反序

0bb258fa377468c02c227d62c960e17bc1c.jpg

 

 

wc -l              //统计行数

13bddcd71b60d851293bb5f695848481219.jpg

wc -m           //统计字符数

cat  -A        //查看文件的所有东西包括隐藏

91f1fa565345b135062d13b2438812102dd.jpg

wc -w          //统计词

b6fd2c108aaf48a2b0cda7ed726d8aa858c.jpg

 

uniq      //去重复,条件是要先排序

-c         统计重复次数

d582a0ac1e21085d7127c3a28bbfa5c7494.jpg

tee_tr_split命令的使用

 

tee和>类似,重定向的同时还在屏幕显示

eae5f6d3a05eac4423ebc44e8b8090ed5d9.jpg

tee -a          //追加

79195d19061c84fe4eb94facf497ecacc7c.jpg

 

tr     //替换字符,相对字符来操作

762f24ce1fd399abc81682fe45fadb0e4b0.jpg

split      //切割

-b        //指定大小(默认单位字节)

960bcd505f492b15cd429064c4c6ff8b8b5.jpg

指定切割文件大小为100k,前缀名为abc

a4dbe85ca81c987520c67340c5fceaf2ebd.jpg

-l          //指定行数

f58a8d6b4ca8c82bc2e6b884136e077094c.jpg

 

 

 

特殊符号

 

$变量前缀,!$组合,正则里面表示行尾

 

;多条命令写到一行,用分号分割

f800d14e70e61cef6302a9b64d804357913.jpg

 

~用户家目录,后面正则表达式表示匹配符

 

&放在命令后面,会把命令丢到后台

 

>重定向     >>追加重定向     2>错误重定向     2>>追加错误重定向     &>正确和错误的信息重定向

 

[ ]指定字符中的一个,[0-9],[a-zA-Z],[abc]

 

||和&&,用于命令之间

 

||      //表示或者的意思,当前面这条命令执行成功,后面的命令不再执行

0434ac99a3a832d4acde7ee5723e7178047.jpg

 

当前面这条命令执行不成功,就会执行后面这条命令

161923b72a1e78687221c24f2c17c62d6f4.jpg

 

&&          //前面这条命令执行成功,才会执行后面这条命令

fd3a10aabd2b5e995780962f97ebdb271cb.jpg

 

前面这条命令执行不成功,后面的命令也不会执行

9596bf1c96605468d0845139b8f54c72ad3.jpg

 

目录aaa不存在,则执行后面的命令

037014a5e68fc14f6043b187f0dc878f136.jpg

 

目录ccc不存在则不会执行后面的命令

fd8dc9397f01e8b4690d214b7e0b4691543.jpg

 

 

 

Linux 系统添加操作记录审计

 

有时候我们需要对线上用户操作记录进行历史记录待出现问题追究责任人,,但Linux系统自带的history命令用户有自行删除权限,那怎么设置可以让用户的操作记录实时记录,并保证普通用户无权删除呢?

 

mkdir -p /usr/local/domob/records/                //创建目录

chmod 777 /usr/local/domob/records/          //更改目录权限

chmod +t /usr/local/domob/records/            //防删除位,防止其它用户删除自己的文件

 

vim /etc/profile 在最后添加下面的代码

 

if [ ! -d  /usr/local/domob/records/${LOGNAME} ]

then

mkdir -p /usr/local/domob/records/${LOGNAME}

chmod 300 /usr/local/domob/records/${LOGNAME}

fi

export HISTORY_FILE="/usr/local/domob/records/${LOGNAME}/bash_history"

export PROMPT_COMMAND='{ date "+%Y-%m-%d %T ##### $(who am i |awk "{print \$1\" \"\$2\" \"\$5}") #### $(history 1 | { read x cmd; echo "$cmd"; })"; } >>$HISTORY_FILE'

 

 

 

602e6b73185de4c1f2ea37030a802a9058c.jpg

转载于:https://my.oschina.net/u/3991860/blog/2872396

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值