ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

CentOS 7 后台克隆远程库

2021-01-18 09:02:10  阅读:251  来源: 互联网

标签:脚本 Shell 克隆 CentOS sh 命令 git nohup 后台


引子

解决 CentOS 7 下 Git 超时后,发现库还是太大,要花费比较长的时间,还是让其在后台运行比较好,这样不用一直保持登录。找了下资料,总结一下。

相关知识点

Shell

Shell 是一种命令语言,也是一种程序设计语言。它是用户使用 Linux 的桥梁。Shell 脚本,是一种为 Shell 编写的脚本程序。Shell 脚本编程跟 JavaScript 一样,只要有一个能写代码的文本编辑器和一个能解释执行的脚本解释器就可以了。Linux 的 Shell 种类很多,常见的有:

  • Bourne Shell(/usr/bin/sh或/bin/sh)
  • Bourne Again Shell(/bin/bash)
  • C Shell(/usr/bin/csh)
  • K Shell(/usr/bin/ksh)
  • Shell for Root(/sbin/sh)

Linux nohup 命令

nohup 全称是 no hang up ,也就是不挂起的意思,用于在系统后台不挂断地运行命令,退出终端也不会影响程序的运行。

nohup 命令,在默认情况下(非重定向时),会输出一个名叫 nohup.out 的文件到当前目录下,如果当前目录的 nohup.out 文件不可写,输出重定向到 $HOME/nohup.out 文件中。

语法格式:

nohup Command [Arg…] [&]
  • Command:要执行的命令。
  • Arg:参数,可以指定输出文件。
  • &:让命令后台执行。

更多内容见这里

实现方式

写一个脚本,然后让其后台运行。

git.sh 脚本内容很简单:

echo 'git clone start'

git clone https://github.com/XXx/xxx.git

echo 'git clone end'

在非可视化终端操作顺序:

# 创建文件
> git.sh

# 编辑文件
vim git.sh

# 执行脚本
nohup ./git.sh &

执行的时候出现了提示:

nohup: 无法运行命令"./git.sh": 权限不够

添加权限:

chmod +x ./git.sh

再次执行脚本后,出现下面的提示:

82-nohup

注意这个时候,需要按任意键退回到 shell 输入命令窗口,退出的时候使用 exit 命令退出。

如果上述程序执行完成,会在 nohup.out 文件中写入脚本中对应的提示信息。

查看

查看正在执行的后台任务:

jobs -l

82-jobs

可以发现,跟执行脚本成功后出现的数字提示一致。

jobs 命令只对当前终端有效,关闭或退出终端后,在另一个终端 jobs 命令无法看到后台运行的程序,此时可以使用 ps 命令:

ps -aux|grep git.sh

82-ps

如果想要关闭对应进程:

kill -9 进程号

其它

Mac 下执行 shell 脚本提示没有权限:

permission denied: ./git.sh

修改权限后再次执行就可以了

chmod 777 ./git.sh

./git.sh

参考资料

标签:脚本,Shell,克隆,CentOS,sh,命令,git,nohup,后台
来源: https://www.cnblogs.com/thyshare/p/14291151.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有