作为一个程序员或者测试开发人员,我们在进行项目部署和运维时,经常会用到一些linux命令,可是这些命令老是忘记,每次用到的时候都要去谷歌百度,很是麻烦!这不,为了自己使用方便,对常见的linux命令, SHELL, VIM, Linux性能调优和linux kernel的总结,以便在用到时能够快速地找到相关命令,同时有需要的朋友也可以参考搜藏该篇文章!文章对讲到的每个命令都有详细的参数解释,并且给出一些常用例子,因此也非常适合用来学习!
在网站设计制作、成都做网站中从网站色彩、结构布局、栏目设置、关键词群组等细微处着手,突出企业的产品/服务/品牌,帮助企业锁定精准用户,提高在线咨询和转化,使成都网站营销成为有效果、有回报的无锡营销推广。创新互联公司专业成都网站建设10多年了,客户满意度97.8%,欢迎成都创新互联客户联系。
shell(命令解释器)自带的命令称为内部命令,其它的是外部命令
内部命令使用help帮助:help cd
外部命令使用help帮助:ls --help
type命令:用于区分是内部命令还是外部命令:
ls is aliased to `ls --color=auto' #外部命令
cd is a shell builtin #内部命令
pwd命令:显示当前目录
ls命令:查看目录和文件名称
ls -l 查看目录各个字段含义
第一字段:首字母代表的是文件类型 ,其中"-"为普通文件、"d"为目录文件、"c"为字符设备文件、"b"为块设备文件、"p"为管道文件、"l"为链接文件、"s"为socket文件。“rwx”分别代表拥有读、写和执行权限,"-代表无对应权限。三个"rwx"依次代表文件所有者、文件所有者所在用户组、其它用户对文件拥有的权限。
第二字段:文件硬连接数量
第三字段:文件拥有者
第四字段:文件拥有者所在组
第五字段:文件大小(以字节为单位)
第六字段:文件最后更改时间
第七字段:文件名(若为链接文件则追加显示其链接的原文件的路径)
ls命令其它参数含义:
-a显示隐藏文件(.开头的文件)
-r逆序排序
-t按照时间顺序显示
-R递归显示
ls -lartR : 按照时间顺序倒序显示所有文件及其文件夹的文件
cd命令:更改当前的工作目录
cd /path/... 绝对路径
cd ./path/... 相对路径(./可以省略)
cd ../path/... 相对路径
mkdir -p 递归目录:递归创建目录
rmdir命令:删除目录
rmdir a/b/c/d/e/ #删除空目录
rm -r a/b/c/d/ #递归删除目录,但是系统会做多次询问
rm -rf a/b/c/d/ #删除目录,不做任何询问
cp命令:复制文件和目录
-r 复制目录
-p 保留用户、权限、时间等文件属性
mv命令:移动文件和重命名
mv *.log 目标目录
通配符:
*匹配任何字符串
?匹配一个字符串
[xyz]任何一个字符串
[a-z]匹配一个范围
cat命令:文本内容显示到终端
head命令:查看文件开头
head -3 文件名称 #显示文件开头3行
tail命令:查看文件末尾
tail -3 文件名称 #显示文件末尾3行
tail常用参数-f,文件内容更新后,同步显示更新的文件信息
tail -f 文件名称
wc命令:统计文件内容信息
wc 文件名称
useradd命令:新建用户
useradd 用户名
userdel命令:删除用户
userdel 用户名 用户所在的家目录不会被删除
userdel -r 用户名 用户相关的所有配置都会被删除
passwd命令:修改用户密码
passwd 用户名
usermod命令:修改用户属性
/etc/passwd文件:查看用户文件
tail /etc/passwd
/etc/shadow文件:查看用户密码
tail /etc/shadow
groupadd命令:添加用户组
groupadd 用户组
groupdel命令:删除用户组
groupdel 用户组
用户切换
su 用户名 切换用户,但是用户所在环境不变,即pwd路径不会变化
su - 用户名 切换用户,同时会切换到用户家目录,即/home/用户名
sudo命令:普通用户需要执行root用户权限的解决方案。
以下是一些常用命令汇总;The following table provides a reminder of most of the commands that we have covered so far. If you include the three, as-yet-unmentioned, commands in the last column, then you will probably be able to achieve 95% of everything that you will ever want to do in Unix (remember, you can use the man command to find out more about top , ps , and kill ). The power comes from how you can use combinations of these commands.
-c 'cc-address' -b 'bcc-address'
'to-address' | Command to send email | | mail -s "Subject"
to-address Filename` | Command to send email with attachment |
File Permission commands
Hope this Linux reference guide helps you!
希望这些常用的命令和系统原理,以及linux操作可以帮助大家提升linux命令和操作!!!
(1)java -jar 包名 当窗口关闭或按Ctrl+c则程序终止
(2)java -jar 包名 当窗口关闭则程序终止
(3)nohup java -jar 包名 程序不因窗口关闭或按Ctrl+c而终止,生成默认日志文件
(4)nohup java -jar 包名 日志名 在(3)的基础上自定义生成日志
(1)tail n 日志名 n代表查看日志的行数
例子:tail 10 nohup.out 查看正数10行的日志
例子:tail -10 nohup.out 查看倒数10行的日志
(2)tail -f nohup.out 实时查看日志
(1)ps -ef | grep java 查看进程
(2)netstat -tunlp 端口号查看
kill -9 pid
例如查找文件名为nginx的文件 find / -name nginx
(1)找到并进入nginx文件夹下的sbin文件夹
(2)执行 ./nginx -s reload
free 命令 默认以kb为计算单位,可以在后面通过添加 -b ,-m ,-g ,-h等修改计算单位
例如 free -h以较友好的方式展示
按理来说total = used + free ,但是这边不晓得为什么free只剩了123M,有答案了再来补上
top 命令
top 行依次为系统时间、距上次重启系统时间、登入用户数、平均负载
tasks 行为进程任务情况
cpu 行为cpu的使用情况
暂时没了,想起来再补
1.首先将SpringBoot项目打包成JAR包,然后通过FTP工具上传到Linux,执行如下命令:
该命令执行后,启动jar,一旦shell窗口关闭后,JAR就停止运行了.
若需要项目在后台一直运行,需要通过如下命令启动JAR:
上述 2 和 1 的含义如下:
0 标准输入 (一般是键盘)
1 标准输出 (一般是显示屏,是用户终端控制台)
2 标准错误 (错误信息输出)
上述 console.log 为日志文件,需要在Linux中提前创建:
1.实时跟踪日志:
实时跟踪日志,只要执行findAll这个方法,就会将其对应的日志打印出来,用来跟踪特定的日志运行.
--line-buffered 是一行的缓冲区,只要这一行的缓冲区满了就会打印出来,所以可以用于实时监控日志.
2.tailf -n 200 console.log 打印最后200行日志,并持续跟踪日志.
tail -n 500 console.log | more 分页查看最后500行日志.
1.编写一个shell脚本,命名为 start_JAR.sh,脚本和可执行JAR放在同一目录下.
2.执行 start_JAR.sh 脚本,启动可执行JAR.
添加可执行权限:
执行脚本:
前期准备:准备一台服务器,我这里用的华为云,租的时候点按需计费就行,2核4G的大概0.5元/小时,搭建+部署项目大概不到1块钱吧。
购买服务器步骤如下:
配置环境变量 在/etc/profile 这个文件里面配置
操作命令:vim /etc/profile 按 i 键编辑 按Esc键取消编辑 输入:wq保存退出
执行操作命令:source /etc/profile (读取并加载文件)
---宝塔端口在云服务器上放行
终端登陆mysql,进行修改
4。打包前后端服务
访问测试
至此整个流程就弄完了,记录一下。