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 软件
以前的一点笔记,贴在下面啦
常用的:
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 软件
以前的一点笔记,贴在下面啦
相关文章推荐
- linux阿里云服务器更换镜像的方法
- CentOS-6.3 安装配置 JDK-7
- Arduino可穿戴教程Linux平台下安装Arduino IDE
- linux
- OSS磁盘挂载到LINUX
- CentOS安装JDK
- Linux命令——crontab
- linux ping域名很慢的其中一个原因
- Linux命令——ls命令用来显示目录中文件的名字
- linux用户和管理类常用命令
- Linux命令、文件和目录的常见用法
- linux数据库初始化配置
- centos 解决中文乱码问题
- MPI 学习笔记
- 浅谈Linux C语言动态库及静态库
- 在centos7上搭建mysql环境
- 飞凌嵌入式OK335xD Linux下Qt程序开机启动 及 sh开机启动
- TCL在Linux下如何执行
- centos6.7下安装KVM
- linux下判断文件和目录是否存在的方法(总结)