目录
- bash命令
- [基础操作](#10)
[export](#101) | [whereis](#102) | [which](#103) | [clear](#104)
- [文件操作](#11)
[ls](#111) | [touch](#112) | [cat](#113) | [more](#114) | [head](#115) | [tail](#116) | [mv](#117) | [cp](#118) | [rm](#119) | [diff](#1110) | [chmod](#1111) | [gzip](#1112) | [gunzip](#1113) | [gzcat](#1114) | [lpr](#1115) |[lpq](#1116) | [lprm](#1117)
- [文本操作](#12)
[awk](#121) | [grep](#122) | [wc](#123) | [sort](#124) | [uniq](#125) | [echo](#126) | [tr](#127) | [nl](#128)
- [目录操作](#13)
[mkdir](#131) | [cd](#132) | [pwd](#133)
- [SSH&系统信息&网络操作](#14)
[ssh](#141) | [whoami](#142) | [quota](#143) | [date](#144) | [cal](#145) | [uptime](#146) | [w](#147) | [finger](#148) | [uname](#149) | [man](#1410) | [df](#1411) | [du](#1412) | [last](#1413) |
[ps](#1414) | [kill](#1415) | [killall](#1416) | [top](#1417) | [bg](#1418) | [fg](#1419) | [ping](#1420) | [whois](#1421) | [dig](#1422) | [wget](#1423) | [scp](#1424) | [curl](#1425) | [passwd](#1426)
基础操作
export
> 显示所有环境变量 ![](https://img2018.cnblogs.com/blog/958602/201902/958602-20190213131517319-2111161831.png)whereis
> 使用系统自动构建的数据库来搜索可执行文件,源文件和手册页面。whereis java
which
> 它在环境变量PATH指定的目录中搜索可执行文件。此命令将打印可执行文件的完整路径。which php
clear
> 清除窗口文件操作
ls
> 列出文件 常用选项 -l 列出文件详情 -a 列出所有文件,包含隐藏文件touch
> 创建文件touch filename
cat
>列出指定文件的内容cat filename
more
> 显示文件的第一部分(用空格移动并键入q以退出)more filename
head
> 输出文件的前10行head filename
tail
> 输出最后10行文件。tail filename
mv
> 将文件从一个位置移动到另外一个位置 ``` mv f1 f2 // f1 文件的原路径, f2是目标路径 ```cp
> 将文件从一个位置移动到另外一个位置cp f1 f2 // f1 文件的原路径, f2是目标路径
rm
> 删除文件rm filename 删除文件
rm -f dirname 删除目录
diff
> 比较文件diff f1 f2
chmod
> 更改文件的读取,写入和执行权限chmod -options filename
gzip
> 压缩文件gzip filename => fi.gz
gunzip
> 解压缩gzip压缩的文件gunzip filename
gzcat
> 查看gzip压缩文件,而不需要gunziplpr
> 打印文件lpq
> 查看打印机队列lprm
> 从打印队列移除某些内容lprm jobnumbers
文本操作
awk
> awk是处理文本文件最有用的命令。它一行一行的在整个文件上运行,默认情况下,它使用空格分隔字段。awk命令最常用的语法是常用命令
awk '/search_pattern/ { action_to_take_if_pattern_matches; }' file_to_parse
实例:
新建一个文件内容是
root:x:0:0:root:/root:/usr/bin/zsh
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
文件路径:/Users/shiyou/Desktop/temp/awk_test
执行命令
awk -F':' '{ print $1 }' /Users/shiyou/Desktop/temp/awk_test
输出了:
解释:
-F 指定在我们要基于哪个分隔字段。在我们代码里面是使用冒号 ':'
{print $1} 是指打印出第一个匹配字段
grep
> 查找文件内的文本。您可以使用grep搜索与一个或多个正则表达式匹配的文本行,并仅输出匹配的行。grep pattern filename
例如文件还是上面创建的文件,我们执行以下命令
grep -r nologin /Users/shiyou/Desktop/temp/awk_test
-i 选项强制grep忽略单词大小写
-r 可以用于搜索指定目录下的所有文件
输出:
wc
> 一个文件有多少行,多少单词和多少字符 ``` wc filename ```sort
> 排序文本文件的行sort filename
uniq
> 省略重复的行uniq filename
sort example.txt | uniq // 先排序再去重复
echo
> 显示一行文字echo output
echo -ne "Hello
World
" // 输出换行
tr
> 把所有小写字母变成大写cat example.txt | tr 'a-z' 'A-Z'
nl
> 显示文件的行数nl -s". " filename
目录操作
mkdir
> 生成一个新目录mkdir dirname
cd
> 一个目录跳转到另外一个目录cd dirname
pwd
> 告诉你你目前所在的目录SSH&系统信息&网络操作
ssh
> ssh 是一个用来登录到远程机器并执行命令的程序ssh user@host //登录到的机器地址
ssh -p port user@host // 连接到特定端口的选项
whoami
> 返回当前登录用户名quota
> 显示磁盘配额date
> 显示当前日期和时间cal
> 显示月份的日历uptime
> 显示当前的正常运行时间w
> 显示谁在线finger
> 显示有关用户的信息 ``` finger username ```uname
> 显示内核信息man
> 显示指定命令的手册man command
df
> 显示磁盘使用情况du
> 显示文件名中文件和目录的磁盘使用情况(du -s只给出一个总数)。du filename
last
> 列出最后登录的指定用户last username
ps
> 列出您的进程ps -u yourusername
kill
> 使用您所提供的ID杀死进程kill PID
killall
> 用名称杀死所有进程killall processname
top
> 显示当前活动的进程bg
> 列出停止的或后台工作的Job; 恢复在后台停止的Job。fg
> 前台化最近的Jobping
> Pings主机并输出结果whois
> 获取域的whois信息。whois www.baidu.com
dig
> 获取域的DNS信息dig www.baidu.com
wget
> 下载文件scp
> 在本地主机和远程主机之间或两台远程主机之间传输文件。从本地主机复制到远程主机
scp source_file user@host:directory/target_file
从远程主机复制到本地主机
scp user@host:directory/source_file target_file
scp -r user@host:directory/source_folder farget_folder
curl
> 发送一个http请求curl www.baidu.com 发送一个http请求
curl -v www.baidu.com 详细信息