管道、环境变量与常用命令
管道
文件重定向将标准在输出重定向到某一个文件
管道也是一个重定向,和文件重定向有所不同
可以将前一个命令的标准输出stdout
重定向到下一个命令的标准输入stdin
.
管道只能处理标准输出stdout
,不能处理标准错误sterr
管道右边的命令必须能接受stdin
。
多个管道命令可以串联
。
与文件重定向的区别:
文件重定向左边是命令,右边是文件.管道左边是命令右边也是命令,左边有stdout
,右边有stdin
。
环境变量
env # 显示当前用户的变量
set # 显示当前shell的变量,包括当前用户的变量;
export # 显示当前导出成用户变量的shell变量
输出某个环境变量的值:
echo $PATH
常用命令
系统状况
top
:查看所有进程的信息(Linux的任务管理器):
打开后,输入M
:按使用内存排序
打开后,输入P
:按使用CPU排序
打开后,输入q
:退出
df -h
:查看硬盘使用情况
free -h
:查看内存使用情况
du -sh
:查看当前目录占用的硬盘空间
ps aux
:查看所有进程
kill -9 pid
:杀死编号为pid
的进程
传递某个具体的信号:kill -s SIGTERM pid
netstat -nt
:查看所有网络连接
w
:列出当前登陆的用户
ping www.baidu.com
:检查是否连网
文件权限
chmod
:修改文件权限
chmod +x xxx
:给xxx
添加可执行权限
chmod -x xxx
:去掉xxx
的可执行权限
chmod 777 xxx
:将xxx
的权限改成777
chmod 777 xxx -R
:递归修改整个文件夹的权限
文件检索
find /path/to/directory/ -name '*.py'
:搜索某个文件路径下的所有*.py
文件
grep xxx
:从stdin中读入若干行数据,如果某行中包含xxx,则输出该行;否则忽略该行。
wc
:统计行数、单词数、字节数
既可以从stdin中直接读入内容;也可以在命令行参数中传入文件名列表;
wc -l
:统计行数
wc -w
:统计单词数
wc -c
:统计字节数
tree
:展示当前目录的文件结构
tree /path/to/directory/
:展示某个目录的文件结构
tree -a
:展示隐藏文件
ag xxx
:搜索当前目录下的所有文件,检索xxx字符串
cut
:分割一行内容
从stdin
中读入多行数据
echo $PATH | cut -d ':' -f 3,5
:输出PATH用:分割后第3、5列数据
echo $PATH | cut -d ':' -f 3-5
:输出PATH用:分割后第3-5列数据
echo $PATH | cut -c 3,5
:输出PATH的第3、5个字符
echo $PATH | cut -c 3-5
:输出PATH的第3-5个字符
sort
:将每行内容按字典序排序
可以从stdin
中读取多行数据
可以从命令行参数中读取文件名列表
xargs
:将stdin中的数据用空格或回车分割成命令行参数
find . -name '*.py' | xargs cat | wc -l
:统计当前目录下所有python文件的总行数