您的位置:首页 > 运维架构 > Linux

linux下常用命令

2017-01-11 10:23 351 查看
linux下常用命令

常用的:

ls ls-al cd mkdir rm touch 

ls  

-

d

l

权限

chmod 更改文件|目录的权限 r:4 w:2 x:1

              r:表示用户所有者u,可读;w:用户所有属组g,可写;x其他用户组r,可执行 。

              chmod 777 文件/目录名  

更改当前目录下的所有的权限 chmod -R 777 目录名 ------???

              设SUID权限,可以在其他用户组使用时具有所有者的权限

            chmod u+s 文件/目录 (注意之前有权限x则会变成s,之前没有权限x会变成S)



chown  更改文件|目录的所有者,组  chown  所有者:组  文件/目录名

              某些进程需要root权限,这时可以将chown 

chgrp :更改用户所属组

链接:

ln -s :软连接   ln      :硬链接, 点击打开链接

             区别:硬链接,当删除原文件后,链接文件仍能访问,文件类型 -,只能是文件,不能目录也不能夸文件系统;

                         软连接相当于window下的快捷键,删除原文件,链接就不能再访问,文件类型为l

cp :【-r 复制目录下的全部】 复制  注意有时候复制后的文件/目录权限会发生变化,不一定是自己想的那样(*这个没有找过~~)

mv: 移动或者重命名

rm  :【-r目录下的全删;-i 确认后删除】

rmdir :删除空目录 rm -r删除非空目录

查找:

find    路径  -name ‘通配符’ :注意这里不是正则

locate ‘’:比find快,查询的是linux下的数据库

whereis

查命令的路径

type -a

which 

其中find 命令有很多功能:

find -atime +/- n :时 ;到......为止用+号,从......开始用-号

       -min  +/- n  :分;

        -type d目录 |l链接 |f普通文件  类型

         -exec 命令 {} \;

         -print 打印

查找.h文件,并在其中内容包含找到AX-A 的文件名

find / -name '*\.h' | xargs grep 'AX_A' 2>/dev/null(错)

find / -name '*\.h' -exec grep 'AX-A'{}\ ; -print;(错)

-name 后面是通配符匹配。

*表示  通配任意的字符     

?表示  通配任意的单个字符      

[ ] 表示 通配括号里面的任意一个字符

find / -name '*.h' | xargs grep 'AX_A' 2>/dev/null(错)

find / -name '*.h' -exec grep 'AX-A'{}\ ; -print;

查找a.txt 并删除

find / -name 'a.txt ' -exec rm { } \ ;

查找前30天内没用过的普通文件并删除

 find / -amin  +30 -exec rm -f { }\; -type -f 

文本编辑

vim 
:set nu 显示行号     /string  查找string 
ndd  删除第n行 p           大写P:复制在当前行下面
nG  移动到第n行
:sp  打开另一个文件
:w 保存
:q 退出
!强制执行
按i|o 可以进行插入模式,可以进行编辑文件内容

cat >文件 可以从键盘往文件中输入内容

cat >>文件 <<eof 向文件尾部添加并遇到eof结束

cat file1 file2 >>文件 将file1 和file2的内容添加到文件中

 

more  :支持管道,而且可以设置显示几行

more -n 文件 每次显示n行 按[nN]翻上下页

more +n 文件 从第n行开始

more +/string 文件 在文件中查找string ,并从前2行开始显示

head -num 文件 显示文件中前num行

tail -num 文件 显示文件最后num行

进程

ps -aux :查看所有的进程

   STAT表示状态,其中常见

   S:睡眠

   R:运行

   Z:僵尸

   T:停止

其中:僵尸进程(apue 高级环境编程有介绍)该进程已经完成或者终止(即该进程内调用了exit或者异常终止),但是其父进程没有将该进程结束(即wait),导致该进程一直存在内存中。该进程没有执行代码,不占内存,不能调度,但是在进程表中保留1为,记载了该进程的退出状态等信息。这样会影响新进程的产生,linux进程数有限

netstat -antl  :查看网络连接   a:全部  t :tcp连接 u: udp  -l 处于监听下 -n 拒绝别名

统计处于establish状态的连接数

