做商城网站的企业,沧州手机建站哪家好,如何把wordpress转化为小程序,做一元购网站1 Linux命令总结2 3 man 命令帮助;4 help 命令的帮助#xff08;bash的内置命令#xff09;;5 ls list,查看目录列表;6 -ld#xff1a;查看目录权限;7 -l:(long)长格式显示属性;8 -F:给不同的文件类型结尾加标识9 -p:给目录加斜线10 … 1 Linux命令总结2 3 man 命令帮助;4 help 命令的帮助bash的内置命令;5 ls list,查看目录列表;6 -ld查看目录权限;7 -l:(long)长格式显示属性;8 -F:给不同的文件类型结尾加标识9 -p:给目录加斜线10 -r:(reverse)反转排序11 -t:按时间排序12 --colorauto 给输出的不同类型文件加不同颜色13 -a:显示隐藏文件14 ls -l --time-stylelong-iso显示友好的长格式时间15 例子16 [rootserver oldboy]# ls -l --time-stylelong-iso 17 总用量 418 drwxr-xr-x 2 root root 4096 2015-12-18 20:25 oldboydir19 lrwxrwxrwx 1 root root 9 2015-12-18 21:03 oldboydir_soft_link - oldboydir20 21 mkdir 创建目录22 -p:递归创建目录23 vim 相当于复杂的文档编辑器24 2016-12-22添加 date修改时间命令 date -s 2016/12/22 14:33 //修改时间后接着敲hwclock告诉bios立即生效 hwclock 25 echo i am studying linux / oldboy.txt //后面跟一个大于号表示覆盖两个大于号表示追加;26 echo 打印输出内容配合“”或“”可以为文件覆盖及追加内容;27 -n:不换行输出28 -e:解析转义字符\t tab \n回车 \b退格29 30 echo“31 boy32 girl33 ” oldboy.txt34 实例如下(2015/12/22)35 [testserver ~]$ echo oldboy;echo oldboy 36 oldboy37 oldboy38 [testserver ~]$ 39 40 [testserver ~]$ echo -n oldboy;echo oldboy //不换行输出41 oldboyoldboy42 [testserver ~]$ 43 44 [testserver ~]$ echo -e oldboy\toldgirl 45 oldboy oldgirl46 [testserver ~]$ 47 48 [testserver ~]$ echo -e oldboy\noldgirl 49 oldboy50 oldgirl51 [testserver ~]$ 52 53 cat 查看文件内容54 -n:显示行号55 特殊用法增加多行内容56 [rootserver data]# cat /data/oldboy.txtEOF 57 I am studying linux.58 EOF59 cp copy 相当于拷贝命令;例如cp old.txt /tmp/60 cp -a/-r /etc/ /tmp 拷贝目录/etc/到/tmp61 -a:相当于-pdr62 -r:递归用于复制目录;63 -p:保持属性;64 cpcp -i -i:表示提示确认信息参数65 例从当前目录文件到另外目录时如果拷贝文件名相同可使用/bin/、\取消是否覆盖信息; 66 [rootserver /]# cp /mnt/test.txt /tmp 67 cp: overwrite /tmp/test.txt? 68 [rootserver /]# /bin/cp /mnt/test.txt /tmp //前面加/bin/可以取消是否覆盖的提示信息 69 [rootserver /]# \cp /mnt/test.txt /tmp/ //前面加/可以取消是否覆盖的提示信息; 70 mv 移动目录或文件例如mv /data /root71 pwd 查看当前用户所在目录;72 73 rm remove 删除文件或者目录 -f强制-r删除目录;74 生产场景尽量不要使用rm,如果非要用一定要先cp等备份。75 76 替代方法77 mv移动到一个临时目录相当于回收站;78 find删除79 find *****删除80 find /root/data -type f -exec rm -f {} \; // -exec表示查找81 find /root/data -type f|xargs rm -f 82 find 查找-type !表示取反的意思83 !:取反84 -a:表示and85 -o:(or)表示或者86 -maxdepth 数字表示查找的深度87 -mtime:表示修改时间88 例89 find /oldboy -maxdepth 1 -type d ! -name oldboy (其中-maxdepth跟tree -L 1可以这样理解)90 91 例在-type f前面加!表示执行命令时不查找以文件为结尾的文件92 [rootserver ~]# find /root/data/ ! -type f -name *.txt|xargs ls -ld 93 94 使用find删除例子195 [rootserver data]# find /root/data/ -type f 96 /root/data/zhurui.txt97 /root/data/zhurui2.txt98 /root/data/zhurui1.txt99 [rootserver data]# find /root/data/ -type f -exec rm -f {} \; 100 [rootserver data]# ls 101 [rootserver data]# 102 103 使用find删除例子2104 [rootserver data]# touch zhurui.txt zhurui1.txt zhurui2.txt 105 [rootserver data]# ls 106 zhurui1.txt zhurui2.txt zhurui.txt107 [rootserver data]# find /root/data/ -type f 108 /root/data/zhurui.txt109 /root/data/zhurui2.txt110 /root/data/zhurui1.txt111 [rootserver data]# find /root/data/ -type f|xargs rm -f 112 [rootserver data]# ls 113 [rootserver data]# 114 115 116 find删除保留一个特定文件其余都删掉117 [rootserver data]# touch zhurui.txt zhurui1.txt zhurui2.txt zhurui3.txt zhurui4.txt 118 [rootserver data]# ls 119 zhurui1.txt zhurui2.txt zhurui3.txt zhurui4.txt zhurui.txt120 [rootserver data]# find /root/data/ -name zhurui4.txt 121 /root/data/zhurui4.txt122 [rootserver data]# find /root/data/ -type f -name zhurui4.txt 123 /root/data/zhurui4.txt124 [rootserver data]# find /root/data/ -type f ! -name zhurui4.txt|xargs rm -f 125 [rootserver data]# ls 126 zhurui4.txt127 [rootserver data]#128 129 head 头部取文件的前N行默认前10行取前三行 -n 3130 简写就是-3131 例132 [rootserver data]# head -n 2 test.txt 133 test134 liyao135 tail 尾巴取文件的最后N行默认最后10行取最后三行 -n 3136 简写就是-3137 138 -f:跟踪结尾139 例140 tail -f /var/log/messages //跟踪一个文件结尾的变化141 142 举例打印20-30的数字143 [rootserver ~]# seq 100 test1.txt //将1-100数字在test1.txt文件中列举出来 144 [rootserver ~]# head -30 test1.txt //取文件的前30行 145 [rootserver ~]# head -30 test1.txt | tail -11 //首先取列举出的数字前30行接着取最后11行; 146 20147 21148 22149 23150 24151 25152 26153 27154 28155 29156 30157 158 第二种方法159 [rootserver ~]# sed -n 20,30p test.txt 160 20161 21162 22163 23164 24165 25166 26167 27168 28169 29170 30171 172 (1)awk 一门语言过滤内容(取列)173 awk {print $1} 文件 //$1表示第一列$2表示第二列....$NF(表示最后一列)174 awk -F 分隔符号 {print $1} 文件 //$1表示第一列$2表示第二列175 $1表示第一列$2表示第二列....$NF(表示最后一列)..$(NF-1)表示倒数第二列176 $0表示整行177 -F:awk多分隔符178 深入浅出三剑客之awk必杀技一例http://oldboy.blog.51cto.com/2561410/950730179 深入浅出linux三剑客之sed必杀技一例http://oldboy.blog.51cto.com/2561410/949365180 181 linux三剑客 老大182 例:183 [rootserver test]# awk -F : {print $1} /etc/passwd 184 [rootserver test]# awk -F : {print $2} /etc/passwd 185 [rootserver test]# awk -F : {print $1$2$3} /etc/passwd 186 [rootserver test]# awk -F : {print $(NF-1)} /etc/passwd //表示筛选倒数第二列 187 188 [rootserver test]# awk {if(NR31 NR19) printf $1\n} /root/test1.txt //\n表示回车 NR代表行号 代表and 189 20190 21191 22192 23193 24194 25195 26196 27197 28198 29199 30200 201 [rootserver test]# awk {if(NR19 NR31) printf $1\n} /root/test1.txt 202 20203 21204 22205 23206 24207 25208 26209 27210 28211 29212 30213 214 例215 [rootserver ~]# echo I am oldboy,myqq is 24731701 oldboy.txt 216 [rootserver ~]# cat oldboy.txt 217 I am oldboy,myqq is 24731701218 [rootserver ~]# awk -F [, ] {print $3 $6} oldboy.txt //光取第3跟第6列 219 oldboy 24731701220 221 实例取IP地址(2015/12/22号添加)222 [rootserver test]# ifconfig eth0|awk -F [: ] NR2 {print $4 } //[方框中的内容为目标前后分隔符] 223 192.168.1.11224 [rootserver test]#225 226 227 228 229 (2)grep ***** 擅长过滤过滤器把想要的或者不想要的分离开。尽量使用双引号();230 -v:表示排除231 -o:只匹配你想要的结果必备参数232 -i:表示不区分大小写233 -E: grep -Eegrep234 -n:打印行号235 --colorauto 给匹配到的字符串加颜色(不是正行)236 -a: 在二进制文件中以文本文件的方式搜索数据237 -c: 计算找到‘搜索字符串’的次数238 提示-i -v为常用参数239 -A: After的意思显示匹配字符串及其后n行的数据240 -B: before的意思显示匹配字符串及其前n行的数据241 -C: 显示匹配字符串及其前后各num行242 例1243 [rootserver zhu]# grep 3306 /etc/services 244 mysql 3306/tcp # MySQL 245 mysql 3306/udp # MySQL 246 [rootserver zhu]# grep --colorauto 3306 /etc/services 247 mysql 3306/tcp # MySQL 248 mysql 3306/udp # MySQL 249 linux三剑客 老三250 251 252 参数介绍253 -B:除了显示匹配的一行之外并显示改行之前的num行254 例255 [rootserver ~]# grep 30 -B 10 test.txt 256 20257 21258 22259 23260 24261 25262 26263 27264 28265 29266 30267 -A:除了显示匹配的一行之外并显示该行之后的num行268 例2269 [rootserver ~]# grep 20 -A 10 test.txt 270 20271 21272 22273 23274 24275 25276 26277 27278 28279 29280 30281 282 -C:除了显示匹配的一行之外并显示改行之前后各num行283 例284 [rootserver ~]# grep 25 -C 5 test.txt 285 20286 21287 22288 23289 24290 25291 26292 27293 28294 29295 30296 grep string -B 10 297 298 例文件如下过滤文件中的空行299 [rootserver ~]# cat oldboy.txt 300 oldboy301 302 oldooboy303 304 oldboooytxt305 方法1306 [rootserver ~]# grep -v ^$ oldboy.txt //这种方法最佳 307 oldboy308 oldooboy309 oldboooytxt310 [rootserver ~]# 311 312 方法2313 [rootserver ~]# grep . oldboy.txt 314 oldboy315 oldooboy316 oldboooytxt317 [rootserver ~]#318 方法3319 [rootserver ~]# sed /^$/d oldboy.txt 320 oldboy321 oldooboy322 oldboooytxt323 [rootserver ~]#324 方法4325 [rootserver ~]# awk /^[^$]/ oldboy.txt 326 oldboy327 oldooboy328 oldboooytxt329 [rootserver ~]# 330 331 332 333 (3)sed *****(strem editor) 擅长取行、查找替换334 sed -n 335 过滤sed -n /过滤的内容/处理的命令 文件336 -n:取消sed的默认输出337 -i:改变文件内容338 “”等号表示行号339 处理的命令p print打印d delete删除340 341 sed -n 20,30p test.txt342 linux三剑客 老二 343 例1344 [rootserver data]# cat test.txt 345 test346 liyao347 oldboy348 [rootserver data]# sed -n /oldboy/p test.txt 等价于grep oldboy test.txt 349 oldboy350 [rootserver data]# sed /oldboy/d test.txt 等价于 head -2 test.txt 等价于grep -v oldboy test.txt 351 test352 liyao353 [rootserver data]# 354 sed替换*****355 例子2356 [rootserver ~]# sed -i s#zhurui#oldboy#g test.txt 357 s常说的查找并替换用一个字符串换成另外一个358 g(global)与s联合使用时表示对当前行全局匹配替换(与下一个g意义不同)359 -i:修改文件内容360 #是分隔符可以用/等替换;361 362 sed -r s#(.*)#\1#g 文件oldboy.txt //(.*)表示括号里的内容可以通过\1可以取出来;363 实例如下364 [rootserver ~]# echo oldboy oldgirl|sed -r s#(.*) (.*)#\1 \2#g 365 oldboy oldgirl366 [rootserver ~]# 367 368 企业实例369 第一种方法370 [rootserver ~]# ifconfig eth0|sed -n 2p|sed -r s#^.*dr:(.*) Bc.*$#\1#g 371 192.168.1.11372 [rootserver ~]# 373 第二种方法374 [rootserver ~]# ifconfig eth0|sed -rn 2s#^.*dr:(.*) Bc.*$#\1#gp 375 192.168.1.11376 [rootserver ~]# 377 378 379 [rootserver data]# sed -r s#(zhu)#\1#g oldboy.txt sed -i s#zhu#zhu#g oldboy.txt 380 zhu zhu381 zhu1 zhu382 zhu2 zhu383 384 (1)[rootserver data]# find /root/data/ -type f -name test.txt|xargs sed -i s#oldboy#oldgirl#g 385 (2)[rootserver data]# find /root/data/ -type f -name test.txt -exec sed -i s#oldboy#oldgirl#g {} \; 386 (3)[rootserver data]# sed -i s#oldgirl#oldboy#g find ./ -type f -name test.txt //第三种方法优势更大点 387 388 例3389 awk sed的过滤都是过滤以d开头的目录390 [rootserver ~]# ls -lF|awk /^d/ 391 drwxr-xr-x 2 root root 4096 12月 2 15:41 qq/392 drwxr-xr-x. 102 root root 4096 11月 27 16:57 test/393 drwxr-xr-x 7 root root 4096 12月 3 16:39 zhu/394 395 [rootserver ~]# ls -lF|sed -n /^d/p 396 drwxr-xr-x 2 root root 4096 12月 2 15:41 qq/ 397 drwxr-xr-x. 102 root root 4096 11月 27 16:57 test/398 drwxr-xr-x 7 root root 4096 12月 3 16:39 zhu/399 [rootserver ~]# 400 401 [rootserver ~]# ls -lF|grep ^d 402 drwxr-xr-x 2 root root 4096 12月 2 15:41 qq/403 drwxr-xr-x. 102 root root 4096 11月 27 16:57 test/404 drwxr-xr-x 7 root root 4096 12月 3 16:39 zhu/405 406 例4过滤Ip地址407 [rootserver ~]# ifconfig eth0|sed -n 2p //-n表示取消默认输出2p表示取第2行 408 inet addr:192.168.1.11 Bcast:192.168.1.255 Mask:255.255.255.0409 410 411 412 413 414 yum linux里包管理器,宝珠解决依赖问题415 例子yum -y install tree -y 416 下载tree包然后调用rpm命令安装tree包417 如果需要依赖包帮你下载帮你提前安装418 yum update -y 等价于upgrade419 420 yum grouplist 里选包组 然后yum groupinstall 包组 -y421 yum search 关键字或yum search all:升级补丁422 423 yum remove tree -y 千万不要用424 425 rpm -ivh(安装、显示输出、人类可读展示)426 rpm -ivh 包名.rpm(提前下载好)427 最大问题依赖包问题不好解决;428 a---b---c---d429 例430 [rootserver oldboy]# rpm -qa tree //查询本机已经有无安装tree包 -qa 431 tree-1.5.3-3.el6.x86_64432 [rootserver oldboy]# 433 434 tree 显示目录树结构 435 -L:显示层数436 -d:显示目录437 例438 [rootserver ~]# tree /root/zhu/ -Ld 1 439 /root/zhu/440 ├── a441 ├── b442 ├── c443 ├── d444 └── e445 446 447 448 alias 查看以及定义别名(外号、小名)449 例子alias rmechorm can not be used,please use mv //保护系统禁止新手使用rm命令使用mv命令;450 别名永久生效位置:root用户[rootserver etc]# vim /root/.bashrc 451 所有用户都生效:/etc/bashrc或/etc/profile定义452 生效source /etc/profiles453 unalias 取消别名454 seq sequenceseq序列455 -s 制定序列的分割符456 -w457 history 打印用户操作的历史记录458 ps -ef|grep ssh 查看进程命令459 ss/netstat -lntup/-tulp|grep ssh 查看端口是否工作 460 查看配置好的Ip:461 ifconfig462 ip add 463 hostname 查看主机名(uname -n)464 uname 打印系统信息 -r 内核 -m查看32位还是64位 -n主机名465 whoami 查看当前用户466 ############################################################################################## 467 su 用户角色切换468 su - 用户名-参数切换用户环境变量469 实例470 [rootserver tmp]# su - oldboy -c touch a.txt //表示在不切换用户前提下使用-c选项使得在不切换的账号情况下执行操作 471 [rootserver tmp]# ls -l /home/oldboy/a.txt 472 -rw-r--r-- 1 oldboy incahome 0 Jan 2 22:50 /home/oldboy/a.txt473 [rootserver tmp]# 474 参考文档http://oldboy.blog.51cto.com/2561410/1053606475 ############################################################################################## 476 getenforce 检查selinux状态477 setenforce 设置SELINUX状态 1启用 0警告不启用478 例479 方法1480 [rootserver selinux]# sed -i s#SELINUXenforcing#SELINUXdisabled#g /etc/selinux/config 481 [rootserver selinux]# grep disabled /etc/selinux/config 482 SELINUXdisabled483 [rootserver selinux]# cat /etc/selinux/config 484 方法2485 [rootserver selinux]# getenforce 486 Enforcing487 [rootserver selinux]# setenforce 488 usage: setenforce [ Enforcing | Permissive | 1 | 0 ]489 [rootserver selinux]# setenforce 0 //关闭警告 490 [rootserver selinux]# getenforce 491 Permissive492 493 runlevel //查看用户所在系统运行级别494 init: 切换运行级别后面接对应级别的数字;495 init 5 startx 切换桌面环境496 chkconfig 设置开机自启服务497 chkconfig --list iptables498 499 diff 比较接两个文件500 vimdiff 高级比较高亮显示两个文件内容区别501 例502 [rootserver ssh]# diff sshd_config sshd_config20151129.bak 503 504 [rootserver ssh]# vimdiff sshd_config sshd_config20151129.bak 505 506 507 which:查找命令所在的路径搜索范围来自全局环境PATH变量对应的路径;508 509 whereis查找相关信息 -b 查二进制命令510 511 locate :从数据库里查相关信息新命令需提前updatedb更新数据库512 513 例514 [rootserver ~]# whereis -b ifconfig 515 ifconfig: /sbin/ifconfig516 find / -type f -name mv 517 find / -type f -name useradd 518 locate useradd519 #################################################################################################### 520 history 显示历史记录521 history -c:清空所有的历史记录522 history -d 多(#)行号清空第#行; 523 #################################################################################################### 524 wget:下载的意思 wget http://url525 [rootserver yum.repos.d]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo 526 -O指定文件改成什么什么样子527 --spider 爬虫检查网站是不是好的不会下载只会检查528 -T --timeoutseconds 超时时间529 --tries10 指定重试的次数530 -q --quit 关闭输出531 wget --spider --force-html -i bookmarks.html532 #################################################################################################### 2016/1/3号添加 533 皇帝root 534 visudo vim /etc/sudoers 编辑sudo配置文件(vi /etc/sudoers) -c 检查语法535 注意配置用户权限位置在配置文件98行位置(用98gg直接切换)536 537 538 臣民539 sudo 调兵虎符sudo配置文件授权之后执行命令时需要命令前带sudo540 sudo [参数选项] 命令541 -l:必须登录用户下面查看root给当前用户所分配的权限规则542 例543 [oldboyserver ~]$ sudo -l544 用户 oldboy 可以在该主机上运行以下命令545 (ALL) /bin/touch, (ALL) /usr/sbin/useradd, (ALL) /bin/ls, (ALL) /bin/rm546 547 548 549 550 551 552 #################################################################################################### 553 ifup eth0:打开网卡554 ifdown eth0:关闭网卡555 df -h //以可读的形式查看磁盘挂载信息 等价于cat /proc/mounts556 ##################################################################################################### 557 df -i:查看挂载的磁盘inode情况558 [rootserver ~]# df -i 559 Filesystem Inodes IUsed IFree IUse% Mounted on560 /dev/sda3 479552 59041 420511 13% /561 tmpfs 71261 1 71260 1% /dev/shm562 /dev/sda1 51200 38 51162 1% /boot563 [rootserver ~]# 564 ##################################################################################################### 565 566 567 568 569 cat /proc/mount //设备挂载信息570 fsck -A 磁盘检查不要检查好的磁盘卸载的状态检查。571 572 dmesg---内核打印的错误信息例如硬件故障警告573 574 [rootserver profile.d]# crontab -l 575 [rootserver profile.d]# cat /var/spool/cron/root //定时任务所在路径 576 577 tar 打包具体参数见视频578 gzip/unzip zip压缩解压缩579 580 cut 切割简单的取列命令 581 -d指定分隔符582 -f数字:表示取第几列。-f3,6583 -c按字符取584 585 wc 打印行号字节数586 -l:显示一个文件有多少行587 例子588 589 [rootserver ~]# wc -l /etc/services 590 10774 /etc/services591 [rootserver ~]# 592 593 [rootserver ~]# cat -n /etc/services|tail -1 594 10774 iqobject 48619/udp # iqobject 595 596 dumpe2fs - dump ext2/ext3/ext4 filesystem information597 598 12月10号599 chmod change mode改变文件权限600 方法 1数字修改方法601 chmod [数字组合] 文件名602 r 4603 w 2604 x 1605 - 0606 例 rw-rw-r-x 代表数字权限655607 608 方法2字符权限修改方法609 chmod [用户类型] [ | - | ] [权限字符] 文件名610 rw-rw-r-xrwx--xr-x:611 例chmod ux,gx test.sh612 613 umask默认值为022614 查看umask值命令为umask615 修改umask: umask 051616 例617 如果umask值位051则创建文件后权限位为多少如果umask值中有奇数奇数位有几位对应有几个1必须是先减去umask值再加上对应的几个1。618 答666 666619 - 051 - 051620 ----------(错误) 11621 615 ---------(正确)622 626623 624 625 永久修改配置文件将配置信息填写到/etc/profile中626 vim /etc/profile627 12.14628 修改用户属组629 chown .adminuser /home/adminschgrp adminuser /home/admins630 chown 用户 文件或目录 仅仅授权用户631 chown :组 文件或目录 仅仅授权用户组632 等同于chgrp 组 文件或目录 633 chown 用户组 文件或目录 表示授权用户和组。634 强调635 1)其中的冒号“”可以用点好“.”替代。636 2要授权的用户和组名必须是Linux里实际存在的。637 638 639 ########################################################################## 640 删除用户的命令userdel -r oldboy //将oldboy家目录一起删除641 删除用户组的命令groupdel incahome642 useradd oldboy -u uid号/用户名-g (gid号/组名)643 userdel:644 所涉及到的文件645 /etc/passwd--用户账号资料文件646 /etc/shadow--用户账号资讯加密文件647 /etc/group--用户组资讯文件648 useradd 添加用户 -u uid -g 指定所属组 -s 登录SHELL -M649 -c:设置备注信息650 -u:设置UID号651 -G:设置对于的属组652 -s:设置对应的shell653 -d:设置相应的家目录654 -e:指定用户过期时间655 实例656 8 [rootserver ~]# useradd -c HandsomeBoy -u 806 -G root,oldboy,sa -s /bin/sh -d /oldboy6 oldboy6 657 9 ##注释 658 10 -c:设置备注信息659 11 -u:设置UID号660 12 -G:设置对于的属组661 13 -s:设置对应的shell662 14 -d:设置相应的家目录663 15 ###成果如下 664 16 [rootserver ~]# grep oldboy6 /etc/passwd 665 17 oldboy6:x:806:806:HandsomeBoy:/oldboy6:/bin/sh666 18 [rootserver ~]# id oldboy6 667 19 uid806(oldboy6) gid806(oldboy6) groups806(oldboy6),0(root),512(sa),513(oldboy)668 669 例670 [rootserver ~]# echo 123456|passwd --stdin oldboy 671 更改用户 oldboy 的密码 。672 passwd 所有的身份验证令牌已经成功更新。673 [rootserver ~]# echo 123 p.log 674 [rootserver ~]# passwd --stdin oldboy p.log 675 更改用户 oldboy 的密码 。676 passwd 所有的身份验证令牌已经成功更新。677 [rootserver ~]# 678 679 ######################################################################### 680 usermod 用户信息修改相关命令681 682 -l (login_name):变更用户login时的名称为login_name,其余信息不变、683 -L冻结用户密码684 -U取消冻结用户的密码使之恢复登录。实际同样是修改/etc/shadow的内容685 usermod 修改用户 -u uid,-g 指定所属组-s登录SHELL,-e 指定用户过期时间686 ########################################################################## 687 chage 查看及修改用户密码相关信息688 -E,--expiredate过期时间将账号过期时间设为“过期时间”日期写法MM/DD/YY689 -I,--inactive失效密码690 -l,--list 显示账号年龄信息691 -m,--mindays 最小天数692 -M,--maxdays 最大天数693 -W,--warndays 警告天数694 例695 [rootserver ~]# chage -l oldboy 696 Last password change : Dec 31, 2015697 Password expires : Feb 29, 2016698 Password inactive : Mar 30, 2016699 Account expires : never700 Minimum number of days between password change : 7701 Maximum number of days between password change : 60702 Number of days of warning before password expires : 10703 [rootserver ~]# chage -m 8 -M 61 -W 11 -I 31 oldboy 等价于passwd -n 8 -x 61 -w 11 -i31 oldboy命令也可以实现同样功能知识参数的写法不同 704 [rootserver ~]# chage -l oldboy 705 Last password change : Dec 31, 2015706 Password expires : Mar 01, 2016707 Password inactive : Apr 01, 2016708 Account expires : never709 Minimum number of days between password change : 8710 Maximum number of days between password change : 61711 Number of days of warning before password expires : 11712 713 ######################################################################### 714 passwd --stdin 非交互式设置密码715 716 717 ######################################################################### 718 lsattr 查看特殊属性。719 chattr 设置特殊属性例如 i 不可变720 例721 [rootserver ~]# chattr i /etc/passwd /etc/group /etc/shadow /etc/gshadow /etc/inittab 722 [rootserver ~]# chattr -i /etc/passwd /etc/group /etc/shadow /etc/gshadow /etc/inittab //解除锁定 723 [rootserver ~]# lsattr /etc/passwd /etc/group /etc/shadow /etc/gshadow /etc/inittab //查看文件锁定状态 724 [rootserver ~]# mv which chattr /opt/oldboy //防止黑客找到文件可以将配置文件移动到其他地方 725 ########################################################################## 726 解析命令727 728 方法反引号或$() 等价于729 tar zcvf etc-date %F.tar.gz /etc/tar zcf var-$(date %F).tar.gz /var/730 731 ########################################################################### 732 2016年1月2号添加733 who show who is logged on734 w show who is logged on and what they are doing735 whoami 查看当前用户736 需要会的id,w,who,last,lastlog737 了解users,groups,newgrp738 739 ##################################################### 740 tr命令741 #方法5扩展如何将ls -l命令中的权限字符转换为八进制 742 22 [rootserver ~]# ll /etc/hosts|cut -c 2-10|tr rwx- 4210|awk -F {print $1$2$3 $4$5$6 $7$8$9} 743 23 644744 24 #知识点1.tr字符替换的使用2.cut -c截取字符3.awk指定分隔符为空。 745 746 ############################################################################################ 747 748 749 750 751 752 753 754 755 756 757 ps758 locate759 whereis760 export761 netstat(ss)762 ifconfig763 source764 ntpdate765 less 按屏(空格page up/page down) 或按行(回车)查看文件766 more 按屏(空格)或按行(回车)查看文件(不能向上翻)767 768 /var/log/messages 系统日志769 /var/log/secure 系统安全日志770 /var/spool/clientmqueue 邮件临时目录771 /proc/interrupts 查看中断文件772 /etc/fstab 磁盘文件系统开机自动挂载文件773 /etc/profile 全局的环境配置文件774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 绝对路径必须从/开始798 相对路径没有从/开始799 800 快捷键:801 TAB 命令、路径补全802 bash内置命令用help命令查看帮助803 alias804 bg805 break 806 cd807 continue 808 declare809 echo810 eval811 exec 812 exit813 export814 fg815 getopts816 hash, 817 help, 818 history, 819 jobs,820 kill, 821 let822 local, 823 logout, 824 mapfile,825 popd,826 printf, 827 pushd, 828 pwd, 829 read, 830 readonly, 831 return, 832 set, 833 shift, 834 shopt, 835 source, 836 suspend, 837 test, 838 times, 839 trap, 840 true, 841 type, 842 typeset,843 ulimit, 844 umask, 845 unalias, 846 unset, 847 848 849 850 851 852 853 特殊字符命令:854 或1 重定向会清除文件里所有以前数据增加新数据;855 或1 追加重定向文件结尾加入内容不会删除已有的文件内容;856 0 输入重定向;857 0 追加输入重定向858 2错误重定向859 2错误追加重定向860 861 1.标准输入(stdin)代码为0使用或数据流向从右向左862 2.标准输出(stdout): 代码为1使用或数据流向从左向右863 3.错误输出(stderr)代码为2使用2或2.864 865 箭头的指向就是数据的流向;866 下面3种方法是等价的867 /dev/null 空设备 黑洞868 1) 1 /dev/null 2 /dev/null869 2) ***** 1/dev/null 21870 3) /dev/null871 872 873 874 875 876 通配符(除了正则表达式以外的字符)877 * 通配符代表任意(0到多个)字符*****878 通配符代表任意1个字符879 ; 连续不同命令的分隔符*****880 # 配置文件注释***** 881 \ 让一个有意义的字符脱掉马甲。882 ..上级目录883 . 当前目录 \.代表点号; 884 . 还代表隐藏文件885 单引号不具有变量置换功能输出是所见即所得。886 双引号具有变量置换功能解析变量后输出。887 :里面放命令才会执行tab键上面的键反引号两个中间为命令会先执行等价于$()。$()888 | 管道(把前一个命令结果的输出交给后一个程序继续处理)889 ~ 用户的家目录针对root环境~就代表/root。890 $ 变量前需要加的符号891 / 路径分隔符号892 {} 生成字符或数字序列类似seq,列举的意思一般搭配echo使用;893 !字母调出最近一次以此字母开头的命令并执行894 例895 首先执行 mkdir stu{001..100}896 接着执行!m mkdir stu{001..100}897 !!表示使用最近一次操作的命令;898 逻辑运算中的“非”not899 当前一个指令执行成功时执行后一个指令900 || 当前一个指令执行失败时执行后一个指令901 或1 重定向会清除文件里所有以前数据增加新数据;902 或1 追加重定向文件结尾加入内容不会删除已有的文件内容;903 0 输入重定向;904 0 追加输入重定向905 2错误重定向906 2错误追加重定向907 cd -:表示回到所在目录的上一级目录;908 例909 [rootserver test]# pwd 910 /root/test911 [rootserver test]# cd /tmp/ 912 [rootserver tmp]# cd - 913 /root/test914 [rootserver test]# pwd 915 /root/test916 917 918 基础正则表达式一些特殊的符号 表示一些特殊的功能和作用919 . 单个任意字符920 * 重复前面任意0个或多个字符921 .* 匹配任意字符922 sed -i s#(可以用正则匹配)#\1#g oldboy.txt923 把前面正则匹配的括号内的结果在后面用\1取出来操作。924 ^$:表示空行925 []:匹配指定范围内任意单个字符;926 {n,m}:表示n-m次927 \:让一个正则表达式有意义的字符脱掉马甲;928 ?:0或1个;929 :重复前面1或多次;930 |:或931 ():分组932 [^]:表示取反933 ^表示以什么什么开头例如^d:表示以d开头的文件934 $表示以什么什么结尾例如/$:表示以/为结尾的oldboy$:以oldboy为结尾的935 5.扩展的正则表达式ERE(egrep或grep -E)936 1) 重复一个或一个以上前面的字符。937 例938 [rootserver oldboy]# grep -Eo god oldboy.log 939 god940 good941 god942 goood943 2)? 匹配之前的项1次或者0次。944 例945 [rootserver oldboy]# grep -Eo go?d oldboy.log 946 god947 god948 gd949 [rootserver oldboy]#950 951 [rootserver oldboy]# grep -Eo g?d oldboy.log 952 d953 d954 d955 d956 d957 d958 d959 d960 d961 d962 gd963 [rootserver oldboy]#964 3)| 用或的方式查找多个符合的字符串。965 例966 [rootserver oldboy]# grep -E g?d|good oldboy.log 967 I am oldboy teacher!968 I like badminiton ball,billiard ball and chinese chess!969 my blog is http://oldboy.blog.51cto.com.970 my god , i am not oldboy,but OLDBOY!971 good972 god973 goood974 gd975 4)() 找出“用户组”字符串。976 例977 [rootserver oldboy]# grep -E g(la|oo)d oldboy.log 978 good979 [rootserver oldboy]#980 981 ^表示以什么什么开头例如^d:表示以d开头的文件982 例983 [rootserver etc]# ls -l|grep ^d //匹配以d开头的文件 984 drwxr-xr-x. 3 root root 4096 11月 25 02:44 abrt985 drwxr-xr-x. 4 root root 4096 11月 25 02:46 acpi986 drwxr-xr-x. 2 root root 4096 11月 25 02:46 alsa987 drwxr-xr-x. 2 root root 4096 11月 25 02:44 alternatives988 drwxr-x---. 3 root root 4096 11月 25 02:46 audisp989 drwxr-x---. 3 root root 4096 11月 25 02:46 audit990 drwxr-xr-x. 2 root root 4096 11月 25 02:46 bash_completion.d991 drwxr-xr-x. 2 root root 4096 12月 2 22:06 blkid992 drwxr-xr-x. 2 root root 4096 3月 10 2015 chkconfig.d993 drwxr-xr-x. 2 root root 4096 11月 25 02:44 compat-openmpi-psm-x86_64994 drwxr-xr-x. 2 root root 4096 11月 25 02:45 compat-openmpi-x86_64995 996 $表示以什么什么结尾例如/$:表示以/为结尾的oldboy$:以oldboy为结尾的997 例998 [rootserver etc]# ls -lF|grep /$ 999 drwxr-xr-x. 3 root root 4096 11月 25 02:44 abrt/
1000 drwxr-xr-x. 4 root root 4096 11月 25 02:46 acpi/
1001 drwxr-xr-x. 2 root root 4096 11月 25 02:46 alsa/
1002 drwxr-xr-x. 2 root root 4096 11月 25 02:44 alternatives/
1003 drwxr-x---. 3 root root 4096 11月 25 02:46 audisp/
1004 drwxr-x---. 3 root root 4096 11月 25 02:46 audit/
1005 drwxr-xr-x. 2 root root 4096 11月 25 02:46 bash_completion.d/
1006
1007 1008 1009 1010 1011 环境变量
1012 PATH 系统路径变量执行ls,cp等非内置命令时系统会查找PATH里对应的路径是否有如果没有就报告找不到该命令;
1013 当执行which cp来查看命令所在路径的时候也是从PATH变量去搜索。
1014 1015 临时修改 [rootserver ~]# export PATH/tmp:$PATH永久修改前面临时修改的命令放到/etc/profile下使用source /etc/profile使得修改立刻生效。 1016 1017 1018 1019 1020 1021 1022 1023 1024 学习中遇到的命令
1025 [rootserver cron]# cat /etc/rc.local //开机启动相当于windowsn开始菜单中启动选项 1026 1027 1028 [rootserver ~]# /etc/init.d/iptables stop //关闭防火墙 1029 1030 [rootserver ~]# yum -y install lrzsz //安装windowslinux之间传输文件的工具rz 1031 1032 [rootserver ~]# /etc/udev/rules.d/70-persistent-net.rules //解决vm克隆虚拟机后网卡不能启用 1033 1034 [rootserver ~]#echo /etc/udev/rules.d/70-persistent-net.rules /etc/rc.local 1035 1036 [rootserver ~]# cat /etc/redhat-release //查看版本 1037 CentOS release 6.7 (Final)
1038 [rootserver ~]# uname -r //查看内核 1039 2.6.32-573.el6.x86_64
1040 [rootserver ~]# uname -m //32位还是64位1041 x86_64
1042 [rootserver ~]# hostname //主机名 1043 server
1044 1045 [rootserver selinux]# runlevel //查看运行级别 1046 N 3
1047 1048 [rootserver ~]# find /root/data/ -type f -name *.txt -exec ls -l {} \; 1049 -rw-r--r--. 1 root root 7 Nov 27 07:05 /root/data/c/test.txt
1050 -rw-r--r--. 1 root root 0 Nov 25 23:42 /root/data/zhurui4.txt
1051 -rw-r--r--. 1 root root 7 Nov 27 07:05 /root/data/a/ddd/fff/test.txt
1052 -rw-r--r--. 1 root root 7 Nov 27 07:05 /root/data/a/test.txt
1053 -rw-r--r--. 1 root root 18 Nov 27 07:05 /root/data/test.txt
1054 1055 [rootserver ~]# find /root/data/ -type f -name *.txt|xargs ls -l //找到的结果可以用任何方式去处理 1056 -rw-r--r--. 1 root root 7 Nov 27 07:05 /root/data/a/ddd/fff/test.txt
1057 -rw-r--r--. 1 root root 7 Nov 27 07:05 /root/data/a/test.txt
1058 -rw-r--r--. 1 root root 7 Nov 27 07:05 /root/data/c/test.txt
1059 -rw-r--r--. 1 root root 18 Nov 27 07:05 /root/data/test.txt
1060 -rw-r--r--. 1 root root 0 Nov 25 23:42 /root/data/zhurui4.txt
10611062106310641065 [rootserver ~]# echo $PATH1066 /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
1067 [rootserver ~]# grep PATH /etc/profile 1068 case :${PATH}: in 1069 PATH$PATH:$1
1070 PATH$1:$PATH
1071 export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL
1072 [rootserver ~]# export PATH/tmp:$PATH //临时新增变量重启会失效 1073 [rootserver ~]# echo $PATH 1074 /tmp:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
1075 [rootserver ~]# which oldboy 1076 /usr/bin/which: no oldboy in (/tmp:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin)
1077 [rootserver ~]# touch /tmp/oldboy //新建命令 1078 [rootserver ~]# chmod x /tmp/oldboy //给命令执行权限 1079 [rootserver ~]# which oldboy 1080 /tmp/oldboy
1081 #PermitRootLogin yes //禁止管理员远程连接 1082 1083 修改字符集
1084 路径/etc/sysconfig/i18n
1085 [rootserver ~]# sed -i s#LANGen_US.UTF-8#LANGzh_CN.UTF-8#g /etc/sysconfig/i18n 1086 [rootserver ~]# . /etc/sysconfig/i18n source /etc/sysconfig/i18n //使配置立即生效 1087 [rootserver ~]# echo $LANG1088 zh_CN.UTF-8
1089 1090 时间同步任务计划
1091 [rootserver ~]# /usr/sbin/ntpdate time.nist.gov //同步互联网时间命令 1092 1093 [rootserver ~]# echo */5 * * * * /usr/sbin/ntpdate time.nist.gov /dev/null 2%1 /var/spool/cron/root //添加定时任务 1094 [rootserver ~]# crontab -l 1095 */5 * * * * /usr/sbin/ntpdate time.nist.gov /dev/null 2%1
1096 [rootserver ~]# 1097 1098 修改显示历史记录命令环境变量
1099 export HISTSIZE5 //修改默认显示历史记录的命令行
1100 export HISTFILESIZE5 //控制.bash_history文件显示行数
1101 [rootserver ~]# cat ~/.bash_history 1102 . /etc/sysconfig/i18n
1103 echo $LANG
1104 man cd
1105 history
1106 tree
1107 1108 交互给用户生成密码
1109 useradd oldboy
1110 echo 123456|passwd --stdin oldboy
1111 1112 1113 修改远程连接时间
1114 export TMOUT5
1115 echo export TMOUT5 /etc/profile
1116 tail -1 /etc/profile //查看最近修改/etc/profile配置文件
1117 source /etc/profile
1118 echo $TMOUT
1119 1120 文件描述符概念
1121 1、表示形式为整数数字一般使用0-65535范围;
1122 2、进程使用的时候会占用文件描述符标识打开的文件
1123 1124 查看默认文件描述符
1125 [rootserver cron]# ulimit -n 1126 1024
1127 3、调整文件描述符
1128 [rootserver cron]# ulimit -SHn 65535 //临时修改 1129 [rootserver cron]# echo * - nofile 65535 /etc/security/limits.conf echo ulimit -SHn 65535 /etc/rc.local 1130 1131 内核优化配置
1132 vim /etc/sysctl.conf //WEB服务iptables服务调优配置文件
1133 sysctl -p //让配置生效
1134 1135 [rootserver ~]# /etc/issue //隐藏linux软件名及版本号 1136 [rootserver ~]# /etc/issue.net 1137 1138 锁定系统配置文件防止恶意修改
1139 [rootserver ~]# chattr i /etc/passwd /etc/group /etc/shadow /etc/gshadow /etc/inittab 1140 [rootserver ~]# chattr -i /etc/passwd /etc/group /etc/shadow /etc/gshadow /etc/inittab //解除锁定 1141 [rootserver ~]# lsattr /etc/passwd /etc/group /etc/shadow /etc/gshadow /etc/inittab //查看文件锁定状态 1142 [rootserver ~]# mv which chattr /opt/oldboy //防止黑客找到文件可以将配置文件移动到其他地方 1143 1144 1145 1146 [rootserver ~]# grep -v nologin$ /etc/passwd //将不能登录的账号排除掉 1147 root:x:0:0:root:/root:/bin/bash
1148 sync:x:5:0:sync:/sbin:/bin/sync
1149 shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
1150 halt:x:7:0:halt:/sbin:/sbin/halt
1151 oldboy:x:500:500::/home/oldboy:/bin/bash
1152 oldgirl:x:501:501::/home/oldgirl:/bin/bash
1153 msn:x:502:502::/home/msn:/bin/bash
1154 1155 为grub菜单加密码
1156 1157 [rootserver ~]# /sbin/grub-md5-crypt 1158 Password:
1159 [rootserver ~]# vim /etc/grub.conf //将生成的密码填写到如下配置文件中 1160 13 hiddenmenu
1161 密码生成文件加到13-14行之间
1162 14 title CentOS 6 (2.6.32-573.el6.x86_64)
1163 1164 内核优化之禁PING
1165 1166 [rootserver ~]# echo net.ipv4.icmp_echo_ignore_all1 /etc/sysctl.conf 1167 [rootserver ~]# sysctl -p //让配置生效 1168 1169 1170 配置Yum源配置文件路径
1171 [rootserver ~]# cat /etc/yum.repos.d/CentOS-Base.repo 1172 1173 [rootserver ~]# cd /etc/yum 1174 yum/ yum.conf yum.repos.d/
1175 [rootserver ~]# cd /etc/yum.repos.d/ 1176 [rootserver yum.repos.d]# ls 1177 CentOS-Base.repo CentOS-fasttrack.repo CentOS-Vault.repo
1178 CentOS-Debuginfo.repo CentOS-Media.repo
1179 [rootserver yum.repos.d]# cp CentOS-Base.repo CentOS-Base.repo.20151201.bak //拷贝原有的centos-base-repo 1180 [rootserver yum.repos.d]# ls 1181 CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo
1182 CentOS-Base.repo.20151201.bak CentOS-fasttrack.repo CentOS-Vault.repo
1183 [rootserver yum.repos.d]# ls 1184 CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo
1185 CentOS-Base.repo.20151201.bak CentOS-fasttrack.repo CentOS-Vault.repo
1186 [rootserver yum.repos.d]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo //从阿里云下载yum源 1187 1188 setuid:如果命令有4755的权限对应关系为-rwsr-xr-x4755
1189 [rootserver test]# find / -type f -perm 4755|xargs ls -l 1190 -rwsr-xr-x. 1 root root 77336 10月 15 2014 /bin/mount
1191 -rwsr-xr-x. 1 root root 38200 7月 24 01:55 /bin/ping
1192 -rwsr-xr-x. 1 root root 36488 7月 24 01:55 /bin/ping6
1193 -rwsr-xr-x. 1 root root 34904 10月 15 2014 /bin/su
1194 -rwsr-xr-x. 1 root root 53472 10月 15 2014 /bin/umount
1195 -rwsr-xr-x. 1 root root 10272 10月 15 2014 /sbin/pam_timestamp_check
1196 -rwsr-xr-x. 1 root root 34840 10月 15 2014 /sbin/unix_chkpwd
1197 -rwsr-xr-x. 1 root root 54496 2月 20 2015 /usr/bin/at
1198 -rwsr-xr-x. 1 root root 66352 4月 7 2015 /usr/bin/chage
1199 -rwsr-xr-x. 1 root root 51784 3月 30 2015 /usr/bin/crontab
1200 -rwsr-xr-x. 1 root root 71480 4月 7 2015 /usr/bin/gpasswd
1201 -rwsr-xr-x. 1 root root 36144 4月 7 2015 /usr/bin/newgrp
1202 1203 只有拥有s权限则代表这个命令具有所属用户root的权限不管什么用户都可以执行
1204 1205 1206 1207 1208 1209 1210 1211 linux优化;
1212 1、建立普通账号使用普通账号登录
1213 2、处理selinux
1214 3、处理防火墙
1215 4、精简开机自启动服务sshd,network,crond,rsyslog,sysstat
1216 5、linux最小化安全理念
1217 1218 1219 1220 /boot/ /var/ /dev/ /lib/ /sbin/ /usr/ /tmp/ /mnt/ /etc/ /bin/ /opt/ 转载于:https://www.cnblogs.com/hackerer/p/8295063.html