对服务器不熟的同学看过来,看了这些个命令,就“熟了”
开篇语:你知道人类最大的武器是什么吗? 是豁出去的决心
记住以下常用命令,bash你也可以玩的嗨皮了。。。 (ps:命令结果不截图了,自己动手才是最好的实践)
1. cd 【change dictionary】
这个都不清楚,那真的是要好好把本文的全部命令自己去实践一遍了
cd [目录名]
cd ../../ # 回退两层目录
cd ~ # 进入用户家目录 [等同于: cd --]
cd - # 进入上一次的目录
2. ls
列出当前目录下的所有内容,会有不同的颜色,目录和单个文件的为不同的颜色表示
ls [目录名] # 列出指定目录下的内容,不见则表示列出当前目录,以 . 开头的文件在linux属于隐藏文件,不会列出
ls -a # 列出所有文件,包括以 . 开头的文件
ls -al # 更详细的列出所有文件,包括以 . 开头的文件,可看权限,修改时间等
3. pwd
列出当前所在完整目录
4. cat
查看创建文件
cat filename # 查看filename文件内容
cat > filename # 这个命令,嗯:就是输入这个命令后,接着在输入你想保存的内容,完了ctrl+c 退出的时候,输入的内容就保存到 filename 中,不过 在输入的过程中,方向键不可用额
cat filenaem1 filename2 >allFileName # 把filename1 和 filename2内容 合并保存为allFileName,当然filenaem1,filename2并没有改变。
5. touch, mkdir
touch 创建空文件; mkdir 创建文件夹
touch [filename]
mkdir -p ./dir1/childDir # -p 表示当dir1 目录不存在时,自动创建。
6. rm,rmdir
rm 删除命令,linux中一旦删除,想找回来可就难了。三思而后删...
rmdir: 删除空目录
rm -rf ./* # 删除当前目录下的所有内容,这条命令可以担当:删库跑路 了。 r: 表示递归删除,不管你有多少层目录,f: 表示强制删除,就是没有任何提示,enter你之后,你就没有任何后悔的余地了。所以一搬删除时候,加 -i 参数,提示一哈,让你选择一下是否真的要删除。
7. mv,cp
mv: 移动文件,重名名; cp:复制
mv ../../filename . #移动前面两层目录下的filename到当前目录,如果有同名文件,mac下会自动覆盖哟,可以加 -i,系统确认提示是否覆盖
mv ../../filename ./filenameNew # 重命名为filenameNew
mv filename fileNameNew # 重命名,文件或文件夹都可以哟
cp -rf dirName1 ./demo/dirName2 # 将dirName1文件夹下的所有内容复制到当前目录下的 demo/dirName2 中,如果dirName2不存在,自动创建。
8. tail
查看文件内容,前面的cat也可以查看,但是cat是查看文件的所有内容,对于大文件,是不合适的,屏幕只有那么大,是不好看到我们想要看到的文件的。tail就灵活多了,它可以说是是查看日志的专职命令,本身就有追踪的意思
tail -f info.log # 在屏幕上实现追踪info.log文件,只有info.log 改变,屏幕就会实时显示。有些linux上: tailf info.log, 也是一样的效果。
tail -20f info.log [tail -fn 20 info.log] # 显示文件最后20行,并实时追踪改变
tail +20 info.log # 从第20行到文件末尾
tail -c 10 info.log # 显示最后10个字符
9 . nohup 和 &
& 表示后台运行;nohup: 不挂断的运行,但并没有后台运行
nohup java -jar packageName.jar # 运行jar包,但是会占用控制台
nohup java -jar packageName.jar & # 不占用控制台,控制台仍然可做其他操作
10. grep
和 awk, sed 为linux下三大文本命令
grep -i "demo" fileName --color=auto # 忽略大小写查找,查找结果用不同颜色表示出来
grep -c "demo" fileName # 查找匹配的行数,注意是匹配了多少行,不是匹配的在第一行哟
11 . | 管道
管道命令,这个算是高级命令了。这里就不介绍了。
ps -ef | grep "nginx" # 查询是否有nginx命令在运行
好吧,就先到这儿,有问题欢迎留言沟通。