linux常用下令详解和用途-linux运维
linux常用下令详解和用途:1、reboot下令用于重新启动机器;2、ls下令用于查看linux文件夹包括的文件;3、cd切换下令用于切换目前名目至dirName;4、pwd下令用于查看目前工作名目途径;5、mkdir下令用于新建文件夹等等。
相干学习举荐:linux视频教程
开关机下令
reboot下令用于重新启动机器 poweroff用于关闭系统
ifconfig 查看ip地址
直接输入ifconfig会列出已经启动的网卡,也可以输入ifconfig eth0独自显示eth0的信息 各选项解释是: eth0 网卡的代号 lo 回环地址loopback inet IPv4的Ip地址 netmask 子网掩码 broadcast 播送地址 RX/TX 流量发/收状况 tx是发送(transport),rx是接收(receive) packets 数据包数 errors 数据包差错数 dropped 数据包有题目被丢弃的数目 collisions 数据包碰撞状况,数值太多代表网络情况差
会员相干
增加会员,设定密码
#增加会员 useradd oldboy #设定密码 passwd redhat root会员可以修改其他所有人的密码,且不需要验证
切换会员
su下令可以切换会员身份的需求, su - username su下令中间的-号很重要,意味着完全切换到新的会员,即环境变量信息也变动为新会员的信息
查看目前会员
#先看下目前会员(我是谁) whoami #切换会员 su - oldboy #退出会员登录 logout ctrl + d
权限相干
查看权限
ls -l /var/log/mysqld.log
r read可读,可以用cat等下令查看 w write写入,可以编纂或者删除这个文件 x executable 可以施行
特别字符 重定向相干
输入/导出 重定向符号 1.>> 追加重定向,把文字追加到文件的结尾 2.> 重定向符号,清空原文件所有内容,然后把文字遮盖到文件末尾 3.< 输入重定向 4.<< 将输入结果输入重定向 echo "oldboy-python666" > /tmp/oldboy.txt echo "chaoge666" >> /tmp/oldboy.txt cat >>/tmp/oldboy.txt << EOF ------------------------------------ 我想把命令执行的结果信息,写入到文件中 ip addr > /tmp/network.txt #规范导出重定向 把下令施行效果信息,放入到文件中 3.通配符 ls -l /etc/us*
iptables防火墙
centos7默许已经运用firewall作为防火墙了 1.关闭防火墙 systemctl status firewalld #查看防火墙状态 systemctl stop firewalld #关闭防火墙 systemctl disable firewalld#关闭防火墙开机启动 systemctl is-enabled firewalld.service#检查防火墙可否启动
1. ls 下令
就是list的缩写,通过ls 下令不仅可以查看linux文件夹包括的文件,并且可以查看文件权限(包含名目、文件夹、文件权限)?查看名目信息等等
常用参数搭配:
ls -a 列出名目所有文件,包括以.开端的隐蔽文件
ls -A 列出除.及..的其它文件
ls -r 反序罗列
ls -t 以文件修改工夫排序
ls -S 以文件大小排序
ls -h 以易读大小显示
ls -l 除了文件名以外,还将文件的权限、所有者、文件大小等信息细致列出来
实例:
(1) 按易读方式定时间反序排序,并显示文件细致信息
ls -lhrt
(2) 按大小反序显示文件细致信息
ls -lrS
(3)列出目前名目中所有以“t”开头的名目的细致内容
ls -l t*
(4) 列出文件绝对途径(不包括隐蔽文件)
ls | sed "s:^:pwd
/:"
(5) 列出文件绝对途径(包括隐蔽文件)
find $pwd -maxdepth 1 | xargs ls -ld
2、cd 切换
(changeDirectory),下令语法:cd [名目名]。注明:切换目前名目至dirName
实例:
(1)进入要名目
cd /
(2)进入"家"名目
cd ~
(3)进入上一次工作途径
cd -
(4)把上个下令的参数作为cd参数运用。
cd !$
3、pwd 查看目前工作名目途径
查看目前工作名目途径
实例:
(1)查看目前途径
pwd
(2)查看软链接的现实途径
pwd -P
4、mkdir 新建文件夹
新建文件夹
可用选项:
-m: 对创建名目设定存取权限,也可以用chmod下令设定;
-p: 可以是一个途径名称。此时若途径中的某些名目尚不存在,加上此选项后,系统将主动创立好那 些尚不在的名目,即一次可以创立多个名目;
实例:
(1)目前工作名目下新建名为t的文件夹
mkdir t
(2)在tmp名目下新建途径为test/t1/t的名目,若不存在,则新建
mkdir -p /tmp/test/t1/t
5、rm 删除文件
删除一个名目中的一个或多个文件或名目,要是没有运用- r选项,则rm不会删除名目。要是运用 rm 来删除文件,平常仍可以将该文件恢还原状
rm [选项] 文件…
实例:
(1)删除任何.log文件;删除前逐一扣问确认
rm -i *.log
(2)删除test子名目及子名目中所有档案删除,而且不消一一确认
rm -rf test
(3)删除以-f开头的文件
rm -- -f*
6、rmdir 删除空名目
从一个名目中删除一个或多个子名目项,删除某名目时也必需拥有对其父名目的写权限。
注意:不克不及删除非空名目
实例:
(1)当parent子名目被删除后使它也成为空名目的话,则顺便一并删除
rmdir -p parent/child/child11
7、mv 挪移/修改文件名
挪移文件或修改文件名,依据第二参数类型(如名目,则挪移文件;如为文件则重下令该文件)。
当第二个参数为名目时,可刚多个文件以空格分隔作为首先参数,挪移多个文件到参数2指定的名目中
实例:
(1)将文件test.log重命名为test1.txt
mv test.log test1.txt
(2)将文件log1.txt,log2.txt,log3.txt挪移到根的test3名目中
mv llog1.txt log2.txt log3.txt /test3
(3)将文件file1改名为file2,要是file2已经存在,则扣问可否遮盖
mv -i log1.txt log2.txt
(4)挪移目前文件夹下的所有文件到上1级名目
mv * ../
8、cp 复制
将源文件复制至指标文件,或将多个源文件复制至指标名目。
注意:下令行复制,要是指标文件已经存在会提醒可否遮盖,而在shell足本中,要是不加-i参数,则不会提醒,而是直接遮盖!
-i 提醒
-r 复制名目及名目内所有项目
-a 复制的文件与原文件工夫同样
实例:
(1)复制a.txt到test名目下,维持原文件工夫,要是原文件存在提醒可否遮盖
cp -ai a.txt test
(2)为a.txt倡议一个链接(快捷方式)
cp -s a.txt link_a.txt
9、cat 显示文件详情
cat主要有三大功能:
1.一次显示整个文件:cat filename
2.从键盘新建一个文件:cat > filename 只能新建新文件,不克不及编纂已有文件.
3.将几个文件合并为一个文件:cat file1 file2 > file
-b对非空导出行号
-n导出所有行号
实例:
(1)把 log2012.log 的文件内容加上行号后输入 log2013.log 这个文件里
cat -n log2012.log log2013.log
(2)把 log2012.log 和 log2013.log 的文件内容加上行号(空白行不加)之后将内容附加到 log.log 里
cat -b log2012.log log2013.log log.log
(3)运用here doc生成新文件
cat >log.txt < >Hello >World >PWD=$(pwd) >EOF ls -l log.txt cat log.txt Hello World PWD=/opt/soft/test (4)反向列示 tac log.txt PWD=/opt/soft/test World Hello 功能相似于cat, more会以一页一页的显示利便运用者逐页浏览,而最根本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示 ->>下令参数: +n 从笫n行开端显示 -n 定义屏幕大小为n行 +/pattern 在每个档案显示前搜索该字串(pattern),然后从该字串前两行之后开端显示 -c 从顶部清屏,然后显示 -d 提醒“Press space to continue,’q’ to quit(按空格键继续,按q键退出)”,禁用响铃功能 -l 忽略Ctrl+l(换页)字符 -p 通过革除窗口而不是滚屏来对文件进行换页,与-c选项类似 -s 把陆续的多个空行显示为一行 -u 把文件内容中的下画线去除 ->>常用操纵下令: Enter 向下n行,需要定义。默许为1行 Ctrl+F 向下滚动一屏 空格键 向下滚动一屏 Ctrl+B 返回上一屏 = 导出目前行的行号 :f 导出文件名和目前行的行号 V 调取vi编纂器 !下令 调取Shell,并施行下令 q 退出more 实例: (1)显示文件中从第3行起的内容 more +3 text.txt (2)在所列出文件名目细致信息,借助管道使每次显示5行 ls -l | more -5 按空格显示下5行 less 与 more 相似,但运用 less 可以随便阅读文件,而 more 仅能向前挪移,却不克不及向后挪移,并且 less 在查看以前不会加载整个文件。 常用下令参数 -i 忽略搜寻时的大小写 -N 显示每行的行号 -o <文件名> 将less 导出的内容在指定文件中保留起来 -s 显示陆续空行为一行 /字符串:向下搜寻“字符串”的功能 ?字符串:向上搜寻“字符串”的功能 n:反复前一个搜寻(与 / 或 ? 有关) N:反向反复前一个搜寻(与 / 或 ? 有关) -x <数字> 将“tab”键显示为规定的数字空格 b 向后翻一页 d 向后翻半页 h 显示帮忙界面 Q 退出less 下令 u 向前滚动半页 y 向前滚动一行 空格键 滚动一行 回车键 滚动一页 [pagedown]: 向下翻滚一页 [pageup]: 向上翻滚一页 实例: (1)ps查看进程信息并通过less分页显示 ps -aux | less -N (2)查看多个文件 less 1.log 2.log 可以运用n查看下一个,运用p查看前一个 head 用来显示档案的开头至规范导出中,默许head下令打印其响应文件的开头10行。 常用参数: -n<行数> 显示的行数(行数为复数表示从最后向前数) 实例: (1)显示1.log文件中前20行 head 1.log -n 20 (2)显示1.log文件前20字节 head -c 20 log2014.log (3)显示t.log最后10行 head -n -10 t.log 用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处置。常用查看日志文件。 常用参数: -f 轮回读取(常用于查看递增的日志文件) -n<行数> 显示行数(从后向前) (1)轮回读取逐步添加的文件内容 ping 127.0.0.1 > ping.log &(后台运转:可运用jobs -l查看,也可运用fg将其移到前台运转) tail -f ping.log(查看日志) 在linux要查寻某个文件,但不晓得放在哪里了,可以运用下面的一些下令来搜寻: which 查看可施行文件的位置。 whereis 查看文件的位置。 locate 配合数据库查看文件位置。 find 现实搜索硬盘查询文件名称。 which是在PATH就是指定的途径中,搜寻某个系统下令的位置,并返回首先个搜寻效果。运用which下令,就可以看到某个系统下令可否存在,以及施行的到底是哪一个位置的下令。 常用参数: -n 指定文件名长度,指定的长度必需大于或等于所有文件中最长的文件名。 实例: (1)查看ls下令可否存在,施行哪个 which ls (2)查看which which which (3)查看cd which cd(显示不存在,由于cd是内建下令,而which查寻显示是PATH中的下令) 查看目前PATH配置:echo $PATH;或运用env查看所有环境变量及对应值 whereis下令只能用于程序名的搜寻,并且只搜寻二进制文件(参数-b)、man注明文件(参数-m)和源代码文件(参数-s)。要是省去参数,则返回所有信息。whereis及locate都是基于系统内建的数据库进行搜寻,因而效率很高,而find则是遍历硬盘查寻文件。 常用参数: -b 定位可施行文件。 -m 定位帮忙文件。 -s 定位源代码文件。 -u 搜寻默许途径下除可施行文件、源代码文件、帮忙文件之外的其它文件。 实例: (1)查寻locate程序相干文件 whereis locate (2)查寻locate的源码文件 whereis -s locate (3)查寻lcoate的帮忙文件 whereis -m locate locate通过搜索系统内建文档数据库达到迅速寻到档案,数据库由updatedb程序来更新,updatedb是由cron daemon周期性调取的。默许状况下locate下令在搜索数据库时比由整个由硬盘材料来搜索材料来得快,但较差劲的是locate所寻到的档案若是比来才创立或 刚更名的,可能会寻不到,在内定值中,updatedb天天会跑一次,可以由修改crontab来更新设置值。(etc/crontab)。 locate与find下令类似,可以运用如*、?等进行正则匹配查寻 常用参数: -l num(要显示的行数) -f 将特定的档案系统排除在外,如将proc排除在外 -r 运用正则运算式做为寻觅前提 实例: (1)查寻和pwd相干的所有文件(文件名中包括pwd) locate pwd (2)搜寻etc名目下所有以sh开头的文件 locate /etc/sh (3)查寻/var名目下,以reason结尾的文件 locate -r '^/var.reason$'(其中.表示一个字符,表示任务多个;.*表示任意多个字符) 用于在文件树中查寻文件,并作出响应的处置 下令格局: find pathname -options [-print -exec -ok ...] 下令参数: pathname: find下令所查寻的名目途径。例如用.来表示目前名目,用/来表示系统根名目。 -print: find下令将匹配的文件导出到规范导出。 -exec: find下令对匹配的文件施行该参数所给出的shell下令。响应下令的情势为'command' { } ;,注意{ }和\;之间的空格。 -ok: 和-exec的作用雷同,只不外以一种更为平安的模式来施行该参数所给出的shell下令,在施行每一个下令以前,都会给出提醒,让会员来肯定可否施行。 下令选项: -name 按照文件名查寻文件 -perm 按文件权限查寻文件 -user 按文件属主查寻文件 -group 按照文件所属的组来查寻文件。 -type 查寻某一类型的文件,诸如: b - 块设施文件 d - 名目 c - 字符设施文件 l - 符号链接文件 p - 管道文件 f - 普通文件 -size n :[c] 查寻文件长度为n块文件,带有c时表文件字节大小 -amin n 查寻系统中最后N分钟拜访的文件 -atime n 查寻系统中最后n*24小时拜访的文件 -cmin n 查寻系统中最后N分钟被转变文件状态的文件 -ctime n 查寻系统中最后n*24小时被转变文件状态的文件 -mmin n 查寻系统中最后N分钟被转变文件数据的文件 -mtime n 查寻系统中最后n*24小时被转变文件数据的文件 (用减号-来限制更改工夫在距今n日之内的文件,而用加号+来限制更改工夫在距今n日之前的文件。 ) -maxdepth n 最大查寻名目深度 -prune选项来指出需要忽略的名目。在运用-prune选项时要小心,由于要是你同时运用了-depth选项,那么-prune选项就会被find下令忽略 -newer 要是但愿查寻更改工夫比某个文件新但比另一个文件旧的所有文件,可以运用-newer选项 实例: (1)查寻48小时内修改正的文件 find -atime -2 (2)在目前名目查寻 以.log结尾的文件。 ". "代表目前名目 find ./ -name '*.log' (3)查寻/opt名目下 权限为 777的文件 find /opt -perm 777 (4)查寻大于1K的文件 find -size +1000c find -size 1000c 查寻等于1000字符的文件 -exec 参数背面跟的是command下令,它的终止是以;为完毕标记的,所以这句下令背面的分号是不成短少的,考虑到各个系统中分号会有不一样的意义,所之前面加反歪杠。{} 花括号代表前面find查寻出来的文件名。 实例: (5)在目前名目中查寻更改工夫在10日之前的文件并删除它们(无提示) find . -type f -mtime +10 -exec rm -f {} ; (6)目前名目中查寻所有文件名以.log结尾、更改工夫在5日以上的文件,并删除它们,只不外在删除以前先给出提醒。 按y键删除文件,按n键不删除 find . -name '*.log' mtime +5 -ok -exec rm {} ; (7)目前名目下查寻文件名以passwd开头,内容包括"pkg"字符的文件 find . -f -name 'passwd*' -exec grep "pkg" {} ; (8)用exec选项施行cp下令 find . -name '*.log' -exec cp {} test3 ; -xargs find下令把匹配到的文件通报给xargs下令,而xargs下令每次只猎取一局部文件而不是全部,不像-exec选项那样。这样它可以先处置最先猎取的一局部文件,然后是下一批,并如此继续下去。 实例: (9)查寻目前名目下每个普通文件,然后运用xargs来推断文件类型 find . -type f -print | xargs file (10)查寻目前名目下所有以js结尾的而且其中包括'editor'字符的普通文件 find . -type f -name "*.js" -exec grep -lF 'ueditor' {} ; find -type f -name '*.js' | xargs grep -lF 'editor' (11)应用xargs施行mv下令 find . -name "*.log" | xargs -i mv {} test4 (12)用grep下令在目前名目下的所有普通文件中搜寻hostnames这个词,并标出所在行 find . -name *(转义) -type f -print | xargs grep -n 'hostnames' (13)查寻目前名目中以一个小写字母开头,最后是4到9加上.log完毕的文件 find . -name '[a-z]*[4-9].log' -print (14)在test名目查寻不在test4子名目查寻 find test -path 'test/test4' -prune -o -print (15)实例1:查寻更改工夫比文件log2012.log新但比文件log2017.log旧的文件 find -newer log2012.log ! -newer log2017.log 运用depth选项: depth选项可以使find下令向磁带上备份文件系统时,但愿第一备份所有的文件,其次再备份子名目中的文件。 实例:find下令从文件系统的根名目开端,查寻一个名为CON.FILE的文件。 它将第一匹配所有的文件然后再进入子名目中查寻 find / -name "CON.FILE" -depth -print 强大的文本搜寻下令,grep(Global Regular Expression Print)全局正则表达式搜寻 grep的工作方式是这样的,它在一个或多个文件中搜寻字符串模板。要是模板包含空格,则必需被援用,模板后的所有字符串被看作文件名。搜寻的效果被送到规范导出,不影响原文件内容。 下令格局: grep [option] pattern file|dir 常用参数: -A n --after-context显示匹配字符后n行 -B n --before-context显示匹配字符前n行 -C n --context 显示匹配字符先后n行 -c --count 盘算相符样式的列数 -i 忽略大小写 -l 只列出文件内容相符指定的样式的文件名称 -f 从文件中读取关键词 -n 显示匹配内容的所在文件中行数 -R 递归查寻文件夹 grep的法则表达式: ^ #锚定行的开端 如:'^grep'匹配所有以grep开头的行。 $ #锚定行的完毕 如:'grep$'匹配所有以grep结尾的行。 . #匹配一个非换行符的字符 如:'gr.p'匹配gr后接一个任意字符,然后是p。 * #匹配零个或多个先前字符 如:'*grep'匹配所有一个或多个空格后紧跟grep的行。 .* #一起用代表任意字符。 [] #匹配一个指定范畴内的字符,如'[Gg]rep'匹配Grep和grep。 [^] #匹配一个不在指定范畴内的字符,如:'[^A-FH-Z]rep'匹配不包括A-R和T-Z的一个字母开头,紧跟rep的行。 (..) #标志匹配字符,如'(love)',love被标志为1。 < #锚定单词的开始,如:' > #锚定单词的完毕,如'grep>'匹配包括以grep结尾的单词的行。 x{m} #反复字符x,m次,如:'0{5}'匹配包括5个o的行。 x{m,} #反复字符x,至少m次,如:'o{5,}'匹配至少有5个o的行。 x{m,n} #反复字符x,至少m次,未几于n次,如:'o{5,10}'匹配5--10个o的行。 \w #匹配文字和数字字符,也就是[A-Za-z0-9],如:'G\w*p'匹配以G后跟零个或多个文字或数字字符,然后是p。 \W #\w的反置情势,匹配一个或多个非单词字符,如点号句号等。 \b #单词锁定符,如: '\bgrep\b'只匹配grep。 实例: (1)查寻指定进程 ps -ef | grep svn (2)查寻指定进程个数 ps -ef | grep svn -c (3)从文件中读取关键词 cat test1.txt | grep -f key.log (4)从文件夹中递归查寻以grep开头的行,并只列出文件 grep -lR '^grep' /tmp (5)查寻非x开关的行内容 grep '[x]' test.txt (6)显示包括ed或者at字符的内容行 grep -E 'ed|at' test.txt 用于转变linux系统文件或名目的拜访权限。用它控制文件或名目的拜访权限。该下令有两种用途。一种是包括字母和操纵符表达式的文字设置法;另一种是包括数字的数字设置法。 每一文件或名目的拜访权限都有三组,每组用三位表示,离别为文件属主的读、写和施行权限;与属主同组的会员的读、写和施行权限;系统中其他会员的读、写和施行权限。可运用ls -l test.txt查寻 以文件log2012.log为例: -rw-r--r-- 1 root root 296K 11-13 06:03 log2012.log 首先列共有10个位置,首先个字符指定了文件类型。在平常意义上,一个名目也是一个文件。要是首先个字符是横线,表示是一个非名目的文件。要是是d,表示是一个名目。从第二个字符开端到第十个共9个字符,3个字符一组,离别表示了3组会员对文件或者名目的权限。权限字符用横线代表空许可,r代表只读,w代表写,x代表可施行。 常用参数: -c 当产生转变时,汇报处置信息 -R 处置指定名目以及其子名目下所有文件 权限范畴: u :名目或者文件的目前的会员 g :名目或者文件的目前的群组 o :除了名目或者文件的目前会员或群组以外的会员或者群组 a :所有的会员及群组 权限代号: r :读权限,用数字4表示 w :写权限,用数字2表示 x :施行权限,用数字1表示 - :删除权限,用数字0表示 s :特别权限 实例: (1)添加文件t.log所实用户可施行权限 chmod a+x t.log (2)撤销本来所有的权限,然后使具有者拥有可读权限,并导出处置信息 chmod u=r t.log -c (3)给file的属主分配读、写、施行(7)的权限,给file的所在组分配读、施行(5)的权限,给其他会员分配施行(1)的权限 chmod 751 t.log -c(或者:chmod u=rwx,g=rx,o=x t.log -c) (4)将test名目及其子名目所有文件增加可读权限 chmod u+r,g+r,o+r -R text/ -c 用来紧缩和解压文件。tar自身不拥有紧缩功能,只拥有打包功能,有关紧缩及解压是调取其它的功能来完成。 弄清两个概念:打包和紧缩。打包是指将一大堆文件或名目酿成一个总的文件;紧缩则是将一个大的文件通过一些紧缩算法酿成一个小文件 常用参数: -c 创立新的紧缩文件 -f 指定紧缩文件 -r 增加文件到已经紧缩文件包中 -u 增加改了和现有的文件到紧缩包中 -x 从紧缩包中抽取文件 -t 显示紧缩文件中的内容 -z 支撑gzip紧缩 -j 支撑bzip2紧缩 -Z 支撑compress解压文件 -v 显示操纵历程 有关gzip及bzip2紧缩 gzip实例:紧缩gzip fileName .tar.gz和.tgz 解压:gunzip filename.gz或gzip -d filename.gz 对应:tar zcvf filename.tar.gz tar zxvf filename.tar.gz bz2实例:紧缩bzip2 -z filename .tar.bz2 解压:bunzip filename.bz2或bzip -d filename.bz2 对应:tar jcvf filename.tar.gz 解压:tar jxvf filename.tar.bz2 实例: (1)将文件全部打包成tar包 tar -cvf log.tar 1.log,2.log 或tar -cvf log.* (2)将/etc下的所有文件及名目打包到指定名目,并运用gz紧缩 tar -zcvf /tmp/etc.tar.gz /etc (3)查看刚打包的文件内容(一定加z,由于是运用gzip紧缩的) tar -ztvf /tmp/etc.tar.gz (4)要紧缩打包/home, /etc ,但不要 /home/dmtsai tar --exclude /home/dmtsai -zcvf myfile.tar.gz /home/* /etc chown将指定文件的具有者改为指定的会员或组,会员可以是会员名或者会员ID;组可以是组名或者组ID;文件是以空格分开的要转变权限的文件列表,支撑通配符 -c 显示更改的局部的信息 -R 处置指定名目及子名目 实例: (1)转变具有者和群组 并显示转变信息 chown -c mail:mail log2012.log (2)转变文件群组 chown -c :mail t.log (3)转变文件夹及子文件名目属主及属组为mail chown -cR mail: test/ (4)转变文件 显示磁盘空间运用状况。猎取硬盘被占用了多少空间,当前还剩下多少空间等信息,要是没有文件名被指定,则所有目前被挂载的文件系统的可用空间将被显示。默许状况下,磁盘空间将以 1KB 为单位进行显示,除非环境变量 POSIXLY_CORRECT 被指定,那样将以512字节为单位进行显示 -a 全部文件系统列表 -h 以利便浏览的方式显示信息 -i 显示inode信息 -k 区块为1024字节 -l 只显示当地磁盘 -T 列出文件系统类型 实例: (1)显示磁盘运用状况 df -l (2)以易读方式列出所有文件系统及其类型 df -haT du下令也是查看运用空间的,但是与df下令不一样的是Linux du下令是对文件和名目磁盘运用的空间的查看 下令格局: du [选项][文件] 常用参数: -a 显示名目中所有文件大小 -k 以KB为单位显示文件大小 -m 以MB为单位显示文件大小 -g 以GB为单位显示文件大小 -h 以易读方式显示文件大小 -s 仅显示总计 -c或--total 除了显示一般名目或文件的大小外,同时也显示所有名目或文件的总和 实例: (1)以易读方式显示文件夹内及子文件夹大小 du -h scf/ (2)以易读方式显示文件夹内所有文件大小 du -ah scf/ (3)显示几个文件或名目各自占用磁盘空间的大小,还统计它们的总和 du -hc test/ scf/ (4)导出目前名目下各个子名目所运用的空间 du -hc --max-depth=1 scf/ 功能是为文件在别的一个位置创立一个同步的链接,当在不一样名目需要该题目时,就不需要为每一个名目新建一样的文件,通过ln新建的链接(link)减少磁盘占用量。 链接分类:软件链接及硬链接 软链接: 1.软链接,以途径的情势存在。相似于Windows操纵系统中的快捷方式 2.软链接可以 跨文件系统 ,硬链接不成以 3.软链接可以对一个不存在的文件名进行链接 4.软链接可以对名目进行链接 硬链接: 1.硬链接,以文件副本的情势存在。但不占用现实空间。 2.不允许给名目新建硬链接 3.硬链接只要在统一个文件系统中才干新建 需要注意: 首先:ln下令会维持每一处链接文件的同步性,也就是说,岂论你改动了哪一处,其它的文件都会产生雷同的变化; 第二:ln的链接又分软链接和硬链接两种,软链接就是ln –s 源文件 指标文件,它只会在你选定的位置上生成一个文件的镜像,不会占用磁盘空间,硬链接 ln 源文件 指标文件,没有参数-s, 它会在你选定的位置上生成一个和源文件大小雷同的文件,不管是软链接还是硬链接,文件都维持同步变化。 第三:ln指令用在链接文件或名目,犹如时指定两个以上的文件或名目,且最后的目的地是一个已经存在的名目,则会把前面指定的所有文件或名目复制到该名目中。若同时指定多个文件或名目,且最后的目的地并非是一个已存在的名目,则会涌现差错信息。 常用参数: -b 删除,遮盖之前创立的链接 -s 软链接(符号链接) -v 显示细致处置历程 实例: (1)给文件新建软链接,并显示操纵信息 ln -sv source.log link.log (2)给文件新建硬链接,并显示操纵信息 ln -v source.log link1.log (3)给名目新建软链接 ln -sv /opt/soft/test/test3 /opt/soft/test/test5 显示或设置系统的日期与工夫 下令参数: -d<字符串> 显示字符串所指的日期与工夫。字符串先后必需加上双引号。 -s<字符串> 依据字符串来设定日期与工夫。字符串先后必需加上双引号。 -u 显示GMT。 %H 小时(00-23) %I 小时(00-12) %M 分钟(以00-59来表示) %s 总秒数。起算工夫为1970-01-01 00:00:00 UTC。 %S 秒(以当地的习用法来表示) %a 星期的缩写。 %A 星期的完备名称。 %d 日期(以01-31来表示)。 %D 日期(含年月日)。 %m 月份(以01-12来表示)。 %y 年份(以00-99来表示)。 %Y 年份(以四位数来表示)。 实例: (1)显示下一天 date +%Y%m%d --date="+1 day" //显示下一天的日期 (2)-d参数运用 date -d "nov 22" 本年的 11 月 22 日是星期三 date -d '2 weeks' 2周后的日期 date -d 'next monday' (下周一的日期) date -d next-day +%Y%m%d(明天的日期)或者:date -d tomorrow +%Y%m%d date -d last-day +%Y%m%d(昨天的日期) 或者:date -d yesterday +%Y%m%d date -d last-month +%Y%m(上个月是几月) date -d next-month +%Y%m(下个月是几月) 可以会员显示公历(阳历)日历如只要一个参数,则表示年份(1-9999),若有两个参数,则表示月份和年份 常用参数: -3 显示前一月,目前月,后一月三个月的日历 -m 显示星期一为首先列 -j 显示在目前年第几天 -y [year]显示目前年[year]份的日历 实例: (1)显示指定年月日期 cal 9 2012 (2)显示2013年每个月日历 cal -y 2013 (3)将星期一做为首先列,显示前中后三月 cal -3m wc(word count)功能为统计指定的文件中字节数、字数、行数,并将统计效果导出 下令格局: wc [option] file.. 下令参数: -c 统计字节数 -l 统计行数 -m 统计字符数 -w 统计词数,一个字被定义为由空白、跳格或换行字符分隔的字符串 实例: (1)查寻文件的 行数 单词数 字节数 文件名 wc text.txt 效果:7 8 70 test.txt (2)统计导出效果的行数 cat test.txt | wc -l ps(process status),用来查看目前运转的进程状态,一次性查看,要是需要动态陆续效果运用top linux上进程有5种状态: \1. 运转(正在运转或在运转队列中期待) \2. 中止(休眠中, 挨阻, 在期待某个前提的构成或承受到信号) \3. 不成中止(收到信号不叫醒和不成运转, 进程必需期待直到有中止产生) \4. 僵死(进程已终止, 但进程描述符存在, 直到父进程调取wait4()系统调取后开释) \5. 休止(进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后休止运转运转) ps工具标识进程的5种状态码: D 不成中止 uninterruptible sleep (usually IO) R 运转 runnable (on run queue) S 中止 sleeping T 休止 traced or stopped Z 僵死 a defunct (”zombie”) process 下令参数: -A 显示所有进程 a 显示所有进程 -a 显示统一终端下所有进程 c 显示进程真实名称 e 显示环境变量 f 显示进程间的关系 r 显示目前终端运转的进程 -aux 显示所有包括其它运用的进程 实例: (1)显示目前所有进程环境变量及进程间关系 ps -ef (2)显示目前所有进程 ps -A (3)与grep联用查寻某进程 ps -aux | grep apache (4)寻出与 cron 与 syslog 这两个办事有关的 PID 号码 ps aux | grep '(cron|syslog)' 显示目前系统正在施行的进程的相干信息,包含进程ID、内存占用率、CPU占用率等 常用参数: -c 显示完备的进程下令 -s 保密模式 -p <进程号> 指定进程显示 -n <次数>轮回显示次数 实例: (1) top - 14:06:23 up 70 days, 16:44, 2 users, load average: 1.25, 1.32, 1.35 Tasks: 206 total, 1 running, 205 sleeping, 0 stopped, 0 zombie Cpu(s): 5.9%us, 3.4%sy, 0.0%ni, 90.4%id, 0.0%wa, 0.0%hi, 0.2%si, 0.0%st Mem: 32949016k total, 14411180k used, 18537836k free, 169884k buffers Swap: 32764556k total, 0k used, 32764556k free, 3612636k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 28894 root 22 0 1501m 405m 10m S 52.2 1.3 2534:16 java 前五行是目前系统状况整体的统计信息区, 首先行,任务队列信息,同 uptime 下令的施行效果,具体参数注明状况如下: 14:06:23 — 目前系统工夫 up 70 days, 16:44 — 系统已经运转了70天16小时44分钟(在这期间系统没有重新启动过的吆!) 2 users — 目前有2个会员登录系统 load average: 1.15, 1.42, 1.44 — load average背面的三个数离别是1分钟、5分钟、15分钟的负载状况。 load average数据是每隔5秒钟检查一次活泼的进程数,然后按特定算法盘算出的数值。要是这个数除以逻辑CPU的数目,效果高于5的时候就表白系统在超负荷运行了。 第二行,Tasks — 任务(进程),具体信息注明如下: 系统此刻共有206个进程,其中处于运转中的有1个,205个在休眠(sleep),stoped状态的有0个,zombie状态(僵尸)的有0个。 第三行,cpu状态信息,具体属性注明如下: 5.9%us — 会员空间占用CPU的百分比。 3.4% sy — 内核空间占用CPU的百分比。 0.0% ni — 转变过优先级的进程占用CPU的百分比 90.4% id — 余暇CPU百分比 0.0% wa — IO期待占用CPU的百分比 0.0% hi — 硬中止(Hardware IRQ)占用CPU的百分比 0.2% si — 软中止(Software Interrupts)占用CPU的百分比 备注:在这里CPU的运用比率和windows概念不一样,需要了解linux系统会员空间和内核空间的相干见识! 第四行,内存状态,具体信息如下: 32949016k total — 物理内存总量(32GB) 14411180k used — 运用中的内存总量(14GB) 18537836k free — 余暇内存总量(18GB) 169884k buffers — 缓存的内存量 (169M) 第五行,swap交流分区信息,具体信息注明如下: 32764556k total — 交流区总量(32GB) 0k used — 运用的交流区总量(0K) 32764556k free — 余暇交流区总量(32GB) 3612636k cached — 缓冲的交流区总量(3.6GB) 第六行,空行。 第七行下列:各进程(任务)的状态监控,项目列信息注明如下: PID — 进程id USER — 进程所有者 PR — 进程优先级 NI — nice值。负值表示高优先级,正值表示低优先级 VIRT — 进程运用的虚拟内存总量,单位kb。VIRT=SWAP+RES RES — 进程运用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA SHR — 同享内存大小,单位kb S — 进程状态。D=不成中止的睡眠状态 R=运转 S=睡眠 T=跟踪/休止 Z=僵尸进程 %CPU — 上次更新到此刻的CPU工夫占用百分比 %MEM — 进程运用的物理内存百分比 TIME+ — 进程运用的CPU工夫总计,单位1/100秒 COMMAND — 进程名称(下令名/下令行) top交互下令 h 显示top交互下令帮忙信息 c 切换显示下令名称和完备下令行 m 之内存运用率排序 P 依据CPU运用百分比大小进行排序 T 依据工夫/累计工夫进行排序 W 将目前设定写入~/.toprc文件中 o或者O 转变显示项目的次序 发送指定的信号到响应进程。不指定型号将发送SIGTERM(15)终止指定进程。要是任没法终止该程序可用“-KILL” 参数,其发送的信号为SIGKILL(9) ,将强迫完毕进程,运用ps下令或者jobs 下令可以查看进程号。root会员将影响会员的进程,非root会员只能影响本人的进程。 常用参数: -l 信号,若果不加信号的编号参数,则运用“-l”参数会列出全部的信号名称 -a 当处置目前进程时,不限定下令名和进程号的对应关系 -p 指定kill 下令只打印相干进程的进程号,而不发送任何信号 -s 指定发送信号 -u 指定会员 实例: (1)先运用ps查寻进程pro1,然后用kill杀掉 kill -9 $(ps -ef | grep pro1) 显示系统内存运用状况,包含物理内存、交互区内存(swap)和内核缓冲区内存。 下令参数: -b 以Byte显示内存运用状况 -k 以kb为单位显示内存运用状况 -m 以mb为单位显示内存运用状况 -g 以gb为单位显示内存运用状况 -s<间隔秒数> 延续显示内存 -t 显示内存运用总合 实例: (1)显示内存运用状况 free free -k free -m (2)以总和的情势显示内存的运用信息 free -t (3)周期性查询内存运用状况 free -s 10 scp是 secure copy的缩写, scp是linux系统下基于ssh登陆进行平安的长途文件拷贝下令 参数 实例 vi filename :打开或创建文件,并将光标置于首先行首 vi n filename :打开文件,并将光标置于第n行首 vi filename :打开文件,并将光标置于一行首 vi /pattern filename:打开文件,并将光标置于首先个与pattern匹配的串处 vi -r filename :在上次正用vi编纂时产生系统解体,恢复filename vi filename....filename :打开多个文件,顺次进行编纂 屏幕翻动类下令 Ctrl u:向文件首翻半屏 Ctrl d:向文件尾翻半屏 Ctrl f:向文件尾翻一屏 Ctrl+b;向文件首翻一屏 nz:将第n行滚至屏幕顶部,不指定n时将目前行滚至屏幕顶部. 插入文本类下令 i :在光标前 I :在目前行首 a:光标后 A:在目前行尾 o:在目前行之下新开一行 O:在目前行之上新开一行 r:替代目前字符 R:替代目前字符及其后的字符,直至按ESC键 s:从目前光标位置处开端,以输入的文本替换指定数量的字符 保留下令 按ESC键 跳到下令模式,然后: :w 保留文件但不退出vi :w file 将修改别的保留到file中,不退出vi :w! 强迫保留,不推出vi :wq 保留文件并退出vi :wq! 强迫保留文件,并退出vi :q 不保留文件,退出vi :q! 不保留文件,强迫退出vi :e! 舍弃所有修改,从上次保留文件开端再编纂 之后,回车,ok! 详情博客:https://www.cnblogs.com/pyyu/p/9460649.html 注意事项: PATH中的环境变量有次序,要是你增加的变量需要优先被搜寻出,需要增加在变量首,不然放在尾部 指定的下令搜寻途径 查看PATH 1 暂时修改PATH变量 修改后通过echo $PATH查看配置 长处:立刻生效, 缺陷:暂时转变,只针对目前终端,退出就恢还原样 2 针对会员修改PATH变量 长处:针对目前会员,永恒有效 缺陷:仅限目前会员 3 全局修改PATH变量 长处:针对所实用户 查看 内部变量 全局修改 注意重新启动 暂时修改 下令格局: 下令A | 下令B 实例 为rm设定又名 想理解更多编程学习,敬请关注php培训栏目! 以上就是linux常用下令详解和用途的细致内容,更多请关注 百分百源码网 其它相干文章!10、more 分页显示
11、less下令
12、head 从头n行文本内容
13、tail 从尾n行文本
14、which 查看可施行文件的位置
15、whereis 查看可施行文件
16、locate下令
17、find 文件树中查寻文件
18、grep 文本搜寻下令
19、chmod 拜访权限
20、tar 紧缩和解压
21、chown 改为指定的会员或组
22、df 显示磁盘空间
23、du 查看运用空间
24、ln下令
25、date 显示工夫
26、cal下令
27、wc下令
28、ps 查看进程
29、top 正施行的进程
30、kill 杀死进程
31、free 显示内存运用状况
32、scp 传输文件
scp 【可选参数】 当地源文件 长途文件标志
-r :递归复制整个名目
-v:细致方式导出
-q:不显示传输进度条
-C:允许紧缩
#传输当地文件到长途地址
scp 当地文件 长途会员名@长途ip:长途文件夹/
scp 当地文件 长途会员名@长途ip:长途文件夹/长途文件名
scp /tmp/chaoge.py root@192.168.1.155:/home/
scp /tmp/chaoge.py root@192.168.1.155:/home/chaoge_python.py
scp -r 当地文件夹 长途会员名@长途ip:长途文件夹/
scp -r /tmp/oldboy root@192.168.1.155:/home/oldboy
#复制长途文件到当地
scp root@192.168.1.155:/home/oldboy.txt /tmp/oldboy.txt
scp -r root@192.168.1.155:/home/oldboy /home/
33、VI 和vim 编纂文本
常见环境变量变量
1、PATH
echo $PATH
export PATH=/usr/local/mongdb/bin:$PATH # 将mongdb下的bin名目放在暂时放在PATH变量中,以:号进行分割,
vim ~/.bashrc
#在最后一行增加
export PATH=/usr/local/mongodb/bin:$PATH
#保留关闭
#读取该文件让其生效
source ~/.bashrc
# 编纂该文件
vim /etc/profile
# 在文件尾增加,
export PATH=/usr/local/mongodb/bin:$PATH
# 保留退出,重新启动生效
2、PS1 设定下令提醒符显示的内容
echo $PS1
\d 日期
\H 完备主机名
\h 主机名首先个名字
\t 工夫24小时制HHMMSS
\T 工夫12小时制
\A 工夫24小时制HHMM
\u 目前会员账号名
\v BASH的版本
\w 完备工作名目
\W 应用basename取得工作名目名
\# 下达的第几个下令
\$ 提醒字符,root为#,普通会员为$
vim /etc/profile
# 尾增加
PS1='[\u@\h \W\t]\$' # 针对上述变量自行更改
export PS1='[\u@\h \W\t]\$'
管道下令
Linux供给的管道符“|”讲两条下令隔开,管道符左边下令的导出会作为管道符右侧下令的输入。
常见用途:
#检查python程序可否启动
ps -ef|grep "python"
#寻到/tmp名目下所有txt文件
ls /tmp|grep '.txt'
#检查nginx的端口可否存活
netstat -tunlp |grep nginx
alias 起又名下令
Linux怎样提醒你,在运用这些下令时候,提示你当心呢?
#查看系统又名
alias
默许又名
alias cp='cp -i'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
又名作用是:
我们在linux中运用cp时候相当于施行了cp -i
-i:删除已有文件或名目以前先扣问会员;
#又名用比拼惊险的操纵,防止你犯错
#让系统显示 do not use rm
echo do not use rm
#设定rm又名
alias rm='echo do not use rm'
#设定又名永恒生效,写入到/etc/profile(针对登录取户的合同,设定环境变量)
vim /etc/profile #编纂文件
G 迅速抵达最后一行
o 目前行下一行,新建一个新行,进入编纂模式
source /etc/profile #读取文件(合同生效)
---------------
#取消又名
unalias rm