netstat -an |grep ‘80’ |grep ‘ESTABLISH’|wc-l

查看处于监听端口

netstat -anlt |grep 'LISTEN'

磁盘使用率

du :文件/目录大小,属于用户级别的,只能看到用户的一部分,

         du -a  显示全目录以及目录下面的

         du -sh 只显示当前目录占用大小

         du -sh ./* 当前目录下的大小  

df :文件系统内的大小,和du统计的方式不同

管道(前面的正确输出作为后面的输入 )----【ls vim kill这些都不支持管道!】

grep  -n ‘正则表达’ 文件  在文件中查找,-n 显示行号

grep -c ‘正则’ 文件 会显示出现匹配的次数

正则:

awk:将每行数据按列划分为每个字段,然后按字段处理   $1 $2 $3 ,$0表示整行  $NR:第几行 $NF是该行拥有的字段数

awk -F '分隔符'  ‘条件{动作}’ 文件 默认分隔符为空格/tab键

            awk ‘/root/{print $0}’ 文件  或者 awk ‘/root/’ 文件 将包含root那行输出

            awk ‘ $3<10 {print $1 "\t'' $3}’ 文件 将第3个字段小于10的那行的第一个字段和第三个字段输出

awk ‘BEGIN { FS=' '} { print }’ 

         'END ....'

BEGIN 在文件输入之前处理 ;END 在文件输入之后处理;BEGIN 和END 可以只有一个

awk ‘BEGIN {FS=':' } $3<10 {print $1}’  文件  更改分隔符,将字段$3<10的输出字段1;

例如:



sed :以行为单位进行处理  添加行, 删除, 修改 

          'n,md' 文件 n-m行删除

         -n ‘n,mp’ 文件 n-m行打印

         ‘na str’  a行后添加str

         ‘s/ 要替换的 /替换为/g’  

        -i 直接在文件操作

        -e直接在命令行处理

        -n 打印

例子:

sed -n ‘/my/ pd’  将my那行打印并删除

sed ‘/my/,/you/d’ 删除my到you之间的那几行

sed ‘/my/,10d’ 删除my到第10行

sed  -n ‘$p’ 将最后一行打印

sed -n ‘/$/p’ 将所有行打印

将test.txt中的回车替换为空格

sed -i ‘s/\r/ /g’ tset.txt

sort 默认按首字母排序,按ascii码比较,升序

        sort -t  ‘分割’    -k 段1 【-k段2】  按分隔符分开按段1字段排序,当段1相同按段2排序

        -r 逆序

        -n 按数字比较

        -u 将重复的删除

例子:



uniq 对排序后的文件去重,重复行必须相邻,不然不会去重,配合sort使用

       -c显示重复的行树

  uniq -c 输入文件 【输出文件】 可以将去重后的文件输入到输出文件

wc -l 统计行数

查看php-fpm进程数:

 ps -aux | grep -c php-fpm

或者ps -aux|grep ‘php-fpm’|wc -l

xargs :对于不支持管道的命令,将前一个的输出,传递给后面的

查找进程*并杀死

ps -aux |grep ‘*’|xargs kill -9

kill -9 {ps -aux |grep ‘*’}

查找本目录下的文件中包含baidu的文件

ls | grep ‘.txt’|xargs grep 'baidu'

注意最后是对文件的内容进行grep,grep ‘’ 文件名。需要使用xargs

或者

find ./ -name '.txt '|xargs grep 'baidu'



安装软件

源码安装:可以执行安装的路径

tar -zxvf**.tar.gz 解压

./configure --prefix=安装目录  --enable 启动一些默认会关闭的功能 :会生成make文件

make &&make install

rpm :需要.rpm .srpm 不需要源码,是用源码编译好的,需要软件依赖和环境一致

rpm -qa  软件 是否安装

rpm -e 卸载

rpm -ivh 安装

yum :可以实现自动安装,只要配置好yum 镜像站点:http://mirrors.163.com/centos/6.7/os/x86_64/
其中6.7这个地方必须是最新的,以后可能变成6.8。rpm安装包也可以在这个站点找到后下载rpm来安装

yum install   软件

以前的一点笔记,贴在下面啦





 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: