Linux常用命令
1.echo 命令:可以打印变量的值
echo $变量名(精确查找)
echo $PATH
echo $PWD 打印当前路径
echo $_ 打印上次操作结果
2.export 命令:在/etc/profile中配置是全局变量(需要重启或source来配置生效)
export在命令行或在其他普通脚本中声明变量则在当前session立即生效
export a=123不在配置文件中配置的是(局部变量)临时变量
echo $a 查看,只能在当前连接内调用(不同连接方式无法查看)
3.printenv 命令:打印所有变量
printenv | more
printenv | less
4.wc命令用于计算字数
wc /etc/profile 查看当前文件行,最长行字节,一共有多少字节
wc -l a.txt 行数
wc -w a.txt 单词
wc -L a.txt 最长行字节
5.管道符 |
前面的命令 | 后面的命令 把前面命令的执行结果作为后面命令的输入
head -2 a.txt | tail -1 取行
vi 文件名+table 该文件下所有
6.grep命令(模糊查询)
-i 忽略大小写
-w 只匹配整个单词
-l 只列出文件名,不列出匹配行
-r 递归查找,在当前和所有子目录中搜索
-n 列出具有行号的匹配行
-v 只打印没有匹配的,而匹配的反而不打印
7.file 命令:用来识别文件类型
file 文件名
8.I/O Stream
1)标准流
stdin:标准输入,编号为0,用于程序从键盘等设备接收数据。输入流被EOF(文件结尾)终止
stdout:标准输出,编号1,用于程序向终端等设备写入数据
stderr:标准错误,编号2,用于向终端等设备显示错误消息
2)重定向I/O Stream到文件
< | 重定向stdin |
---|---|
> | 重定向stdout(覆盖) |
>> | 重定向stdout(追加) |
2> | 重定向stderr(覆盖) |
2>> | 重定向stderr(追加) |
例:
cat d.txt 2> e.txt
用于错误日志打印如果d.txt存在 e.txt不打印,如果d.txt不存在 e.txt打印
3)ls命令查看主目录和/Toronto目录,将stdout和stderr重定向到主目录中的out.txt和err.txt
ls ~ /Toronto > ~/out.txt 2> ~/err.txt
9.which 命令:查找命令
which :java PATH路径下bin(根目录)下的命令(echo $PATH)
which mysqld:mysql服务
10.ln 命令:在文件之间建立链接(-s制作软连接 -b删除连接(rm 路径))
ln -s 路径
ln -s /usr/bin/hexdmp d
#创建了一个符号d链接到/usr/bin/hexdump
11.find 命令:搜索目录层次结构中的文件
find / -name “tomcat*”
find / -name ‘tar’
#从根目录访问所有目录以查找’tar’
find ~/tmp -name ‘*.txt’ -type f -exec d -C {} ;
#从〜/ tmp目录开始,找到所有’.txt’文件并将其转换为hexdump
12.date命令:打印或设置系统日期和时间
date +%Y-%m-%d 年月日
date +%H:%M:%S 时分秒
date +%I:%M:%S 12小时时间显示
date +%c locale的完整日期和时间
date -u UTC日期和时间
date -R RFC-2822格式
date -Iseconds ISO-8601格式
date +‘%Y-%m-%d date +%H:%M:%S’ 年月日时分秒
13.cut命令:从文件中提取字段
date -u | cut -d ’ ’ -f2,3,6
#输出的日期格式按空格分割,取出2,3,6位
cut -d ’ ’ -f1,2 a.txt
#此示例从文件a.txt中读取数据
14.ping命令:用于测试与目标主机的连通性
ping www.baidu.com
ping localhost
ping ip地址
15.scp 命令:不同服务器(地址)之间的复制
scp a.txt [email protected]:/tmp
查看硬盘使用情况
df -h
批量注释
命令行模式下: 首行号,末行号s /^/字符/g
批量解注释
命令行模式下: 首行号,末行号s /^字符//g
注:如有不足,欢迎评论